index 54b5c67644a0df08132bb5b74ba0615f1a5f1ef0..114ab5ddd21fe3cbf8b58558f1fcbee4e1c429ee 100644 (file)
var $current= "";
var $info= array();
var $headlines = array();
var $current= "";
var $info= array();
var $headlines = array();
+ var $allowed_plugins = array();
function pluglist(&$config, &$ui)
{
function pluglist(&$config, &$ui)
{
/* No self acls. Check if we have any acls for the given ACL type
*/
/* No self acls. Check if we have any acls for the given ACL type
*/
- $deps = $this->ui->get_module_departments($acl_to_check);
+ $deps = $this->ui->get_module_departments($acl_to_check,TRUE);
if(count($deps)) return TRUE;
}
}
if(count($deps)) return TRUE;
}
}
function gen_menu()
{
function gen_menu()
{
+ /* Check if class_location.inc has changed, this is the case
+ if we have installed or removed plugins.
+ */
+ if(!session::is_set("class_location.inc:timestamp")){
+ $tmp = stat("../include/class_location.inc");
+ session::set("class_location.inc:timestamp",$tmp['mtime']);
+ }else{
+ $tmp = stat("../include/class_location.inc");
+ if($tmp['mtime'] != session::get("class_location.inc:timestamp")){
+ $this->menu = "";
+ }
+ }
+
if ($this->menu == ""){
$first= TRUE;
$cfg= $this->config->data['MENU'];
if ($this->menu == ""){
$first= TRUE;
$cfg= $this->config->data['MENU'];
if ($this->check_access($info['ACL'])){
if ($this->check_access($info['ACL'])){
+ $this->allowed_plugins[$index] = $index;
+
$entries= $entries."<p class=\"menuitem\" ".
"onClick='return question(\""._("You are currently editing a database entry. Do you want to dismiss the changes?")."\", \"$href\");'>";
if(session::get('js')){
$entries= $entries."<p class=\"menuitem\" ".
"onClick='return question(\""._("You are currently editing a database entry. Do you want to dismiss the changes?")."\", \"$href\");'>";
if(session::get('js')){
{
global $class_mapping;
{
global $class_mapping;
+ /* Check if class_location.inc has changed, this is the case
+ if we have installed or removed plugins.
+ */
+ if(!session::is_set("class_location.inc:timestamp")){
+ $tmp = stat("../include/class_location.inc");
+ session::set("class_location.inc:timestamp",$tmp['mtime']);
+ }else{
+ $tmp = stat("../include/class_location.inc");
+ if($tmp['mtime'] != session::get("class_location.inc:timestamp")){
+ $this->iconmenu = "";
+ }
+ }
+
if ($this->iconmenu == ""){
$cfg= $this->config->data['MENU'];
if ($this->iconmenu == ""){
$cfg= $this->config->data['MENU'];
return (0);
}
return (0);
}
+
+ /*! \brief This function checks if we are allowed to view the plugin with the given id
+ @param $plug_id Integer The ID of the plugin.
+ @return Boolean TRUE if we are allowed to view the plugin else FASLE
+ */
+ function plugin_access_allowed($plug_id)
+ {
+ return(isset($this->allowed_plugins[$plug_id]));
+ }
}
// vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
?>
}
// vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
?>