Changeset 285


Ignore:
Timestamp:
Jun 24, 2013, 4:27:54 PM (8 years ago)
Author:
michael.van.vliet@…
Message:

Add Bootstrap js/css to show admin pages as tabs

Location:
trunk/modules/sysadmin/src
Files:
8 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/sysadmin/src/SysAdmin.php

    r283 r285  
    5353    const POST_GROUP = 'group';
    5454    const POST_MODULE = 'module';
    55        
     55
    5656        private $LoginService;
    5757
     
    132132        /**
    133133         * Display the main account management page.
    134          * @param string $message an optional message to display. 
     134         * @param string $message an optional message to display.
    135135         */
    136136        private function display_main($message = null) {
     
    152152                $this->template->assign('superuser', $superuser);
    153153                $this->template->assign('username', $current_user->get_name());
    154         $this->template->assign('acls', $this->LoginService->get_group_acls());
     154                        $this->template->assign('acls', $this->LoginService->get_group_acls());
    155155                $this->template->assign('groups', $groups);
    156         $this->template->assign('modules', $this->LoginService->get_modules());
     156                $this->template->assign('modules', $this->LoginService->get_modules());
     157
     158                // record which tab is active!
     159                $this->template->assign('active_tab', $_POST['active_tab'] ? $_POST['active_tab'] : 'edit-user');
     160                $this->template->assign('fgweb_home', str_replace('sysadmin','',$_SERVER['HTTP_REFERER']));
     161
    157162                // Add display the page
    158163                $toolpage = realpath(dirname(__FILE__) . '/templates/main.tpl');
     164
    159165                $this->render($toolpage);
    160166        }
    161        
     167
    162168        /**
    163169         * Display the page for updating a user.
     
    232238
    233239                if (!isset($np1) || !isset($np2) || !isset($target_user) || !isset($current_user)) {
    234                         throw new FGWebInvalidInvocationException('Invalid request.'); 
    235                 }
    236                
     240                        throw new FGWebInvalidInvocationException('Invalid request.');
     241                }
     242
    237243                $superuser = $this->LoginService->is_superuser($current_user);
    238244                if ($superuser === false) {
     
    259265                return $success;
    260266        }
    261        
     267
    262268        /**
    263269         * Update the groups for the user specified in the POST.
     
    271277                $target_user = $this->get_user_from_post(self::POST_USERNAME);
    272278                $current_user = $this->LoginService->get_loggedin_user();
    273                
     279
    274280                if (!isset($groupnames) || !isset($target_user) || !isset($current_user)) {
    275281                        throw new FGWebInvalidInvocationException('Invalid data in request to update groups.');
    276282                }
    277                
     283
    278284                $superuser = $this->LoginService->is_superuser($current_user);
    279285                if ($superuser === false) {
     
    290296                return $success;
    291297        }
    292        
     298
    293299        /**
    294300         * Update the roles for the user specified in the POST.
     
    302308                $target_user = $this->get_user_from_post(self::POST_USERNAME);
    303309                $current_user = $this->LoginService->get_loggedin_user();
    304                
     310
    305311                if (!isset($target_user) || !isset($current_user)) {
    306312                        throw new FGWebInvalidInvocationException('Invalid data in request to update roles.');
    307313                }
    308                
     314
    309315                $superuser = $this->LoginService->is_superuser($current_user);
    310316                if ($superuser === false) {
     
    325331                return $success;
    326332        }
    327        
     333
    328334        private function update_group_roles() {
    329335                $success = false;
     
    331337                $target_group = $this->get_group_from_post(self::POST_GROUPNAME);
    332338                $current_user = $this->LoginService->get_loggedin_user();
    333                                
     339
    334340                if (!isset($target_group) || !isset($current_user)) {
    335341                        throw new FGWebInvalidInvocationException('Invalid data in request to update group roles.');
    336342                }
    337                
     343
    338344                $superuser = $this->LoginService->is_superuser($current_user);
    339345                if ($superuser === false) {
     
    352358                        $this->LOG->notice('Failed to update the group roles for '.$target_group->get_name());
    353359                }
    354                 return $success;       
    355         }
    356        
     360                return $success;
     361        }
     362
    357363        /**
    358364         * Delete the user specified in the POST.
     
    369375                        throw new FGWebInvalidInvocationException('Invalid data in request to delete user');
    370376                }
    371                
     377
    372378                $superuser = $this->LoginService->is_superuser($current_user);
    373379                if ($superuser === false) {
     
    375381                        throw new FGWebAccessViolationException('Non-superuser attempt to delete user.');
    376382                }
    377                
     383
    378384                // Comparision by value (See http://www.php.net/manual/en/language.oop5.object-comparison.php why this works)
    379385                if ($current_user == $target_user) {
     
    381387                        throw new FGWebInvalidInvocationException('You cannot delete yourself.');
    382388                }
    383                
     389
    384390                $success = $this->LoginService->delete_user($target_user);
    385391                if ($success === false) {
     
    388394                return $success;
    389395        }
    390        
     396
    391397        /**
    392398         * Delete the group given in the POST
     
    403409                        throw new FGWebInvalidInvocationException('Invalid data in request to delete group.');
    404410                }
    405                
     411
    406412                $superuser = $this->LoginService->is_superuser($current_user);
    407413                if ($superuser === false) {
     
    410416                }
    411417
    412                 if ($this->LoginService->has_members($target_group) === true) {         
     418                if ($this->LoginService->has_members($target_group) === true) {
    413419                        $this->LOG->info('This group can not be deleted.');
    414420                } else {
     
    432438                $rolenames = $this->get_post_var(self::POST_ROLES);
    433439                $current_user = $this->LoginService->get_loggedin_user();
    434                
     440
    435441                if (!isset($groupname) || !isset($current_user)) {
    436442                        $this->LOG->notice('Invalid data in request to add group.');
    437443                        throw new FGWebInvalidInvocationException('Invalid data in request to add group.');
    438444                }
    439                
     445
    440446                $superuser = $this->LoginService->is_superuser($current_user);
    441447                if ($superuser === false) {
     
    460466                        $this->LOG->notice('Failed to create the group');
    461467                }
    462                 return $success;       
    463         }
    464        
     468                return $success;
     469        }
     470
    465471
    466472        /**
     
    478484                $np2 = $this->get_post_var(self::POST_NEW_PASSWORD2);
    479485                $current_user = $this->LoginService->get_loggedin_user();
    480                
     486
    481487                if (!isset($username) || !isset($np1) || !isset($np2) || !isset($current_user)) {
    482488                        $this->LOG->notice('Invalid data in request to add user.');
    483489                        throw new FGWebInvalidInvocationException('Invalid data in request to add user.');
    484490                }
    485                
     491
    486492                $superuser = $this->LoginService->is_superuser($current_user);
    487493                if ($superuser === false) {
     
    510516                        $this->LOG->notice('Failed to create the user');
    511517                }
    512                 return $success;       
    513         }
    514        
     518                return $success;
     519        }
     520
    515521        /**
    516522         * Helper to create an array with Group objects for the given groupnames.
     
    532538                return $groups;
    533539        }
    534        
     540
    535541        /**
    536542         * Helper to create an array with Role objects for the given rolenames
     
    550556                        }
    551557                }
    552                 return $roles; 
    553         }
    554        
    555         /**
    556          * Helper to create an array with the all groups defined in the system and a boolean denoting if the user is member of the group 
     558                return $roles;
     559        }
     560
     561        /**
     562         * Helper to create an array with the all groups defined in the system and a boolean denoting if the user is member of the group
    557563         * @param User $user the user
    558564         * @return array an array of array(string, boolean) where the string is the name of a group and the boolean denotes
     
    568574                return $select;
    569575        }
    570        
     576
    571577        /**
    572578         * Helper to create an array with the all roles defined in the system and a boolean denoting if the user has the role. This will
  • trunk/modules/sysadmin/src/templates/footer.tpl

    r284 r285  
    1             <aside>
    2                 <h3>Admin</h3>
    3                 <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam sodales urna non odio egestas tempor. Nunc vel vehicula ante. Etiam bibendum iaculis libero, eget molestie nisl pharetra in. In semper consequat est, eu porta velit mollis nec.</p>
    4             </aside>
    51
    62            </div> <!-- #main -->
     
    128            </footer>
    139        </div>
    14 
    15         {literal}
    16             <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    17             <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.9.1.min.js"><\/script>')</script>
    18 
    19             <script src="js/main.js"></script>
    20 
    21             <script>
    22                 var _gaq=[['_setAccount','UA-XXXXX-X'],['_trackPageview']];
    23                 (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
    24                 g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
    25                 s.parentNode.insertBefore(g,s)}(document,'script'));
    26             </script>
    27         {/literal}
    2810    </body>
    2911</html>
  • trunk/modules/sysadmin/src/templates/group.tpl

    r284 r285  
    1111            <p><input name='roles[]' type='checkbox' {if $role[1] === true}checked{/if} value='{$role[0]}'>{$role[0]}</p>
    1212{/foreach}
    13         <p><input type='submit' value='Update' name='upd_grp_roles' class='button'></p>
     13            <p>
     14                <input type='hidden' name='active_tab' value='edit-group'>
     15                <input type='submit' value='Update' name='upd_grp_roles' class='button'>
     16            </p>
    1417        </form>
    1518</div>
    1619{/if}
    1720<div style='float: left; clear: both;'>
    18 <form method='post'><input type='submit' value='Back' name='main' class='button'></form>
     21<form method='post'><input type='hidden' name='active_tab' value='edit-group'><input type='submit' value='Back' name='main' class='button'></form>
    1922</div>
    2023{include file="templates/footer.tpl"}
  • trunk/modules/sysadmin/src/templates/header.tpl

    r284 r285  
    1313        <link rel="stylesheet" href="css/normalize.min.css">
    1414        <link rel="stylesheet" href="css/main.css">
     15        <link rel="stylesheet" href="css/bootstrap.min.css">
    1516
    1617        <style>
     
    2021        </style>
    2122
     23        <script src="js/vendor/jquery-1.9.1.min.js"></script>
    2224        <script src="js/vendor/modernizr-2.6.2-respond-1.1.0.min.js"></script>
     25        <script src="js/bootstrap.min.js"></script>
    2326    </head>
    2427    <body>
     
    2932        <div class="header-container">
    3033            <header class="wrapper clearfix">
    31                 <h1 class="title">FG-Web Admin</h1>
     34                <a href="{$fgweb_home}"><h1 class="title">FG-Web Admin</h1></a>
    3235                <nav>
    3336                    <ul>
    34                         <li><a href="#">nav ul li a</a></li>
    35                         <li><a href="#">nav ul li a</a></li>
    36                         <li><a href="#">nav ul li a</a></li>
     37
     38                                <li><a href="{$fgweb_home}"><i class="icon-home icon-white"></i> home</a></li>
     39                        <!--
     40                                <li><a href="#">nav ul li a</a></li>
     41                                <li><a href="#">nav ul li a</a></li>
     42                        -->
    3743                    </ul>
    3844                </nav>
  • trunk/modules/sysadmin/src/templates/main.tpl

    r284 r285  
    22{* Users *}
    33{include file="templates/header.tpl" title="Sysadmin"}
    4 <article>
    54    <header>
    65        <h1>Admin</h1>
    7         <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam sodales urna non odio egestas tempor. Nunc vel vehicula ante. Etiam bibendum iaculis libero, eget molestie nisl pharetra in. In semper consequat est, eu porta velit mollis nec.</p>
    86    </header>
    9         <h2>Users</h2>
     7
     8        <ul id="myTab" class="nav nav-tabs">
     9                {if $superuser == true}
     10                        <li {if $active_tab == 'add-user'} class="active"{/if}><a href="#add-user" data-toggle="tab">Add a user</a></li>
     11                        <li {if $active_tab == 'edit-user'} class="active"{/if}><a href="#edit-user" data-toggle="tab">Edit a user</a></li>
     12                        <li {if $active_tab == 'add-group'} class="active"{/if}><a href="#add-group" data-toggle="tab">Add a group</a></li>
     13                        <li {if $active_tab == 'edit-group'} class="active"{/if}><a href="#edit-group" data-toggle="tab">Edit a group</a></li>
     14                        <li {if $active_tab == 'edit-acl'} class="active"{/if}><a href="#edit-acl" data-toggle="tab">Edit ACL</a></li>
     15                {else}
     16                        <li {if $active_tab == 'edit-user'} class="active"{/if}><a href="#edit-user" data-toggle="tab">Update your account</a></li>
     17                {/if}
     18            </ul>
     19            <div id="myTabContent" class="tab-content">
     20
     21                {if $superuser == true}
     22                        {* Add users *}
     23                                <div class="tab-pane fade in {if $active_tab == 'add-user'} active{/if}" id="add-user">
     24                                <div id='div_add_user'>
     25                                        <form method='post'>
     26                                                <input type='hidden' name='action' value='add_user'>
     27                                                <table>
     28                                                        <tr><th>Username</th><td colspan='2'><input name='username' type='text' length='16'></td></tr>
     29                                                        <tr><th>Password</th><td colspan='2'><input name='np1' type='password'></td></tr>
     30                                                        <tr><th>Password<br><small>(verification)</small></th><td colspan='2'><input name='np2' type='password'></td></tr>
     31                                                        <tr><th></th><th>Groups</th><th>Roles</th></tr>
     32                                                        <tr>
     33                                                                <td></td>
     34                                                                <td>
     35                                                                        <select multiple size='5' name='groups[]'>
     36                                                                                {foreach from=$grouplist key=k item=group}
     37                                                                                        <option value='{$group['group']->get_name()}'>{$group['group']->get_name()}</option>
     38                                                                                {/foreach}
     39                                                                        </select>
     40                                                                </td>
     41                                                                <td>
     42                                                                        <select multiple size='5' name='roles[]'>
     43                                                                                {foreach from=$roles item=role}
     44                                                                                        <option value='{$role->get_name()}'>{$role->get_name()}</option>
     45                                                                                {/foreach}
     46                                                                        </select>
     47                                                                </td>
     48                                                        </tr>
     49                                                        <tr>
     50                                                                <th colspan='3'>
     51                                                                        <input type='hidden' name='active_tab' value='add-edit'>
     52                                                                        <input type='submit' value='Add' name='add_user' class='button'>
     53                                                                </th>
     54                                                        </tr>
     55                                                </table>
     56                                        </form>
     57                                </div>
     58                        </div>
     59                {/if}
     60
     61                <div class="tab-pane fade in {if $active_tab == 'edit-user'} active{/if}" id="edit-user">
     62                        <table>
     63                                <thead>
     64                                        <tr><th>Username</th><th>Groups</th><th>Roles</th><th>Actions</th></tr>
     65                                </thead>
     66                                <tbody>
     67                                        {foreach from=$users key=u item=user}
     68                                                {* Display other users only if the current user has superuser privileges *}
     69                                                {if $superuser == true || $user->get_name() == $username}
     70                                                        <tr>
     71                                                                <td>{$user->get_name()}</td>
     72                                                                <td>
     73                                                                        {foreach from=$user->get_groups() key=g item=group name=ugroups}
     74                                                                                {$group->get_name()}{if $smarty.foreach.ugroups.last === false}<br>{/if}
     75                                                                        {/foreach}
     76                                                                </td>
     77                                                                <td>
     78                                                                        {foreach from=$user->get_roles() key=r item=role name=uroles}
     79                                                                                {$role->get_name()}{if $smarty.foreach.uroles.last === false}<br>{/if}
     80                                                                        {/foreach}
     81                                                                </td>
     82                                                                <td>
     83                                                                        <div style='float: left;'>
     84                                                                                <form method="post">
     85                                                                                        <input type="hidden" name="action" value="user">
     86                                                                                        <input type='hidden' name='active_tab' value='edit-user'>
     87                                                                                        <input type="hidden" name="username" value="{$user->get_name()}">
     88                                                                                        <input type="submit" value="Edit" class='button'>
     89                                                                                </form>
     90                                                                        </div>
     91                                                                        {* Only superusers can delete users, but not themselves *}
     92                                                                        {if $superuser == true && $user->get_name() != $username}
     93                                                                                <div style='float: left;'>
     94                                                                                        <form method='post'>
     95                                                                                                <input type='hidden' name='action' value='del_user'>
     96                                                                                                <input type='hidden' name='username' value='{$user->get_name()}'>
     97                                                                                                <input type='hidden' name='active_tab' value='edit-user'>
     98                                                                                                <input type='submit' name='del_user' value='Delete' class='button'>
     99                                                                                        </form>
     100                                                                                </div>
     101                                                                        {/if}
     102                                                                </td>
     103                                                        </tr>
     104                                                {/if}
     105                                        {/foreach}
     106                                </tbody>
     107                        </table>
     108                </div>
    10109
    11110        {* Only superusers will see the blocks to add users or groups and the list of groups. *}
    12111        {if $superuser == true}
    13 
    14                     <section>
    15 
    16                         {* Add users *}
    17                         <h3>Add a user</h3>
    18                         <div id='div_add_user'>
     112                <div class="tab-pane fade in {if $active_tab == 'add-group'} active{/if}" id="add-group">
     113                        {* display the add group *}
     114                        <div id='div_add_group'>
    19115                                <form method='post'>
    20                                         <input type='hidden' name='action' value='add_user'>
     116                                        <input type='hidden' name='action' value='add_group'>
    21117                                        <table>
    22                                                 <tr><th>Username</th><td colspan='2'><input name='username' type='text' length='16'></td></tr>
    23                                                 <tr><th>Password</th><td colspan='2'><input name='np1' type='password'></td></tr>
    24                                                 <tr><th>Password<br><small>(verification)</small></th><td colspan='2'><input name='np2' type='password'></td></tr>
    25                                                 <tr><th></th><th>Groups</th><th>Roles</th></tr>
     118                                                <tr><th>Groupname</th><td><input name='groupname' type='text' length='16'></td></tr>
    26119                                                <tr>
    27                                                         <td></td>
    28                                                         <td>
    29                                                                 <select multiple size='5' name='groups[]'>
    30                                                                         {foreach from=$grouplist key=k item=group}
    31                                                                                 <option value='{$group['group']->get_name()}'>{$group['group']->get_name()}</option>
    32                                                                         {/foreach}
    33                                                                 </select>
    34                                                         </td>
     120                                                        <th>Roles</th>
    35121                                                        <td>
    36122                                                                <select multiple size='5' name='roles[]'>
     
    42128                                                </tr>
    43129                                                <tr>
    44                                                         <th colspan='3'><input type='submit' value='Add' name='add_user' class='button'></th>
     130                                                        <th colspan='2'>
     131                                                                <input type='hidden' name='active_tab' value='add-group'>
     132                                                                <input type='submit' value='Add' name='add_group' class='button'>
     133                                                        </th>
    45134                                                </tr>
    46135                                        </table>
    47136                                </form>
    48137                        </div>
    49                 </section>
    50                 <hr>
    51         {/if}
    52 
    53         <h3>Edit a user</h3>
    54         <table>
    55                 <thead>
    56                         <tr><th>Username</th><th>Groups</th><th>Roles</th><th>Actions</th></tr>
    57                 </thead>
    58                 <tbody>
    59                         {foreach from=$users key=u item=user}
    60                                 {* Display other users only if the current user has superuser privileges *}
    61                                 {if $superuser == true || $user->get_name() == $username}
    62                                         <tr>
    63                                                 <td>{$user->get_name()}</td>
    64                                                 <td>
    65                                                         {foreach from=$user->get_groups() key=g item=group name=ugroups}
    66                                                                 {$group->get_name()}{if $smarty.foreach.ugroups.last === false}<br>{/if}
    67                                                         {/foreach}
    68                                                 </td>
    69                                                 <td>
    70                                                         {foreach from=$user->get_roles() key=r item=role name=uroles}
    71                                                                 {$role->get_name()}{if $smarty.foreach.uroles.last === false}<br>{/if}
    72                                                         {/foreach}
    73                                                 </td>
    74                                                 <td>
    75                                                         <div style='float: left;'>
    76                                                                 <form method="post">
    77                                                                         <input type="hidden" name="action" value="user">
    78                                                                         <input type="hidden" name="username" value="{$user->get_name()}">
    79                                                                         <input type="submit" value="Edit" class='button'>
    80                                                                 </form>
    81                                                         </div>
    82                                                         {* Only superusers can delete users, but not themselves *}
    83                                                         {if $superuser == true && $user->get_name() != $username}
    84                                                                 <div style='float: left;'>
    85                                                                         <form method='post'>
    86                                                                                 <input type='hidden' name='action' value='del_user'>
    87                                                                                 <input type='hidden' name='username' value='{$user->get_name()}'>
    88                                                                                 <input type='submit' name='del_user' value='Delete' class='button'>
    89                                                                         </form>
    90                                                                 </div>
    91                                                         {/if}
    92                                                 </td>
    93                                         </tr>
    94                                 {/if}
    95                         {/foreach}
    96                 </tbody>
    97         </table>
    98         </section>
    99         <hr>
    100 
    101         {* Only superusers will see the blocks to add users or groups and the list of groups. *}
    102         {if $superuser == true}
    103 
    104                 <h2>Groups</h2>
    105                     <section>
     138                </div>
     139
     140                <div class="tab-pane fade in {if $active_tab == 'edit-group'} active{/if}" id="edit-group">
    106141                        {* Groups *}
    107142                        <table>
     
    122157                                                                        <input type='hidden' name='groupname' value='{$group['group']->get_name()}'>
    123158                                                                        <input type='hidden' name='action' value='group'>
     159                                                                        <input type='hidden' name='active_tab' value='edit-group'>
    124160                                                                        <input type='submit' name='group' value='Edit' class='button'>
    125161                                                                </form>
     
    128164                                                                                <input type='hidden' name='groupname' value='{$group['group']->get_name()}'>
    129165                                                                                <input type='hidden' name='action' value='del_group'>
    130                                                                                 <input type='submit' name='del_group' value='Delete' class='button'>
     166                                                                                        <input type='hidden' name='active_tab' value='edit-group'>
     167                                                                                        <input type='submit' name='del_group' value='Delete' class='button'>
    131168                                                                        </form>
    132169                                                                        {/if}
     
    136173                                </tbody>
    137174                        </table>
    138 
    139                         {* display the add group *}
    140                         <div id='div_add_group'>
    141                                 <form method='post'>
    142                                         <input type='hidden' name='action' value='add_group'>
    143                                         <table>
    144                                                 <tr><th>Groupname</th><td><input name='groupname' type='text' length='16'></td></tr>
    145                                                 <tr>
    146                                                         <th>Roles</th>
    147                                                         <td>
    148                                                                 <select multiple size='5' name='roles[]'>
    149                                                                         {foreach from=$roles item=role}
    150                                                                                 <option value='{$role->get_name()}'>{$role->get_name()}</option>
    151                                                                         {/foreach}
    152                                                                 </select>
    153                                                         </td>
    154                                                 </tr>
    155                                                 <tr><th colspan='2'><input type='submit' value='Add' name='add_group' class='button'></th></tr>
    156                                         </table>
    157                                 </form>
     175                </div>
     176
     177                <div class="tab-pane fade in {if $active_tab == 'edit-acl'} active{/if}" id="edit-acl">
     178                        <table>
     179                        <thead>
     180                                <tr><th>Module</th><th>Group</th><th>Actions</th></tr>
     181                        </thead>
     182                        <tbody>
     183                            {foreach from=$acls item=acl}
     184                            <tr>
     185                                <td>{$acl['module']->get_name()}
     186                                </td>
     187                                <td>{$acl['group']->get_name()}
     188                                </td>
     189                                <td><form method="post">
     190                                        <input type='hidden' name='module' value='{$acl['module']->get_name()}'>
     191                                        <input type='hidden' name='group' value='{$acl['group']->get_name()}'>
     192                                        <input type='hidden' name='action' value='delete_group_acl'>
     193                                        <input type='hidden' name='active_tab' value='edit-acl'>
     194                                        <input type='submit' value='Delete'>
     195                                    </form></td>
     196                            </tr>
     197                            {/foreach}
     198                        </tbody>
     199                        </table>
     200                        <div id='div_add_acl'>
     201                            <form method="post">
     202                                <input type='hidden' name='action' value='add_group_acl'>
     203                                <table>
     204                                    <tr><th>Module</th><th>Group</th><th></th></tr>
     205                                    <tr>
     206                                        <td>
     207                                            <select name='module'>
     208                                                {foreach from=$modules item=module}
     209                                                <option value='{$module->get_name()}'>{$module->get_name()}</option>
     210                                                {/foreach}
     211                                            </select>
     212                                       </td>
     213                                        <td>
     214                                            <select name='group'>
     215                                                {foreach from=$groups item=group}
     216                                                <option value='{$group->get_name()}'>{$group->get_name()}</option>
     217                                                {/foreach}
     218                                            </select>
     219                                       </td>
     220                                       <td>
     221                                                <input type='hidden' name='active_tab' value='edit-acl'>
     222                                        <input type='submit' value='Add'>
     223                                       </td>
     224                                    </tr>
     225                                 </table>
     226                            </form>
    158227                        </div>
    159                 </section>
    160                 <hr>
    161         {/if}
    162 
    163         <h2>ACL</h2>
    164         <section>
    165                 <table>
    166                     {foreach from=$acls item=acl}
    167                     <tr>
    168                         <td>{$acl['module']->get_name()}
    169                         </td>
    170                         <td>{$acl['group']->get_name()}
    171                         </td>
    172                         <td><form method="post">
    173                                 <input type='hidden' name='module' value='{$acl['module']->get_name()}'>
    174                                 <input type='hidden' name='group' value='{$acl['group']->get_name()}'>
    175                                 <input type='hidden' name='action' value='delete_group_acl'>
    176                                 <input type='submit' value='Delete'>
    177                             </form></td>
    178                     </tr>
    179                     {/foreach}
    180                 </table>
    181                 <div id='div_add_acl'>
    182                     <form method="post">
    183                         <input type='hidden' name='action' value='add_group_acl'>
    184                         <table>
    185                             <tr><th>Module</th><th>Group</th><th></th></tr>
    186                             <tr>
    187                                 <td>
    188                                     <select name='module'>
    189                                         {foreach from=$modules item=module}
    190                                         <option value='{$module->get_name()}'>{$module->get_name()}</option>
    191                                         {/foreach}
    192                                     </select>
    193                                </td>
    194                                 <td>
    195                                     <select name='group'>
    196                                         {foreach from=$groups item=group}
    197                                         <option value='{$group->get_name()}'>{$group->get_name()}</option>
    198                                         {/foreach}
    199                                     </select>
    200                                </td>
    201                                <td><input type='submit' value='Add'</td>
    202                             </tr>
    203                          </table>
    204                     </form>
    205                 </div>
    206         </section>
    207 </article>
     228                </div>
     229                {/if}
     230        </div>
    208231
    209232
  • trunk/modules/sysadmin/src/templates/user.tpl

    r284 r285  
    1212                <tr><td>New password:</td><td><input type="password" name='np1'></td></tr>
    1313                <tr><td>Verify new password:</td><td><input type="password" name='np2'></td></tr>
    14                 <tr><td colspan='2'><input type='submit' class='button' value='Change password'></td></tr>
     14                <tr><td colspan='2'>
     15                        <input type='hidden' name='active_tab' value='edit-user'>
     16                        <input type='submit' class='button' value='Change password'>
     17                </td>
     18        </tr>
    1519        </table>
    1620</form>
     
    1923<div style='float: left; clear: both;'>
    2024<form method='post'>
     25        <input type='hidden' name='active_tab' value='edit-group'>
    2126        <input type='hidden' name='action' value='upd_groups'>
    2227        <input type="hidden" name="username" value="{$user->get_name()}">
     
    3338<form method='post'>
    3439        <input type='hidden' name='action' value='upd_roles'>
     40        <input type='hidden' name='active_tab' value='edit-group'>
    3541        <input type="hidden" name="username" value="{$user->get_name()}">
    3642{foreach from=$roles item=role}
Note: See TracChangeset for help on using the changeset viewer.