All Downloads are FREE. Search and download functionalities are using the official Maven repository.

web-interface.assets.28.7274e9222d07ea893176.js Maven / Gradle / Ivy

There is a newer version: 6.0.6
Show newest version
webpackJsonp([28],{1146:function(e,exports,t){"use strict";function s(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var a=t(5),r=s(a),l=t(2),n=s(l),o=t(287),i=s(o),u=n.default.createClass({displayName:"RolesSelect",propTypes:{userRoles:r.default.arrayOf(r.default.string),availableRoles:r.default.array.isRequired,onValueChange:r.default.func},getDefaultProps:function(){return{userRoles:[]}},getValue:function(){return this.refs.select.getValue().split(",")},render:function(){var e=this.props.userRoles.join(","),t=this.props.availableRoles.map(function(e){return{value:e.name,label:e.name}});return n.default.createElement(i.default,{ref:"select",options:t,value:e,onChange:this.props.onValueChange,placeholder:"Choose roles..."})}});exports.default=u,e.exports=exports.default},1147:function(e,exports,t){"use strict";function s(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var a=t(5),r=s(a),l=t(2),n=s(l),o=t(16),i=t(46),u=t(1148),d=s(u),m=n.default.createClass({displayName:"TimeoutInput",propTypes:{controlSize:r.default.number,labelSize:r.default.number,value:r.default.number,onChange:r.default.func},getDefaultProps:function(){return{value:36e5,labelSize:2,controlSize:10}},getInitialState:function(){var e=this._estimateUnit(this.props.value);return{sessionTimeoutNever:!!this.props.value&&-1===this.props.value,value:this.props.value?Math.floor(this.props.value/e):0,unit:e}},getValue:function(){return this.state.sessionTimeoutNever?-1:this.refs.timeout.value*this.refs.session_timeout_unit.getValue()},MS_DAY:864e5,MS_HOUR:36e5,MS_MINUTE:6e4,MS_SECOND:1e3,_estimateUnit:function(e){return 0===e?this.MS_SECOND:e%this.MS_DAY==0?this.MS_DAY:e%this.MS_HOUR==0?this.MS_HOUR:e%this.MS_MINUTE==0?this.MS_MINUTE:this.MS_SECOND},_onClick:function(e){this.setState({sessionTimeoutNever:e.target.checked},this._notifyChange)},_onChangeValue:function(e){this.setState({value:e.target.value},this._notifyChange)},_onChangeUnit:function(e){this.setState({unit:e.target.value},this._notifyChange)},_notifyChange:function(){"function"==typeof this.props.onChange&&this.props.onChange(this.getValue())},render:function(){return n.default.createElement("span",null,n.default.createElement(i.Input,{ref:"session_timeout_never",type:"checkbox",id:"session-timeout-never",name:"session_timeout_never",labelClassName:"col-sm-"+this.props.controlSize,wrapperClassName:"col-sm-offset-"+this.props.labelSize+" col-sm-"+this.props.controlSize,label:"Sessions do not time out",help:"When checked sessions never time out due to inactivity.",onChange:this._onClick,checked:this.state.sessionTimeoutNever}),n.default.createElement(i.Input,{label:"Timeout",help:"Session automatically end after this amount of time, unless they are actively used.",labelClassName:"col-sm-"+this.props.labelSize,wrapperClassName:"col-sm-"+this.props.controlSize},n.default.createElement(o.Row,null,n.default.createElement(o.Col,{sm:2},n.default.createElement("input",{ref:"timeout",type:"number",id:"timeout",className:"session-timeout-fields validatable form-control",name:"timeout",min:1,"data-validate":"positive_number",disabled:this.state.sessionTimeoutNever,value:this.state.value,onChange:this._onChangeValue})),n.default.createElement(o.Col,{sm:3},n.default.createElement(d.default,{ref:"session_timeout_unit",className:"form-control session-timeout-fields",disabled:this.state.sessionTimeoutNever,value:this.state.unit,onChange:this._onChangeUnit})))))}});exports.default=m,e.exports=exports.default},1148:function(e,exports,t){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t0&&(t=n.default.createElement(o.Button,{bsStyle:"info",onClick:this._resetStartpage},"Reset custom startpage"));var s=e.read_only?null:n.default.createElement("span",{id:"react-user-preferences-button","data-user-name":this.props.params.username},n.default.createElement(p.default,{userName:e.username}));return n.default.createElement(d.DocumentTitle,{title:"Edit user "+this.props.params.username},n.default.createElement("span",null,n.default.createElement(d.PageHeader,{title:n.default.createElement("span",null,"Edit user ",n.default.createElement("em",null,this.props.params.username)),subpage:!0},n.default.createElement("span",null,"You can either change the details of a user here or set a new password."),null,n.default.createElement("div",null,t," ",s)),n.default.createElement(c.default,{user:this.state.user,history:this.props.history})))}});exports.default=v,e.exports=exports.default},1427:function(e,exports,t){"use strict";function s(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var a=t(5),r=s(a),l=t(2),n=s(l),o=t(1),i=s(o),u=t(16),d=t(76),m=s(d),c=t(46),f=t(167),p=s(f),h=t(6),g=s(h),v=t(1149),_=s(v),E=t(921),C=s(E),b=t(270),S=s(b),y=t(68),w=s(y),N=t(23),P=s(N),M=t(1147),U=s(M),O=t(1428),T=s(O),R=t(49),I=P.default.getStore("Streams"),x=w.default.get("Dashboards"),A=x.DashboardsStore,z=P.default.getStore("CurrentUser"),V=P.default.getStore("Users"),D=n.default.createClass({displayName:"UserForm",propTypes:{user:r.default.object.isRequired,history:r.default.object},mixins:[p.default,i.default.connect(z),i.default.connect(A)],getInitialState:function(){return{streams:void 0,user:this._getUserStateFromProps(this.props)}},componentDidMount:function(){var e=this;I.listStreams().then(function(t){e.setState({streams:t.sort(function(e,t){return e.title.localeCompare(t.title)})})})},componentWillReceiveProps:function(e){this.props.user.username!==e.user.username&&this.setState({user:this._getUserStateFromProps(e)})},_getUserStateFromProps:function(e){return{full_name:e.user.full_name,email:e.user.email,session_timeout_ms:e.user.session_timeout_ms,timezone:e.user.timezone,permissions:e.user.permissions,read_only:e.user.read_only,external:e.user.external,roles:e.user.roles}},formatMultiselectOptions:function(e){return e.map(function(e){return{value:e.id,label:e.title}})},formatSelectedOptions:function(e,t,s){var a=this;return s.filter(function(s){return a.isPermitted(e,[t+":"+s.id])}).map(function(e){return e.id}).join(",")},_onPasswordChange:function(){var e=this.refs.password.getInputDOMNode(),t=this.refs.password_repeat.getInputDOMNode();""!==e.value&&""!==t.value&&_.default.setFieldValidity(t,e.value!==t.value,"Passwords do not match")},_changePassword:function(e){var t=this;e.preventDefault();var s={};this.refs.old_password&&(s.old_password=this.refs.old_password.getValue()),s.password=this.refs.password.getValue(),V.changePassword(this.props.user.username,s).then(function(){g.default.success("Password updated successfully.","Success"),t.isPermitted(t.state.currentUser.permissions,["users:list"])&&t.props.history.replaceState(null,m.default.SYSTEM.AUTHENTICATION.USERS.LIST)},function(){g.default.error("Could not update password. Please verify that your current password is correct.","Updating password failed")})},_updateUser:function(e){var t=this;e.preventDefault(),V.update(this.props.user.username,this.state.user).then(function(){g.default.success("User updated successfully.","Success"),t.isPermitted(t.state.currentUser.permissions,["users:list"])&&t.props.history.replaceState(null,m.default.SYSTEM.AUTHENTICATION.USERS.LIST),t.props.user.username===t.state.currentUser.username&&z.reload()},function(){g.default.error("Could not update the user. Please check your logs for more information.","Updating user failed")})},_updateField:function(e,t){var s=S.default.clone(this.state.user);s[e]=t,this.setState({user:s})},_bindValue:function(e){this._updateField(e.target.name,C.default.getValueFromInput(e.target))},_onFieldChange:function(e){var t=this;return function(s){t._updateField(e,s)}},_onPermissionsChange:function(e,t){var s=this;return function(a){var r=s.state.user.permissions.slice(),l=r.filter(function(s){return 0!==s.indexOf(e+":"+t)}),n=""===a?[]:a.split(",").map(function(s){return e+":"+t+":"+s}),o=r.filter(function(s){return 0===s.indexOf(e+":"+t)});"read"===t&&o.forEach(function(t){if(!n.some(function(e){return e===t})){var s=t.split(":").pop();l=l.filter(function(t){return t!==e+":edit:"+s})}}),"edit"===t&&n.forEach(function(t){if(!o.some(function(e){return e===t})){var s=t.split(":").pop();l.push(e+":read:"+s)}}),s._updateField("permissions",l.concat(n))}},_onCancel:function(){this.props.history.goBack()},render:function(){if(!this.state.streams||!this.state.dashboards)return n.default.createElement(R.Spinner,null);var e=this.state.user,t=this.state.currentUser.permissions,s=this.state.dashboards.toArray().sort(function(e,t){return e.title.localeCompare(t.title)}),a=!0;this.isPermitted(t,"users:passwordchange:*")&&(a=this.props.user.username===this.state.currentUser.username);var r=this.formatSelectedOptions(this.state.user.permissions,"streams:read",this.state.streams),l=this.formatSelectedOptions(this.state.user.permissions,"streams:edit",this.state.streams),o=this.formatSelectedOptions(this.state.user.permissions,"dashboards:read",s),i=this.formatSelectedOptions(this.state.user.permissions,"dashboards:edit",s);return n.default.createElement("div",null,n.default.createElement(u.Row,null,n.default.createElement(u.Col,{lg:8},n.default.createElement("h2",null,"User information"),n.default.createElement("form",{className:"form-horizontal user-form",id:"edit-user-form",onSubmit:this._updateUser},e.read_only&&n.default.createElement("span",null,n.default.createElement(u.Col,{smOffset:3,sm:9},n.default.createElement(u.Alert,{bsStyle:"warning",role:"alert"},"The admin user can only be modified in your Graylog server configuration file.")),n.default.createElement("div",{className:"clearfix"}),n.default.createElement("br",null)),n.default.createElement("fieldset",{disabled:e.read_only},n.default.createElement(c.Input,{name:"full_name",id:"full_name",type:"text",maxLength:200,value:e.full_name,onChange:this._bindValue,labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Full Name",help:"Give a descriptive name for this account, e.g. the full name.",required:!0}),n.default.createElement(c.Input,{ref:"email",name:"email",id:"email",type:"email",maxLength:254,value:e.email,onChange:this._bindValue,labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Email Address",help:"Give the contact email address.",required:!0}),n.default.createElement(R.IfPermitted,{permissions:"users:edit"},n.default.createElement("span",null,n.default.createElement("div",{className:"form-group"},n.default.createElement(u.Col,{sm:9,smOffset:3},n.default.createElement(u.Panel,{bsStyle:"danger",header:"Setting individual permissions is deprecated, please consider migrating to roles instead."},"The permissions listed here are the result of combining all granted permissions by the roles assigned to a user, which you can edit at the bottom of this page, as well as legacy, individual permissions which were assigned to the user before.")),n.default.createElement("label",{className:"col-sm-3 control-label",htmlFor:"streampermissions"},"Streams Permissions"),n.default.createElement(u.Col,{sm:9},n.default.createElement(R.MultiSelect,{ref:"streamReadOptions",placeholder:"Choose streams read permissions...",options:this.formatMultiselectOptions(this.state.streams),value:r,onChange:this._onPermissionsChange("streams","read")}),n.default.createElement("span",{className:"help-block"},"Choose streams the user can ",n.default.createElement("strong",null,"view"),". Removing read access will remove edit access, too."),n.default.createElement(R.MultiSelect,{ref:"streamEditOptions",placeholder:"Choose streams edit permissions...",options:this.formatMultiselectOptions(this.state.streams),value:l,onChange:this._onPermissionsChange("streams","edit")}),n.default.createElement("span",{className:"help-block"},"Choose the streams the user can ",n.default.createElement("strong",null,"edit"),". Values chosen here will enable read access, too."))),n.default.createElement("div",{className:"form-group"},n.default.createElement("label",{className:"col-sm-3 control-label",htmlFor:"dashboardpermissions"},"Dashboard Permissions"),n.default.createElement(u.Col,{sm:9},n.default.createElement(R.MultiSelect,{ref:"dashboardReadOptions",placeholder:"Choose dashboards read permissions...",options:this.formatMultiselectOptions(s),value:o,onChange:this._onPermissionsChange("dashboards","read")}),n.default.createElement("span",{className:"help-block"},"Choose dashboards the user can ",n.default.createElement("strong",null,"view"),". Removing read access will remove edit access, too."),n.default.createElement(R.MultiSelect,{ref:"dashboardEditOptions",placeholder:"Choose dashboards edit permissions...",options:this.formatMultiselectOptions(s),value:i,onChange:this._onPermissionsChange("dashboards","edit")}),n.default.createElement("span",{className:"help-block"},"Choose dashboards the user can ",n.default.createElement("strong",null,"edit"),". Values chosen here will enable read access, too."))))),n.default.createElement(R.IfPermitted,{permissions:"*"},n.default.createElement(U.default,{ref:"session_timeout_ms",value:e.session_timeout_ms,labelSize:3,controlSize:9,onChange:this._onFieldChange("session_timeout_ms")})),n.default.createElement(c.Input,{label:"Time Zone",help:"Choose your local time zone or leave it as it is to use the system's default.",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9"},n.default.createElement(R.TimezoneSelect,{ref:"timezone",className:"timezone-select",value:e.timezone,onChange:this._onFieldChange("timezone")})),n.default.createElement("div",{className:"form-group"},n.default.createElement(u.Col,{smOffset:3,sm:9},n.default.createElement(u.Button,{type:"submit",bsStyle:"primary",className:"create-user save-button-margin"},"Update User"),n.default.createElement(u.Button,{onClick:this._onCancel},"Cancel"))))))),n.default.createElement(u.Row,null,n.default.createElement(u.Col,{lg:8},n.default.createElement("h2",null,"Change password"),e.read_only?n.default.createElement(u.Col,{smOffset:3,sm:9},n.default.createElement(u.Alert,{bsStyle:"warning",role:"alert"},"Please edit your Graylog server configuration file to change the admin password.")):e.external?n.default.createElement(u.Col,{smOffset:3,sm:9},n.default.createElement(u.Alert,{bsStyle:"warning",role:"alert"},"This user was created from an external system and you can't change the password here. Please contact an administrator for more information.")):n.default.createElement("form",{className:"form-horizontal",style:{marginTop:10},onSubmit:this._changePassword},a&&n.default.createElement(c.Input,{ref:"old_password",name:"old_password",id:"old_password",type:"password",maxLength:100,labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Old Password",required:!0}),n.default.createElement(c.Input,{ref:"password",name:"password",id:"password",type:"password",maxLength:100,labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"New Password",required:!0,minLength:"6",help:"Passwords must be at least 6 characters long. We recommend using a strong password.",onChange:this._onPasswordChange}),n.default.createElement(c.Input,{ref:"password_repeat",name:"password_repeat",id:"password_repeat",type:"password",maxLength:100,labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Repeat Password",required:!0,minLength:"6",onChange:this._onPasswordChange}),n.default.createElement("div",{className:"form-group"},n.default.createElement(u.Col,{smOffset:3,sm:9},n.default.createElement(u.Button,{bsStyle:"primary",type:"submit",className:"save-button-margin"},"Update Password"),n.default.createElement(u.Button,{onClick:this._onCancel},"Cancel")))))),n.default.createElement(R.IfPermitted,{permissions:"users:rolesedit"},n.default.createElement(T.default,{user:this.props.user,history:this.props.history})))}});exports.default=D,e.exports=exports.default},1428:function(e,exports,t){"use strict";function s(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var a=t(5),r=s(a),l=t(2),n=s(l),o=t(16),i=t(76),u=s(i),d=t(46),m=t(6),c=s(m),f=t(270),p=s(f),h=t(23),g=s(h),v=t(1146),_=s(v),E=t(49),C=t(1429),b=s(C),S=g.default.getStore("Roles"),y=g.default.getStore("Users"),w=n.default.createClass({displayName:"EditRolesForm",propTypes:{user:r.default.object.isRequired,history:r.default.object},getInitialState:function(){return{newRoles:null}},componentDidMount:function(){var e=this;S.loadRoles().then(function(t){e.setState({roles:t.sort(function(e,t){return e.name.localeCompare(t.name)})})})},_updateRoles:function(e){var t=this;if(e.preventDefault(),confirm('Really update roles for "'+this.props.user.username+'"?')){var s=this.refs.roles.getValue().filter(function(e){return""!==e}),a=p.default.clone(this.props.user);a.roles=s,y.update(this.props.user.username,a).then(function(){c.default.success("Roles updated successfully.","Success!"),t.props.history.replaceState(null,u.default.SYSTEM.AUTHENTICATION.USERS.LIST)},function(){c.default.error("Updating roles failed.","Error!")})}},_onCancel:function(){this.props.history.pushState(null,u.default.SYSTEM.AUTHENTICATION.USERS.LIST)},_onValueChange:function(e){var t=e.split(",");this.setState({newRoles:t})},render:function(){var e=this.props.user;if(!this.state.roles)return n.default.createElement(E.Spinner,null);var t=null,s=this.state.newRoles;null==s||s.includes("Reader")||s.includes("Admin")||(t=n.default.createElement(o.Alert,{bsStyle:"danger",role:"alert",className:b.default.rolesMissingAlert},"You need to select at least one of the ",n.default.createElement("em",null,"Reader")," or ",n.default.createElement("em",null,"Admin")," roles."));var a=e.external?n.default.createElement(o.Col,{smOffset:3,sm:9,style:{marginBottom:15}},n.default.createElement(o.Alert,{bsStyle:"warning",role:"alert"},"This user was created from an external LDAP system, please consider mapping LDAP groups instead of manually editing roles here. Please update the LDAP group mapping to make changes or contact an administrator for more information.")):null,r=e.read_only?n.default.createElement(o.Col,{smOffset:3,sm:9},n.default.createElement(o.Alert,{bsStyle:"warning",role:"alert"},"You cannot edit the admin's user role.")):n.default.createElement("span",null,a,n.default.createElement("form",{className:"form-horizontal",style:{marginTop:"10px"},onSubmit:this._updateRoles},n.default.createElement(d.Input,{label:"Roles",help:"Choose the roles the user should be a member of. All the granted permissions will be combined.",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9"},n.default.createElement(_.default,{ref:"roles",userRoles:e.roles,availableRoles:this.state.roles,onValueChange:this._onValueChange})),n.default.createElement("div",{className:"form-group"},n.default.createElement(o.Col,{smOffset:3,sm:9},t,n.default.createElement(o.Button,{bsStyle:"primary",type:"submit",className:"save-button-margin",disabled:!!t},"Update role"),n.default.createElement(o.Button,{onClick:this._onCancel},"Cancel")))));return n.default.createElement(o.Row,null,n.default.createElement(o.Col,{md:8},n.default.createElement("h2",null,"Change user role"),r))}});exports.default=w,e.exports=exports.default},1429:function(e,exports,t){var s=t(1430);"string"==typeof s&&(s=[[e.i,s,""]]);var a={};a.transform=void 0;t(22)(s,a);s.locals&&(e.exports=s.locals)},1430:function(e,exports,t){exports=e.exports=t(21)(void 0),exports.push([e.i,"._1JCP9xI-zM9iz_soNhwBa_{margin-top:-15px;margin-bottom:20px}",""]),exports.locals={rolesMissingAlert:"_1JCP9xI-zM9iz_soNhwBa_"}},1431:function(e,exports,t){"use strict";function s(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var a=t(5),r=s(a),l=t(2),n=s(l),o=t(16),i=t(1432),u=s(i),d=n.default.createClass({displayName:"UserPreferencesButton",propTypes:{userName:r.default.string.isRequired},onClick:function(){this.refs.userPreferencesModal.openModal()},render:function(){return n.default.createElement("span",null,n.default.createElement(o.Button,{onClick:this.onClick,bsStyle:"success"},"User preferences"),n.default.createElement(u.default,{ref:"userPreferencesModal",userName:this.props.userName}))}});exports.default=d,e.exports=exports.default},1432:function(e,exports,t){"use strict";function s(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var a=t(5),r=s(a),l=t(2),n=s(l),o=t(46),i=t(23),u=s(i),d=t(272),m=s(d),c=u.default.getStore("Preferences"),f=n.default.createClass({displayName:"UserPreferencesModal",propTypes:{userName:r.default.string.isRequired},getInitialState:function(){return{preferences:[]}},_onPreferenceChanged:function(e){var t=e.target.name,s=this.state.preferences.filter(function(e){return e.name===t})[0];s&&(s.value=e.target.value,this.setState({preferences:this.state.preferences}))},_save:function(){c.saveUserPreferences(this.state.preferences,this.refs.modal.close)},openModal:function(){var e=this;c.loadUserPreferences(this.props.userName,function(t){e.setState({preferences:t}),e.refs.modal.open()})},render:function(){var e=this,t=!0,s=this.state.preferences.map(function(s,a){var r=n.default.createElement("div",{className:"form-group",key:s.name+"-"+a},n.default.createElement(o.Input,{type:"text",id:s.name+"-"+a,name:s.name,label:s.name,onChange:e._onPreferenceChanged,value:s.value,required:!0,autoFocus:t}));return t&&(t=!1),r});return n.default.createElement(m.default,{ref:"modal",title:"Preferences for user "+this.props.userName,onSubmitForm:this._save,submitButtonText:"Save"},n.default.createElement("div",null,s))}});exports.default=f,e.exports=exports.default}});
//# sourceMappingURL=28.7274e9222d07ea893176.js.map




© 2015 - 2024 Weber Informatics LLC | Privacy Policy