1
|
//: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);
|