Skip to content

Commit

Permalink
adding basic Show All ability to item permissions. there seem to be i…
Browse files Browse the repository at this point in the history
…ssues with permissions to edit permissions
  • Loading branch information
mikhuang committed Apr 19, 2013
1 parent 0c21ad9 commit ce34c33
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 11 deletions.
44 changes: 34 additions & 10 deletions deme_django/cms/templates/templatetags/privacy_editor.html
Expand Up @@ -30,7 +30,7 @@
wrapper.append(remove_button);*/

is_allowed_value ='';
if (is_allowed) {
if (is_allowed===true) {
is_allowed_value = "on";
}

Expand All @@ -45,13 +45,6 @@
var btnwrap = $('<div class="btn-group">').append(plus).append(minus);
wrapper.append(btnwrap);


if (is_allowed) {
plus.addClass('active');
} else {
minus.addClass('active');
}

// bind events
plus.bind('click', function(e){
e.preventDefault();
Expand All @@ -78,7 +71,7 @@
}

if (ability == '') {
var ability_select = $('<select name="newpermission' + permission_counter + '_ability">');
var ability_select = $('<select name="newpermission' + permission_counter + '_ability" class="ability">');
for (var i in possible_abilities) {
var is_selected = (possible_abilities[i][0] == ability);
ability_select[0].options[i] = new Option(possible_abilities[i][1], possible_abilities[i][0], is_selected, is_selected);
Expand All @@ -95,10 +88,20 @@
}
}
wrapper.append('<label for="newpermission' + permission_counter + '_is_allowed">' + friendly_name + '</label>');
wrapper.append('<input type="hidden" name="newpermission' + permission_counter + '_ability" value="' + ability + '" />');
wrapper.append('<input type="hidden" class="ability" name="newpermission' + permission_counter + '_ability" value="' + ability + '" />');
}
wrapper.append('<input type="hidden" name="newpermission' + permission_counter + '_permission_type" value="' + permission_type + '" />');
wrapper.append('<input type="hidden" name="newpermission' + permission_counter + '_agent_or_collection_id" value="' + agent_or_collection_id + '" />');

if (can_edit_permissions) {
if (is_allowed===true) {
plus.addClass('active');
} else if (is_allowed===false) {
minus.addClass('active');
} else {
$(wrapper).find('input').attr('disabled', true);
}
}
permission_counter += 1;
}

Expand All @@ -122,6 +125,7 @@
var permissions_cell = $('<td>');
permissions_cell.addClass('permissions_cell');
if (can_edit_permissions) {
// add permission button
var add_button = $('<a href="#" class="img_link">');
add_button.append('<i class="glyphicon glyphicon-edit"></i> New Permission');
add_button.bind('click', function(e){
Expand All @@ -131,6 +135,26 @@
return false;
});
permissions_cell.append(add_button);

// show all permissions button
var show_button = $('<a href="#" class="img_link">');
show_button.append('<i class="glyphicon glyphicon-th-list"></i> Show All');
show_button.bind('click', function(e){
e.preventDefault();
// loop through all permissions.
for (var i in possible_abilities) {
var ability = (possible_abilities[i][0]);
// look for existing in this div
var permission = permissions_cell.find('.ability[value="'+ability+'"]');
if (permission.length == 0) {
var permission_div = $('<div class="permission permission-mass">');
add_permission_fields(permission_div, permission_type, agent_or_collection_id, null, ability);
permissions_cell.append(permission_div);
}
}
$(this).remove(); // kill button
});
permissions_cell.append(show_button);
}
row.append(permissions_cell);
return row;
Expand Down
3 changes: 3 additions & 0 deletions deme_django/static/css/deme.css
Expand Up @@ -5309,6 +5309,9 @@ you can use the generic selector below, but it's slower:
#permission_table th {
text-align: left;
}
#permission_table .permissions_cell a {
padding-right: 15px;
}
#permission_table .permission {
position: relative;
margin-top: 5px;
Expand Down
6 changes: 5 additions & 1 deletion deme_django/static/less/deme/privacy-editor.less
Expand Up @@ -3,7 +3,11 @@
th {
text-align: left;
}

.permissions_cell {
a {
padding-right: 15px;
}
}
.permission {
position: relative;
margin-top: 5px;
Expand Down

0 comments on commit ce34c33

Please sign in to comment.