renderSharingSettingBlock()

in widgets/distribution-reports/src/app/distribution-report-form.js [314:343]


  renderSharingSettingBlock(settingName, label, title, IconElement) {
    const {
      disabled,
      report,
      currentUser
    } = this.state;

    const sharingSetting = report && report[settingName] || {};
    const implicitSelected = [report && report.owner || currentUser].filter(
      user => !!user
    );

    return (
      <StandardFormGroup label={label}>
        <IconElement
          className="distribution-reports-widget__icon distribution-reports-widget__label"
          color={InfoIcon.Color.GRAY}
          size={InfoIcon.Size.Size14}
        />
        {title}&nbsp;
        <SharingSetting
          getOptions={this.getSharingSettingsOptions}
          value={sharingSetting}
          onChange={this.getReportEditOperationHandler(settingName)}
          disabled={disabled}
          implicitSelected={implicitSelected}
        />
      </StandardFormGroup>
    );
  }