คู่มือ aWhere
พัฒนาWidgets

ตัวเลือกผู้ใช้งาน

ให้ผู้ใช้เลือกผู้ใช้หนึ่งคนหรือหลายคน ผลลัพธ์กลับมาเป็นข้อความ select widget จะแสดงเมื่อได้รับ post-widget-parameters แล้วเท่านั้น

widget user-and-group-picker ให้ผู้ใช้ค้นหาและเลือกผู้ใช้หนึ่งคนหรือหลายคน แล้วส่งผู้ใช้ที่เลือกกลับไปที่หน้าของคุณ

URL และพารามิเตอร์

widget อยู่ที่ <site>/widgets/user-and-group-picker พารามิเตอร์ที่ใช้ร่วมกันอยู่ใน Widgets

พารามิเตอร์ความหมายจำเป็น
single_selecttrue เลือกได้คนเดียว ค่าเริ่มต้นคือ falseไม่

ค่าที่เหลืออยู่ใน payload ของ post-widget-parameters ดูหัวข้อถัดไป

ข้อความ

actionทิศทางpayload
readywidget ถึงหน้าของคุณไม่มี widget โหลดเสร็จ
post-widget-parametersหน้าของคุณถึง widget{ disabledUsers, disabledGroups } อาร์เรย์ของ _id ผู้ใช้และ _id กลุ่มที่ไม่ให้เลือก (สมาชิกของกลุ่มเหล่านั้นก็ไม่ปรากฏ) ส่งหลัง ready ใส่อาร์เรย์ว่างได้ แต่ต้องส่ง
selectwidget ถึงหน้าของคุณ{ items } อาร์เรย์ของผู้ใช้ที่เลือก แต่ละคนมี _id username firstName middleName lastName displayName email picture role และ fullName กับ pictureUrl ที่ widget เติมให้ ถ้าเลือกคนเดียวก็ยังเป็นอาร์เรย์
cancelwidget ถึงหน้าของคุณไม่มี ผู้ใช้ปิดโดยไม่เลือก

widget นี้ว่างเปล่าจนกว่าจะได้ post-widget-parameters widget ไม่แสดงผู้ใช้ที่ลงชื่อเข้าใช้อยู่ และไม่แสดงผู้ใช้ที่ถูกลบ

ตัวอย่าง

embedParams คือพารามิเตอร์ร่วมจาก Widgets

const params = new URLSearchParams({ ...embedParams, single_select: 'false' })
frame.src = `${site}/widgets/user-and-group-picker?${params}`

addEventListener('message', (e) => {
  if (e.origin !== site || e.data.messageToken !== messageToken) return
  if (e.data.action === 'ready') {
    frame.contentWindow.postMessage(
      { messageToken, action: 'post-widget-parameters', payload: { disabledUsers: [], disabledGroups: [] } },
      site
    )
  }
  if (e.data.action === 'select') addMembers(e.data.payload.items)
})

ในหน้านี้