Reduced User#is_guest?, User#is_admin?, User#is_mod? calls
[punbbonrails.git] / app / views / layouts / admin.rhtml
blob41c9e2a6ad78d316925926c669e8e64a3407907a
1 <%
2 cu = current_user
3 is_admin = cu.is_admin?
4 content_for :header do
5 -%>
6 <link rel="stylesheet" type="text/css" href="/style/imports/base_admin.css" />
7 <%
8 end
9 controller_map = {
10   'category' => 'categories',
11   'forum_admin' => 'forums',
12   'group' => 'groups',
13   'censoring' => 'censoring',
14   'rank' => 'ranks',
15   'ban' => 'bans',
16   'report' => 'reports'
18 captions = {
19   'index' => 'Index',
20   'categories' => 'Categories',
21   'forums' => 'Forums',
22   'users' => 'Users',
23   'groups' => 'User groups',
24   'options' => 'Options',
25   'permissions' => 'Permissions',
26   'censoring' => 'Censoring',
27   'ranks' => 'Ranks',
28   'bans' => 'Bans',
29   'prune' => 'Prune',
30   'maintenance' => 'Maintenance',
31   'reports' => 'Reports'
33 if is_admin
34   items = [ 'index', 'categories', 'forums', 'users', 'groups', 'options', 'permissions', 'censoring', 'ranks', 'bans', 'prune', 'maintenance', 'reports']
35 else
36   if Settings.mod_ban_users == true
37     items = [ 'index', 'users', 'censoring', 'bans', 'reports']
38   else
39     items = [ 'index', 'users', 'censoring', 'reports']
40   end
41 end
42 inside_layout 'application' do
43   unless @no_menu == true
44 -%>
45 <div id="adminconsole" class="block2col">
46         <div id="adminmenu" class="blockmenu">
47                 <h2><span><%= is_admin ? 'Administrator' : 'Moderator' %> menu</span></h2>
48                 <div class="box">
49                         <div class="inbox">
50                                 <ul>
51 <% 
52     for i in items
53       if controller.controller_name == 'admin'
54         active = controller.action_name
55       else
56         active = controller_map[controller.controller_name]
57       end
58       if controller_map.values.include? i
59         p = {:controller => controller_map.invert[i]}
60       else
61         p = {:controller => 'admin', :action => i}
62       end
63       if active == i
64 -%>
65       <li class="isactive"><a href="<%= url_for p %>"><%= captions[i] %></a></li>
67       else
68 -%>
69       <li><a href="<%= url_for p %>"><%= captions[i] %></a></li>
71       end
72     end
73 -%>
74                                 </ul>
75                         </div>
76                 </div>
77 <!--
78                 <h2 class="block2"><span>Plugins</span></h2>
79                 <div class="box">
80                         <div class="inbox">
81                                 <ul>
82 <?php
84                 while (list(, $cur_plugin) = @each($plugins))
85                         echo "\t\t\t\t\t".'<li'.(($page == $cur_plugin[1]) ? ' class="isactive"' : '').'><a href="<%= url_for :action => 'loader' %>?plugin='.$cur_plugin[1].'">'.str_replace('_', ' ', $cur_plugin[0]).'</a></li>'."\n";
88                                 </ul>
89                         </div>
90                 </div>
91 -->
92         </div>
95         end
96   concat yield,binding
97 end
98 -%>