diff --git a/plugins/personal/connectivity/class_webdavAccount.inc b/plugins/personal/connectivity/class_webdavAccount.inc
index 7ed382c7d2f50ff173ce9276d71ed0d47932d9d4..58acf40cb86588e377560856a93650a9526c5eeb 100644 (file)
/* attribute list for save action */
var $attributes= array();
var $objectclasses= array("gosaWebdavAccount");
+ var $ReadOnly = false;
function webdavAccount ($config, $dn= NULL)
{
$smarty->assign("tabbed", 1);
}
- $smarty->assign('webdavAccountACL', chkacl($this->acl, 'webdavAccount'));
+ if((!$this->ReadOnly) && (($this->is_account && $this->acl_is_removeable()) || (!$this->is_account && $this->acl_is_createable()))) {
+ $smarty->assign('webdavAccountACL', "");
+ }else{
+ $smarty->assign('webdavAccountACL', " disabled ");
+ }
$display.= $smarty->fetch (get_template_path('webdav.tpl', TRUE, dirname(__FILE__)));
return ($display);
if (isset($_POST['connectivityTab'])){
if (isset($_POST['webdav'])){
if (!$this->is_account && $_POST['webdav'] == "B"){
- $this->is_account= TRUE;
+ if($this->acl_is_createable()){
+ $this->is_account= TRUE;
+ }
}
} else {
- $this->is_account= FALSE;
+ if($this->acl_is_removeable()){
+ $this->is_account= FALSE;
+ }
}
}
}
}
- /* Return pluign informations for acl handling
+ /* Return plugin informations for acl handling
#FIXME This is only an enable/disable checkbox for this account, there is possibly a better solution available later */
function plInfo()
{
return (array(
- "plDescription" => _("Intranet account settings"),
- "plSelfModify" => TRUE,
- "plDepends" => array("objectClass" => "gosaAccount"),
- "gosaWebdavAccount" => "!!! FIXME "._("WebDAV account")));
+ "plShortName" => _("WebDAV"),
+ "plDescription" => _("WebDAV account"),
+ "plSelfModify" => TRUE,
+ "plDepends" => array("user"),
+ "plPriority" => 9, // Position in tabs
+ "plSection" => "personal", // This belongs to personal
+ "plCategory" => array("users"),
+ "plOptions" => array(),
+
+ "plProvidedAcls" => array()
+ ));
}
}