mise a jour pour mtweb.0.9.0
[mw_pages] / app / out / default / tiny_mce / plugins / tinybrowser / folders.php
diff --git a/app/out/default/tiny_mce/plugins/tinybrowser/folders.php b/app/out/default/tiny_mce/plugins/tinybrowser/folders.php
new file mode 100644 (file)
index 0000000..b9f52a6
--- /dev/null
@@ -0,0 +1,273 @@
+<?php\r
+require_once('config_tinybrowser.php');\r
+// Set language\r
+if(isset($tinybrowser['language']) && file_exists('langs/'.$tinybrowser['language'].'.php'))\r
+       {\r
+       require_once('langs/'.$tinybrowser['language'].'.php'); \r
+       }\r
+else\r
+       {\r
+       require_once('langs/en.php'); // Falls back to English\r
+       }\r
+require_once('fns_tinybrowser.php');\r
+\r
+// Check session, if it exists\r
+if(session_id() != '')\r
+       {\r
+       if(!isset($_SESSION[$tinybrowser['sessioncheck']]))\r
+               {\r
+               echo TB_DENIED;\r
+               exit;\r
+               }\r
+       }\r
+       \r
+if(!$tinybrowser['allowfolders'])\r
+       {\r
+       echo TB_FODENIED;\r
+       exit;\r
+       }\r
+\r
+// Assign request / get / post variables\r
+$validtypes = array('image','media','file');\r
+$typenow = ((isset($_GET['type']) && in_array($_GET['type'],$validtypes)) ? $_GET['type'] : 'image');\r
+$foldernow = str_replace(array('../','..\\','./','.\\'),'',($tinybrowser['allowfolders'] && isset($_REQUEST['folder']) ? urldecode($_REQUEST['folder']) : ''));\r
+$dirpath = $tinybrowser['path'][$typenow];\r
+$passfolder = '&folder='.urlencode($foldernow);\r
+$passfeid = (isset($_GET['feid']) && $_GET['feid']!='' ? '&feid='.$_GET['feid'] : '');\r
+\r
+\r
+\r
+// Assign browsing options\r
+$actionnow = (isset($_POST['editaction']) ? $_POST['editaction'] : 'create' );\r
+\r
+// Initalise alert array\r
+$notify = array(\r
+       'type' => array(),\r
+       'message' => array()\r
+);\r
+$createqty = 0;\r
+$deleteqty = 0;\r
+$renameqty = 0;\r
+$errorqty = 0;\r
+       \r
+// Create any child folders with entered name\r
+if(isset($_POST['createfolder']))\r
+       {\r
+       foreach($_POST['createfolder'] as $parent => $newfolder)\r
+               {\r
+               if($newfolder != '')\r
+                       {\r
+                       $createthisfolder = $tinybrowser['docroot'].$dirpath.urldecode($_POST['actionfolder'][$parent]).clean_filename($newfolder);\r
+                       if (!file_exists($createthisfolder) && createfolder($createthisfolder,$tinybrowser['unixpermissions'])) $createqty++; else $errorqty++;\r
+                       if($typenow=='image')\r
+                          {\r
+                               createfolder($createthisfolder.'/_thumbs/',$tinybrowser['unixpermissions']);\r
+                          }\r
+                       }\r
+               }\r
+       }\r
+       \r
+// Delete any checked folders\r
+if(isset($_POST['deletefolder']))\r
+       {\r
+       foreach($_POST['deletefolder'] as $delthis => $val)\r
+               {\r
+               if($typenow=='image')\r
+                       {\r
+                       $delthisthumbdir = $tinybrowser['docroot'].$dirpath.urldecode($_POST['actionfolder'][$delthis]).'_thumbs/';\r
+                       if (is_dir($delthisthumbdir)) rmdir($delthisthumbdir);\r
+                       }\r
+               $delthisdir = $tinybrowser['docroot'].$dirpath.urldecode($_POST['actionfolder'][$delthis]);\r
+               if (is_dir($delthisdir) && rmdir($delthisdir)) $deleteqty++; else $errorqty++;\r
+               if($foldernow==urldecode($_POST['actionfolder'][$delthis]))\r
+         {\r
+         $foldernow = '';\r
+         $passfolder = '';\r
+         }\r
+               }\r
+\r
+       }\r
+       \r
+// Rename any folders with changed name\r
+if(isset($_POST['renamefolder']))\r
+       {\r
+       foreach($_POST['renamefolder'] as $namethis => $newname)\r
+               {\r
+      $urlparts = explode('/',rtrim(urldecode($_POST['actionfolder'][$namethis]),'/'));\r
+               if(array_pop($urlparts) != $newname)\r
+                       {\r
+                       $namethisfolderfrom = $tinybrowser['docroot'].$dirpath.urldecode($_POST['actionfolder'][$namethis]);\r
+         $renameurl = implode('/',$urlparts).'/'.clean_filename($newname).'/';\r
+                       $namethisfolderto = $tinybrowser['docroot'].$dirpath.$renameurl;\r
+                       if (is_dir($namethisfolderfrom) && rename($namethisfolderfrom,$namethisfolderto)) $renameqty++; else $errorqty++;\r
+                       if($foldernow==urldecode($_POST['actionfolder'][$namethis]))\r
+            {\r
+            $foldernow = ltrim($renameurl,'/');\r
+            $passfolder = '&folder='.urlencode(ltrim($renameurl,'/'));\r
+            }\r
+                       }\r
+               }\r
+       }\r
+\r
+// Assign directory structure to array\r
+$dirs=array();\r
+dirtree($dirs,$tinybrowser['filetype'][$typenow],$tinybrowser['docroot'],$tinybrowser['path'][$typenow]);\r
+\r
+// generate alert if folders deleted\r
+if($createqty>0)\r
+   {\r
+       $notify['type'][]='success';\r
+       $notify['message'][]=sprintf(TB_MSGCREATE, $createqty);\r
+       }\r
+// generate alert if folders deleted\r
+elseif($deleteqty>0)\r
+   {\r
+       $notify['type'][]='success';\r
+       $notify['message'][]=sprintf(TB_MSGDELETE, $deleteqty);\r
+       }\r
+// generate alert if folders renamed\r
+elseif($renameqty>0)\r
+   {\r
+       $notify['type'][]='success';\r
+       $notify['message'][]=sprintf(TB_MSGRENAME, $renameqty);\r
+       }\r
+       \r
+// generate alert if file errors encountered\r
+if($errorqty>0)\r
+   {\r
+       $notify['type'][]='failure';\r
+       $notify['message'][]=sprintf(TB_MSGEDITERR, $errorqty);\r
+       }\r
+       \r
+// count folders\r
+$num_of_folders = (isset($dirs) ? count($dirs) : 0);\r
+\r
+?>\r
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">\r
+<head>\r
+<title>TinyBrowser :: <?php echo TB_FOLDERS; ?></title>\r
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
+<meta http-equiv="Pragma" content="no-cache" />\r
+<?php\r
+if($passfeid == '' && $tinybrowser['integration']=='tinymce')\r
+       {\r
+       ?><link rel="stylesheet" type="text/css" media="all" href="<?php echo $tinybrowser['tinymcecss']; ?>" /><?php \r
+       }\r
+else\r
+       {\r
+       ?><link rel="stylesheet" type="text/css" media="all" href="css/stylefull_tinybrowser.css" /><?php \r
+       }\r
+?>\r
+<link rel="stylesheet" type="text/css" media="all" href="css/style_tinybrowser.css.php" />\r
+<script language="javascript" type="text/javascript" src="js/tinybrowser.js.php"></script>\r
+</head>\r
+<body onload="rowHighlight();">\r
+<?php\r
+if(count($notify['type'])>0) alert($notify);\r
+form_open('foldertab',false,'folders.php','?type='.$typenow.$passfeid);\r
+?>\r
+<div class="tabs">\r
+<ul>\r
+<li id="browse_tab"><span><a href="tinybrowser.php?type=<?php echo $typenow.$passfolder.$passfeid ; ?>"><?php echo TB_BROWSE; ?></a></span></li>\r
+<?php\r
+if($tinybrowser['allowupload']) \r
+       {\r
+       ?><li id="upload_tab"><span><a href="upload.php?type=<?php echo $typenow.$passfolder.$passfeid ; ?>"><?php echo TB_UPLOAD; ?></a></span></li>\r
+       <?php \r
+       }\r
+if($tinybrowser['allowfolders'])\r
+       {\r
+   ?><li id="edit_tab"><span><a href="edit.php?type=<?php echo $typenow.$passfolder.$passfeid ; ?>"><?php echo TB_EDIT; ?></a></span></li>\r
+   <?php\r
+   }\r
+?><li id="folders_tab" class="current"><span><a href="folders.php?type=<?php echo $typenow.$passfolder.$passfeid; ?>"><?php echo TB_FOLDERS; ?></a></span></li>\r
+</ul>\r
+</div>\r
+</form>\r
+<div class="panel_wrapper">\r
+<div id="general_panel" class="panel currentmod">\r
+<fieldset>\r
+<legend><?php echo TB_FOLDERS; ?></legend>\r
+<?php\r
+form_open('edit','custom','folders.php','?type='.$typenow.$passfolder.$passfeid);\r
+?>\r
+<div class="pushleft">\r
+<?php\r
+\r
+// Assign edit actions based on file type and permissions\r
+$select = array();\r
+if($tinybrowser['allowfolders']) $select[] = array('create',TB_CREATE);\r
+if($tinybrowser['allowdelete']) $select[] = array('delete',TB_DELETE);\r
+if($tinybrowser['allowedit']) $select[] = array('rename',TB_RENAME);\r
+\r
+form_select($select,'editaction',TB_ACTION,$actionnow,true);\r
+?></form></div><?php\r
+\r
+form_open('actionform','custom','folders.php','?type='.$typenow.$passfolder.$passfeid);\r
+\r
+if($actionnow=='move')\r
+   { ?><div class="pushleft"><?php\r
+   form_select($editdirs,'destination',TB_FOLDERDEST,urlencode($foldernow),false);\r
+   ?></div><?php\r
+   } \r
+\r
+switch($actionnow) \r
+       {\r
+       case 'delete':\r
+               $actionhead = TB_DELETE;\r
+               break;\r
+       case 'rename':\r
+               $actionhead = TB_RENAME;\r
+               break;\r
+       case 'create':\r
+               $actionhead = TB_CREATE;\r
+               break;\r
+       default:\r
+               // do nothing\r
+       }\r
+?><div class="tabularwrapper"><table class="browse"><tr>\r
+<th class="nohvr"><?php echo TB_FOLDERNAME; ?></th>\r
+<th class="nohvr"><?php echo TB_FILES; ?></th>\r
+<th class="nohvr"><?php echo TB_DATE; ?></th>\r
+<th class="nohvr"><?php echo $actionhead; ?></th></tr>\r
+<?php\r
+\r
+for($i=0;$i<$num_of_folders;$i++)\r
+       {\r
+       $disable = ($i == 0 ? true : false);\r
+       $alt = (IsOdd($i) ? 'r1' : 'r0');\r
+       echo '<tr class="'.$alt.'">';\r
+       echo '<td>'.$dirs[$i][2].'</td>';\r
+       echo '<td>'.$dirs[$i][4].'</td><td>'.date($tinybrowser['dateformat'],$dirs[$i][5]).'</td>'\r
+       .'<td>';\r
+       form_hidden_input('actionfolder['.$i.']',$dirs[$i][0]);\r
+       switch($actionnow) \r
+               {\r
+               case 'create':\r
+         echo '&rarr; ';\r
+                       form_text_input('createfolder['.$i.']',false,'',30,120);\r
+                       break;\r
+               case 'delete':\r
+         $disabledel = ($dirs[$i][4] > 0 ? ' DISABLED' : '');\r
+                       if(!$disable) echo '<input class="del" type="checkbox" name="deletefolder['.$i.']" value="1"'.$disabledel.' />';\r
+                       break;\r
+               case 'rename':\r
+                       if(!$disable) form_text_input('renamefolder['.$i.']',false,$dirs[$i][3],30,120);\r
+                       break;\r
+               default:\r
+                       // do nothing\r
+               }\r
+       echo "</td></tr>\n";\r
+       }\r
+\r
+echo "</table></div>\n".'<div class="pushright">';\r
+if($tinybrowser['allowdelete'] && $tinybrowser['allowedit'])\r
+       {\r
+       form_hidden_input('editaction',$actionnow);\r
+       form_submit_button('commit',$actionhead.' '.TB_FOLDERS,'edit');\r
+       }\r
+?>\r
+</div></fieldset></div></div>\r
+</body>\r
+</html>\r