kanbanworkflowstimelinescrumrubyroadmapproject-planningproject-managementopenprojectangularissue-trackerifcgantt-chartganttbug-trackerboardsbcf
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.3 KiB
49 lines
1.3 KiB
7 years ago
|
import {wpControllersModule} from '../../../angular-modules';
|
||
|
import {States} from '../../states.service';
|
||
|
|
||
|
export class QuerySharingForm {
|
||
|
public canPublish:boolean = false;
|
||
|
|
||
|
public isSave:boolean;
|
||
|
public isStarred:boolean;
|
||
|
public isPublic:boolean;
|
||
|
public onChange:(args:any) => void;
|
||
|
|
||
|
public text:any;
|
||
|
|
||
|
constructor(public $scope:ng.IScope,
|
||
|
public states:States,
|
||
|
public AuthorisationService:any,
|
||
|
public I18n:op.I18n) {
|
||
|
const query = this.states.query.resource.value!;
|
||
|
const form = states.query.form.value!;
|
||
|
|
||
|
this.canPublish = form.schema.public.writable;
|
||
|
this.text = {
|
||
|
showInMenu: I18n.t('js.label_show_in_menu'),
|
||
|
visibleForOthers: I18n.t('js.label_visible_for_others')
|
||
|
};
|
||
|
}
|
||
|
|
||
|
public get canStar() {
|
||
|
return this.isSave ||
|
||
|
this.AuthorisationService.can('query', 'star') ||
|
||
|
this.AuthorisationService.can('query', 'unstar');
|
||
|
}
|
||
|
|
||
|
public changed() {
|
||
|
this.onChange({ isStarred: !!this.isStarred, isPublic: !!this.isPublic });
|
||
|
}
|
||
|
}
|
||
|
|
||
|
wpControllersModule.component('querySharingForm', {
|
||
|
templateUrl: '/components/modals/share-modal/query-sharing-form.html',
|
||
|
controller: QuerySharingForm,
|
||
|
bindings: {
|
||
|
onChange: '&',
|
||
|
isStarred: '<',
|
||
|
isPublic: '<',
|
||
|
isSave: '<?'
|
||
|
}
|
||
|
});
|