Dotclear

source: admin/js/_users_actions.js @ 2566:9bf417837888

Revision 2566:9bf417837888, 2.5 KB checked in by franck <carnet.franck.paul@…>, 12 years ago (diff)

Add some people in CREDITS, remove trailing spaces and tabs.

Line 
1jQuery.fn.updatePermissionsForm = function() {
2     return this.each(function() {
3
4          var perms = {};
5          var re = /^perm\[(.+?)\]\[(.+?)\]$/;
6          var e,prop;
7
8          // Building a nice object of form elements
9          for (var i=0; i<this.elements.length; i++) {
10               e = this.elements[i];
11
12               if (e.name == undefined) {
13                    continue;
14               }
15               var prop;
16               prop = e.name.match(re);
17               if (!prop) {
18                    continue;
19               }
20               if (perms[prop[1]] == undefined) {
21                    perms[prop[1]] = {};
22               }
23               perms[prop[1]][prop[2]] = e;
24
25               // select related permissions for admin
26               if (prop[2] == 'admin') {
27                    if (e.checked) {
28                         admin(e,perms,re);
29                    }
30                    $(e).click(function(){
31                         admin(this,perms,re);
32                    });
33               // select related permissions for content admin
34               } else if (prop[2] == 'contentadmin') {
35                    if (e.checked) {
36                         contentadmin(e,perms,re);
37                    }
38                    $(e).click(function(){
39                         contentadmin(this,perms,re);
40                    });
41               // select related permissions for media admin
42               } else if (prop[2] == 'media_admin') {
43                    if (e.checked) {
44                         mediaadmin(e,perms,re);
45                    }
46                    $(e).click(function(){
47                         mediaadmin(this,perms,re);
48                    });
49               }
50          }
51
52          function admin(E,perms,re) {
53                         P = E.name.match(re);
54
55                         perms[P[1]]['usage'].checked = E.checked;
56                         perms[P[1]]['publish'].checked = E.checked;
57                         perms[P[1]]['delete'].checked = E.checked;
58                         perms[P[1]]['contentadmin'].checked = E.checked;
59                         perms[P[1]]['categories'].checked = E.checked;
60                         perms[P[1]]['media'].checked = E.checked;
61                         perms[P[1]]['media_admin'].checked = E.checked;
62                         perms[P[1]]['usage'].disabled = E.checked;
63                         perms[P[1]]['publish'].disabled = E.checked;
64                         perms[P[1]]['delete'].disabled = E.checked;
65                         perms[P[1]]['contentadmin'].disabled = E.checked;
66                         perms[P[1]]['categories'].disabled = E.checked;
67                         perms[P[1]]['media'].disabled = E.checked;
68                         perms[P[1]]['media_admin'].disabled = E.checked;
69          }
70
71          function contentadmin(E,perms,re) {
72                         P = E.name.match(re);
73
74                         perms[P[1]]['usage'].checked = E.checked;
75                         perms[P[1]]['publish'].checked = E.checked;
76                         perms[P[1]]['delete'].checked = E.checked;
77                         perms[P[1]]['usage'].disabled = E.checked;
78                         perms[P[1]]['publish'].disabled = E.checked;
79                         perms[P[1]]['delete'].disabled = E.checked;
80          }
81
82          function mediaadmin(E,perms,re) {
83                         P = E.name.match(re);
84
85                         perms[P[1]]['media'].checked = E.checked;
86                         perms[P[1]]['media'].disabled = E.checked;
87          }
88
89
90     });
91};
92
93$(function() {
94     $('.checkboxes-helpers').each(function() {
95          dotclear.checkboxesHelpers(this);
96     });
97     $('#permissions-form').updatePermissionsForm();
98});
Note: See TracBrowser for help on using the repository browser.

Sites map