unclean SPARC
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
/**
|
||||
* Submission management
|
||||
*
|
||||
* @version 1.0
|
||||
*/
|
||||
class SubmissionsController extends EICController {
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {*} options
|
||||
*
|
||||
*/
|
||||
proposal(options) {
|
||||
let pic = options.params.pic;
|
||||
let number = options.params.pid;
|
||||
let mode = options.params.mode || 'read';
|
||||
|
||||
app.User.getBusinessPermissions([
|
||||
`/organisations/${pic}/proposals/${number}`,
|
||||
`/organisations/${pic}/proposals/${number}/members`
|
||||
], 'Org_Member')
|
||||
.then( async payload => {
|
||||
|
||||
if(mode == 'edit') {
|
||||
if(!payload[`/organisations/${pic}/proposals/${number}`].permissions.includes('update')) {
|
||||
mode = 'read';
|
||||
}
|
||||
}
|
||||
|
||||
if(payload[`/organisations/${pic}/proposals/${number}`].permissions.includes('read')) {
|
||||
|
||||
let models = {
|
||||
'submission' : new SubmissionModel( payload[`/organisations/${pic}/proposals/${number}`].permissions ),
|
||||
'team' : new SubmissionTeamModel( [ 'create', 'update', 'delete' ] ),
|
||||
'members' : new SubmissionMembersModel( payload[`/organisations/${pic}/proposals/${number}/members`].permissions )
|
||||
};
|
||||
|
||||
app.meta.add('organisation-functions', app.Assets.Store.json['organisation-functions']);
|
||||
app.meta.add('organisation-genders', app.Assets.Store.json['organisation-genders']);
|
||||
app.meta.add('eic-keywords', app.Assets.Store.json['eic-keywords']);
|
||||
|
||||
models.submission.getProposal(pic,number).then(
|
||||
async () => {
|
||||
let formVersions = {
|
||||
'legacy' : '2022',
|
||||
'1.0' : '2023',
|
||||
'1.1' : '2023'
|
||||
};
|
||||
|
||||
let formVersion = formVersions[models.submission.data.version || 'legacy'];
|
||||
|
||||
await Loader.loadViews(app.Router.ControllerConfigs.SubmissionsController.lazyViews[formVersion]);
|
||||
this.loadWindow(
|
||||
`projects/submissions/${formVersion}/SubmissionShortForm${formVersion}View`,
|
||||
{ title: 'Proposal ' + number, static: true, expanded: true },
|
||||
{
|
||||
profile: {
|
||||
mode: mode,
|
||||
pic: pic,
|
||||
number: number
|
||||
},
|
||||
models: models
|
||||
}
|
||||
);
|
||||
})
|
||||
|
||||
} else {
|
||||
ui.growl.append('You are not allowed to access this proposal', 'danger');
|
||||
}
|
||||
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
app.registerClass('SubmissionsController', SubmissionsController);
|
||||
Reference in New Issue
Block a user