<?php
-
-require_once('include/security.php');
-require_once('include/bbcode.php');
-require_once('include/items.php');
-
-
-function filer_content(&$a) {
-
- if(! local_user()) {
+/**
+ * @file mod/filer.php
+ */
+use Friendica\App;
+use Friendica\Core\L10n;
+use Friendica\Core\Logger;
+use Friendica\Core\PConfig;
+use Friendica\Core\Renderer;
+use Friendica\Model\FileTag;
+use Friendica\Util\XML;
+
+require_once 'include/items.php';
+
+function filer_content(App $a)
+{
+ if (! local_user()) {
killme();
}
- $term = notags(trim($_GET['term']));
- $item_id = (($a->argc > 1) ? notags(trim($a->argv[1])) : 0);
+ $term = XML::unescape(trim(defaults($_GET, 'term', '')));
+ $item_id = (($a->argc > 1) ? intval($a->argv[1]) : 0);
+
+ Logger::log('filer: tag ' . $term . ' item ' . $item_id);
- logger('filer: tag ' . $term . ' item ' . $item_id);
+ if ($item_id && strlen($term)) {
+ // file item
+ FileTag::saveFile(local_user(), $item_id, $term);
+ } else {
+ // return filer dialog
+ $filetags = PConfig::get(local_user(), 'system', 'filetags');
+ $filetags = FileTag::fileToList($filetags, 'file');
+ $filetags = explode(",", $filetags);
- if($item_id && strlen($term))
- file_tag_save_file(local_user(),$item_id,$term);
+ $tpl = Renderer::getMarkupTemplate("filer_dialog.tpl");
+ $o = Renderer::replaceMacros($tpl, [
+ '$field' => ['term', L10n::t("Save to Folder:"), '', '', $filetags, L10n::t('- select -')],
+ '$submit' => L10n::t('Save'),
+ ]);
+ echo $o;
+ }
killme();
}