Ignore:
Timestamp:
Nov 14, 2009, 12:45:42 AM (14 years ago)
Author:
LucMorizur
Message:

[Event Cats] Continue duplication management

Location:
extensions/event_cats/admin
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • extensions/event_cats/admin/duplication.inc.php

    r4247 r4263  
    11<?php
    2 
    3 $t = read_ec_conf('reg_display');
    4 if ($t == '0') $reg_display = array('0', '');
    5 else $reg_display = explode(';', $t);
    6 
    7 $template->assign('reg_display', $reg_display);
    8 $template->assign('ec_conf', $ec_conf);
    92
    103
    114
    12 
    13 
    14 
    15 // A lot of below code has simply been copied-pasted from file cat_perm.php .
    16 // Many thanks to people who wrote it !
    17 
    18 // +-----------------------------------------------------------------------+
    19 // |                          form construction                            |
    20 // +-----------------------------------------------------------------------+
    21 
    22 // groups denied are the groups not granted. So we need to find all groups
    23 // minus groups granted to find groups denied.
    24 
    25 $groups = array();
    26 
    27 $query = '
    28 SELECT id, name
    29   FROM '.GROUPS_TABLE.'
    30   ORDER BY name ASC
    31 ;';
    32 $groups = simple_hash_from_query($query, 'id', 'name');
    33 $template->assign('all_groups', $groups);
    34 
    35 // groups granted to access the category
    36 $query = "
    37 SELECT `arg1`
    38   FROM ".EVNTCATS_TABLE."
    39   WHERE `code` IS NULL
    40     AND `arg1` IS NOT NULL
    41 ;";
    42 $group_granted_ids = array_from_query($query, 'arg1');
    43 $group_granted_ids = order_by_name($group_granted_ids, $groups);
    44 $template->assign('group_granted_ids', $group_granted_ids);
    45 
    46 
    47 // groups denied
    48 $template->assign('group_denied_ids',
    49     order_by_name(array_diff(array_keys($groups), $group_granted_ids), $groups)
    50   );
    51 
    52 // users...
    53 $users = array();
    54 
    55 $query = "
    56 SELECT ".$conf['user_fields']['id']." AS id,
    57        ".$conf['user_fields']['username']." AS username
    58   FROM ".USERS_TABLE."
    59 ;";
    60 $users = simple_hash_from_query($query, 'id', 'username');
    61 $template->assign('all_users', $users);
    62 
    63 
    64 $query = "
    65 SELECT `arg2`
    66   FROM ".EVNTCATS_TABLE."
    67   WHERE `code` IS NULL
    68     AND `arg2` IS NOT NULL
    69 ;";
    70 $user_granted_direct_ids = array_from_query($query, 'arg2');
    71 $user_granted_direct_ids = order_by_name($user_granted_direct_ids, $users);
    72 $template->assign('user_granted_direct_ids', $user_granted_direct_ids);
    73 
    74 
    75 
    76 $user_granted_indirect_ids = array();
    77 if (count($group_granted_ids) > 0)
    78 {
    79   $granted_groups = array();
    80 
    81   $query = "
    82 SELECT user_id, group_id
    83   FROM ".USER_GROUP_TABLE."
    84   WHERE group_id IN (".implode(',', $group_granted_ids).")
    85 ";
    86   $result = pwg_query($query);
    87   while ($row = mysql_fetch_array($result))
    88   {
    89     if (!isset($granted_groups[$row['group_id']]))
    90     {
    91       $granted_groups[$row['group_id']] = array();
    92     }
    93     array_push($granted_groups[$row['group_id']], $row['user_id']);
    94   }
    95 
    96   $user_granted_by_group_ids = array();
    97 
    98   foreach ($granted_groups as $group_users)
    99   {
    100     $user_granted_by_group_ids = array_merge($user_granted_by_group_ids,
    101                                              $group_users);
    102   }
    103   $user_granted_by_group_ids = array_unique($user_granted_by_group_ids);
    104  
    105  
    106   $user_granted_indirect_ids = array_diff($user_granted_by_group_ids,
    107                                           $user_granted_direct_ids);
    108   $user_granted_indirect_ids =
    109     order_by_name($user_granted_indirect_ids, $users); 
    110   foreach ($user_granted_indirect_ids as $user_id)
    111   {
    112     foreach ($granted_groups as $group_id => $group_users)
    113     {
    114       if (in_array($user_id, $group_users))
    115       {
    116         $template->append(
    117           'user_granted_indirects',
    118           array(
    119             'USER'=>$users[$user_id],
    120             'GROUP'=>$groups[$group_id]
    121             )
    122           );
    123         break;
    124       }
    125     }
    126   }
    127 }
    128 
    129 $user_denied_ids = array_diff(array_keys($users),
    130                               $user_granted_indirect_ids,
    131                               $user_granted_direct_ids);
    132 $user_denied_ids = order_by_name($user_denied_ids, $users);
    133 $template->assign('user_denied_ids', $user_denied_ids);
     5build_dup_arrays(true);
    1346
    1357
  • extensions/event_cats/admin/template/autolog_new.js

    r4219 r4263  
    511511   && ec_old_new_psd_text != ''
    512512   && ec_selected_user == 'ec_sel_user_new'
    513   ) {
    514     de('ec_in_up_pwd_warn1').innerHTML = ec_JS_message['ec_new_pwd_gen1'];
    515     de('ec_in_up_pwd_warn2').innerHTML = ec_JS_message['ec_new_pwd_gen2'];
    516   }
    517   else {
    518     de('ec_in_up_pwd_warn1').innerHTML = '';
    519     de('ec_in_up_pwd_warn2').innerHTML = '';
    520   }
     513  ) de('ec_in_up_pwd_warn').innerHTML = ec_JS_message['ec_new_pwd_gen'];
     514  else de('ec_in_up_pwd_warn').innerHTML = '';
    521515}
    522516
     
    701695  de('ec_in_up_grp_txt_id').value                 = '';
    702696  de('ec_in_up_newgroup_id').checked              = '';
    703   de('ec_in_up_pwd_warn1').innerHTML              = '';
    704   de('ec_in_up_pwd_warn2').innerHTML              = '';
     697  de('ec_in_up_pwd_warn').innerHTML               = '';
    705698  de('ec_in_up_aps_id').selectedIndex             = '-1';
    706699  de('ec_in_up_cats_id').selectedIndex            = '-1';
  • extensions/event_cats/admin/template/autolog_new.tpl

    r4228 r4263  
    126126        {'ec_up_code_lbl_user'|@translate}<br>
    127127        <br>
    128         <span style = "font-weight:bold; color:red;" id = "ec_in_up_pwd_warn1">&nbsp;</span><br>
    129         <span style = "font-weight:bold; color:red;" id = "ec_in_up_pwd_warn2">&nbsp;</span>
     128        <span style = "font-weight:bold; color:red;" id = "ec_in_up_pwd_warn">&nbsp;</span><br>
    130129      </td>
    131130      <td>
     
    276275  ec_JS_message['ec_act_cat_miss']        = "{'ec_act_cat_miss'|@translate|@escape:javascript}";
    277276  ec_JS_message['ec_act_img_miss']        = "{'ec_act_img_miss'|@translate|@escape:javascript}";
    278   ec_JS_message['ec_new_pwd_gen1']        = "{'ec_new_pwd_gen1'|@translate|@escape:javascript}";
    279   ec_JS_message['ec_new_pwd_gen2']        = "{'ec_new_pwd_gen2'|@translate|@escape:javascript}";
     277  ec_JS_message['ec_new_pwd_gen']         = "{'ec_new_pwd_gen'|@translate|@escape:javascript}";
    280278  ec_JS_message['ec_act_entry_miss']      = "{'ec_act_entry_miss'|@translate|@escape:javascript}";
    281279  ec_JS_message['ec_confirm_force']       = "{'ec_confirm_force'|@translate|@escape:javascript}";
  • extensions/event_cats/admin/template/config.tpl

    r4157 r4263  
    1313  ec_JS_message['ec_gen_user_act_miss'] = "{'ec_gen_user_act_miss'|@translate|@escape:javascript}";
    1414  ec_JS_message['ec_act_cat_miss']      = "{'ec_act_cat_miss'|@translate|@escape:javascript}";
    15   ec_JS_message['ec_new_pwd_gen1']       = "{'ec_new_pwd_gen1'|@translate|@escape:javascript}";
     15  ec_JS_message['ec_new_pwd_gen']       = "{'ec_new_pwd_gen'|@translate|@escape:javascript}";
    1616  ec_JS_message['ec_up_code_lbl_home']  = "{'ec_up_code_lbl_home'|@translate}";
    1717  ec_init();
  • extensions/event_cats/admin/template/duplication.tpl

    r4247 r4263  
    66<p>Bientôt disponible :-] !</p>
    77
    8 <!-- Aknowledgement ------------------------------------------------------
    9 A lot of below code has simply been copied-pasted from file cat_perm.tpl .
    10 Many thanks to people who wrote it !
    11 ------------------------------------------------------------------------->
     8<!-- Aknowledgement ----------------------------------------------------------
     9| A lot of below code has simply been copied-pasted from file cat_perm.tpl . |
     10| Many thanks to people who wrote it !                                       |
     11----------------------------------------------------------------------------->
    1212
    1313{* <!-- Duplication configuration parameters --> *}
     
    1818      <tr>
    1919        <td>
    20           <span style = "font-weight:bold;">{'ec_duplication_allowance'|@translate}</span>
     20          <span style = "font-weight:bold;">{'ec_duplication_allowance'|@translate}&nbsp;&nbsp;</span>
    2121        </td>
    2222        <td>
     
    2828            <input type = "radio" name = "ec_dup_conf" id = "ec_dup_conf_group_id" />
    2929            {'ec_dup_allowance_group'|@translate}
    30           </label><br>
     30          </label><br> {* <!--
     31          <label for = "ec_dup_conf_gen_id">
     32            <input type = "radio" name = "ec_dup_conf" id = "ec_dup_conf_gen_id" />
     33            {'ec_dup_allowance_gen'|@translate}
     34          </label><br> --> *}
    3135          <label for = "ec_dup_conf_all_id">
    3236            <input type = "radio" name = "ec_dup_conf" id = "ec_dup_conf_all_id" />
    3337            {'ec_dup_allowance_all'|@translate}
    34           </label><br>
    35         </td>
    36         <td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>
    37         <td>
    38           <span style = "font-weight:bold;">{'ec_duplication_display'|@translate}</span>
    39         </td>
    40         <td>
    41           <label for = "ec_dup_disp_normal_id">
    42             <input type = "radio" name = "ec_dup_disp" id = "ec_dup_disp_normal_id" />
    43             {'ec_dup_display_normal'|@translate}{if $reg_display.0 != '0'} ("{$reg_display.1}"){/if}
    44           </label><br>
    45           <label for = "ec_dup_disp_dup_id">
    46             <input type = "radio" name = "ec_dup_disp" id = "ec_dup_disp_dup_id" />
    47             {'ec_dup_display_dup'|@translate} ("{'ec_duplication'|@translate}")
    48           </label><br>
     38          </label>
    4939        </td>
    5040      </tr>
    5141    </table>
    52     <input class = "submit" type = "submit" name = "ec_duplic_conf_submit" value = "{'ec_dup_conf_submit_lbl'|@translate}" />
     42    <input class = "submit" type = "submit" name = "ec_duplic_conf_submit" value = "{'ec_dup_conf_sbmt_lbl'|@translate}" />
    5343  </fieldset>
    5444</form>
    5545
    56 {* <!-- Duplication settings by groups / user ids --> *}
     46{* <!-- Duplication settings by groups / types / user ids --> *}
    5747<form action = "" method = "post" name = "ec_duplic_set" id="categoryPermissions">
    5848
     
    6050
    6151  <fieldset>
    62     <legend>{'Permission granted'|@translate}</legend>
     52    <legend>{'ec_duplic_ok'|@translate}</legend>
    6353    <ul>
    6454      {foreach from=$group_granted_ids item=id}
     
    6656      {/foreach}
    6757    </ul>
    68     <input class = "submit" type = "submit" name = "deny_groups_submit" value = "{'Deny selected groups'|@translate}" />
     58    <input class = "submit" type = "submit" name = "deny_groups_submit" value = "{'ec_dup_grp_ok_sbmt_lbl'|@translate}" />
    6959  </fieldset>
    7060
    7161  <fieldset>
    72     <legend>{'Permission denied'|@translate}</legend>
     62    <legend>{'ec_duplic_nok'|@translate}</legend>
    7363    <ul>
    7464      {foreach from=$group_denied_ids item=id}
     
    7666      {/foreach}
    7767    </ul>
    78     <input class = "submit" type = "submit" name = "grant_groups_submit" value = "{'Grant selected groups'|@translate}" />
     68    <input class = "submit" type = "submit" name = "grant_groups_submit" value = "{'ec_dup_grp_nok_sbmt_lbl'|@translate}" />
     69  </fieldset>
     70
     71  <h4>{'ec_dup_types'|@translate}</h4>
     72
     73  <fieldset>
     74    <legend>{'ec_duplic_ok'|@translate}</legend>
     75    <ul>
     76      <li><label><input type = "checkbox" name = "ec_dup_types_generic_ok" value = "ec_dup_types_generic_ok_id" /> {'user_status_generic'|@translate}</label></li>
     77      <br />
     78      <li><label><input type = "checkbox" name = "ec_dup_types_contacts_ok" value = "ec_dup_types_contacts_ok_id" /> {'Level 1'|@translate}</label></li>
     79      <li><label><input type = "checkbox" name = "ec_dup_types_friends_ok" value = "ec_dup_types_friends_ok_id" /> {'Level 2'|@translate}</label></li>
     80      <li><label><input type = "checkbox" name = "ec_dup_types_family_ok" value = "ec_dup_types_family_ok_id" /> {'Level 4'|@translate}</label></li>
     81    </ul>
     82    <input class = "submit" type = "submit" name = "deny_users_submit" value = "{'ec_dup_typ_sbmt_lbl'|@translate}" />
    7983  </fieldset>
    8084
     
    8286
    8387  <fieldset>
    84     <legend>{'Permission granted'|@translate}</legend>
     88    <legend>{'ec_duplic_ok'|@translate}</legend>
    8589    <ul>
    8690      {foreach from=$user_granted_direct_ids item=id}
     
    8892      {/foreach}
    8993    </ul>
    90     <input class = "submit" type = "submit" name = "deny_users_submit" value = "{'Deny selected users'|@translate}" />
     94    <input class = "submit" type = "submit" name = "deny_users_submit" value = "{'ec_dup_usr_ok_sbmt_lbl'|@translate}" />
    9195  </fieldset>
    9296
    9397  <fieldset>
    94     <legend>{'Permission granted thanks to a group'|@translate}</legend>
     98    <legend>{'ec_duplic_ok_groups'|@translate}</legend>
    9599    {if isset($user_granted_indirects) }
    96100    <ul>
     
    103107
    104108  <fieldset>
    105     <legend>{'Permission denied'|@translate}</legend>
     109    <legend>{'ec_duplic_nok'|@translate}</legend>
    106110    <ul>
    107111      {foreach from=$user_denied_ids item=id}
     
    109113      {/foreach}
    110114    </ul>
    111     <input class = "submit" type = "submit" name = "grant_users_submit" value = "{'Grant selected users'|@translate}" />
     115    <input class = "submit" type = "submit" name = "grant_users_submit" value = "{'ec_dup_usr_nok_sbmt_lbl'|@translate}" />
    112116  </fieldset>
    113117
     
    123127  ec_JS_message['ec_gen_user_act_miss'] = "{'ec_gen_user_act_miss'|@translate|@escape:javascript}";
    124128  ec_JS_message['ec_act_cat_miss']      = "{'ec_act_cat_miss'|@translate|@escape:javascript}";
    125   ec_JS_message['ec_new_pwd_gen1']       = "{'ec_new_pwd_gen1'|@translate|@escape:javascript}";
     129  ec_JS_message['ec_new_pwd_gen']       = "{'ec_new_pwd_gen'|@translate|@escape:javascript}";
    126130  ec_JS_message['ec_up_code_lbl_home']  = "{'ec_up_code_lbl_home'|@translate}";
    127131  ec_init();
Note: See TracChangeset for help on using the changeset viewer.