1 |
2029
|
darkviper
|
//:Puts Edit-Buttons on every page you have rights for. 1=modify page, 2=modify pagesettings, 4=modify sections, or add values to combine buttons.
|
2 |
|
|
//:Use: [[iEditThisPage?show=7]]. You can format the appearance using CSS-class 'div.iEditThisPage' in your basic-css file
|
3 |
|
|
// @author: Werner von der Decken
|
4 |
|
|
|
5 |
|
|
global $wb, $database, $HEADING;
|
6 |
|
|
$returnvalue = '';
|
7 |
|
|
if($wb->is_authenticated() )
|
8 |
|
|
{
|
9 |
|
|
$is_admin = false;
|
10 |
|
|
$page_id = PAGE_ID == 0 ? $wb->default_page_id : PAGE_ID;
|
11 |
|
|
$user_id = $wb->get_user_id();
|
12 |
|
|
$sql = 'SELECT `admin_users`, `admin_groups` FROM `'.TABLE_PREFIX.'pages` WHERE `page_id` = '.$page_id;
|
13 |
|
|
if(($rset = $database->query($sql)) != null)
|
14 |
|
|
{
|
15 |
|
|
if(($rec = $rset->fetchRow()) != null)
|
16 |
|
|
{
|
17 |
|
|
$is_admin = ($wb->ami_group_member($rec['admin_groups']) ||
|
18 |
|
|
($this->is_group_match($user_id, $rec['admin_users'])) );
|
19 |
|
|
}
|
20 |
|
|
}
|
21 |
|
|
if($is_admin)
|
22 |
|
|
{
|
23 |
|
|
$tpl = '<a href="'.ADMIN_URL.'/pages/%1$s.php?page_id='.$page_id.'" target="_blank" title="%2$s">';
|
24 |
|
|
$tpl .= '<img src="'.THEME_URL.'/images/%3$s_16.png" alt="%2$s" /></a>';
|
25 |
|
|
$show = ((!isset($show) || $show == '') ? 1 : (int)$show);
|
26 |
|
|
$show = ($show > 7 ? 7 : (int)$show);
|
27 |
|
|
$show = ($show < 2 ? 1 : (int)$show );
|
28 |
|
|
if($show & 1)
|
29 |
|
|
{
|
30 |
|
|
$returnvalue .= sprintf($tpl, 'modify', $HEADING['MODIFY_PAGE'], 'edit');
|
31 |
|
|
}
|
32 |
|
|
$sys_perm = $wb->get_session('SYSTEM_PERMISSIONS');
|
33 |
|
|
if(@is_array($sys_perm))
|
34 |
|
|
{
|
35 |
|
|
if(($show & 2) && (array_search('pages_settings', $sys_perm)!==false))
|
36 |
|
|
{
|
37 |
|
|
$returnvalue .= sprintf($tpl, 'settings', $HEADING['MODIFY_PAGE_SETTINGS'], 'modify');
|
38 |
|
|
}
|
39 |
|
|
if(($show & 4) && (array_search('pages_modify', $sys_perm)!==false))
|
40 |
|
|
{
|
41 |
|
|
$returnvalue .= sprintf($tpl, 'sections', $HEADING['MANAGE_SECTIONS'], 'sections');
|
42 |
|
|
}
|
43 |
|
|
}
|
44 |
|
|
if($returnvalue != '')
|
45 |
|
|
{
|
46 |
|
|
$returnvalue = '<div class="iEditThisPage">'.$returnvalue.'</div>';
|
47 |
|
|
}
|
48 |
|
|
}
|
49 |
|
|
}
|
50 |
|
|
return($returnvalue == '' ? true : $returnvalue);
|