renderSharingSettingBlock()

in widgets/time-tracking-report/src/app/time-tracking-report-form.js [244:276]


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

    const sharingSetting = report && report[settingName] || {};
    const implicitSelected = [TimeTrackingReportForm.getReportOwner(
      report, this.props.currentUser
    )].filter(user => !!user);

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