UNPKG

wejsv2old-plugin-cdp-profile

Version:
81 lines (70 loc) 2.08 kB
// Map user routers App.Router.map(function(match) { // item route this.resource('profile',{ path: '/profile/:id' }, function(){ // edit item route this.route('edit'); }); }); App.ProfileRoute = Ember.Route.extend({ queryParams: { edit: {} }, model: function (params) { return this.store.find('user', params.id); }, afterModel: function (model){ var ProfilePermission = Ember.WePermissions.create(); if (!ProfilePermission.can('user_update', 'user', model)) { return this.transitionTo('forbidden'); } } }); // route /user/:id/ App.ProfileIndexRoute = Ember.Route.extend({ beforeModel: function(transition) { this._super(); // redirect /user/:id/ to /user/:id/edit route this.transitionTo('profile.edit', transition.params.profile.id); } }); // route item /edit App.ProfileEditRoute = Ember.Route.extend(App.ResetScrollMixin, { renderTemplate: function() { this.render('profile/edit'); }, model: function() { return this.modelFor('profile').reload(); }, afterModel: function(model) { this._super(); var displayName = Ember.get(model, 'displayName'); var username = Ember.get(model, 'username'); // deixa o displayName vazio se for iqual ao username if (!displayName || (username == displayName) ) { model.set('displayName', null); } if (model.get('cpf')) { model.set('canEditCPF', false); } else { model.set('canEditCPF', true); } }, setupController: function(controller, model) { // Add model to controller controller.set('model', model); var redirectToServiceUrl; if ($.cookie('redirectUrl')) { try { redirectToServiceUrl = JSON.parse($.cookie('redirectUrl')); } catch (e) { Ember.Logger.error('Could not parse redirectToServiceUrl', e); } $.removeCookie('redirectUrl', { path: '/' }); } if (redirectToServiceUrl) { controller.set('redirectToServiceUrl', redirectToServiceUrl); } controller.set('currentUsername', model.get('username')); } });