11 define(
"TITLE_FOLDER_PROPERTIES", _(
"Edit Folder Properties"));
21 $this->Name =
"folder_properties";
22 $this->Title = TITLE_FOLDER_PROPERTIES;
23 $this->MenuList =
"Organize::Folders::Edit Properties";
24 $this->Dependency = array();
26 parent::__construct();
27 $this->
dbManager = $GLOBALS[
'container']->get(
'db.manager');
36 function Edit($FolderId, $NewName, $NewDesc)
38 $sql =
'SELECT * FROM folder where folder_pk = $1;';
39 $Row = $this->
dbManager->getSingleRow($sql,array($FolderId),__METHOD__.
"Get");
41 if ($Row[
'folder_pk'] != $FolderId) {
44 $NewName =
trim($NewName);
45 if (! empty($FolderId)) {
47 if (empty($NewName)) {
48 $NewName = $Row[
'folder_name'];
51 if (empty($NewDesc)) {
52 $NewDesc = $Row[
'folder_desc'];
58 $folderDao = $GLOBALS[
'container']->get(
'dao.folder');
59 $parentId = $folderDao->getFolderParentId($FolderId);
60 if (! empty($parentId)) {
61 $folderWithSameNameUnderParent = $folderDao->getFolderId($NewName, $parentId);
62 if (! empty($folderWithSameNameUnderParent) &&
63 $folderWithSameNameUnderParent != $FolderId) {
68 $sql =
'UPDATE folder SET folder_name = $1, folder_desc = $2 WHERE folder_pk = $3;';
69 $this->
dbManager->getSingleRow($sql,array($NewName, $NewDesc, $FolderId),__METHOD__.
"Set");
80 if (empty($FolderSelectId)) {
86 if (! empty($FolderId)) {
87 $FolderSelectId = $FolderId;
88 $rc = $this->
Edit($FolderId, $NewName, $NewDesc);
91 $text = _(
"Folder Properties changed");
92 $this->vars[
"message"] = $text;
93 }
else if ($rc == 4) {
96 $this->vars[
"message"] =
"$text " . htmlentities(
trim($NewName)) .
" $text1";
100 $sql =
'SELECT * FROM folder WHERE folder_pk = $1;';
101 $Folder = $this->
dbManager->getSingleRow($sql,array($FolderSelectId),__METHOD__.
"getFolderRow");
104 $formVars[
"onchangeURI"] =
Traceback_uri() .
"?mod=" . $this->Name .
"&selectfolderid=";
105 $formVars[
"folderListOption"] =
FolderListOption(-1, 0, 1, $FolderSelectId);
106 $formVars[
"folder_name"] = $Folder[
'folder_name'];
107 $formVars[
"folder_desc"] = $Folder[
'folder_desc'];
108 return $this->
renderString(
"admin-folder-edit-form.html.twig",$formVars);
This is the Plugin class. All plugins should:
renderString($templateName, $vars=null)
Output()
Generate the text for this plugin.
Edit($FolderId, $NewName, $NewDesc)
Given a folder's ID and a name, alter the folder properties. Includes idiot checking since the input ...
__construct()
base constructor. Most plugins will just use this
FolderListOption($ParentFolder, $Depth, $IncludeTop=1, $SelectId=-1, $linkParent=false, $OldParent=0)
Create the folder tree, using OPTION tags.
FolderGetTop()
DEPRECATED! Find the top-of-tree folder_pk for the current user.
Traceback_uri()
Get the URI without query to this location.
GetParm($parameterName, $parameterType)
This function will retrieve the variables and check data types.
char * trim(char *ptext)
Trimming whitespace.
#define PLUGIN_DB_WRITE
Plugin requires write permission on DB.
fo_dbManager * dbManager
fo_dbManager object