public function add() { $filesystem = new Filesystem(); if ($this->request->request->has('currentFolder')) { $node = Node::getByID($this->request->request->get('currentFolder')); if (is_object($node) && $node instanceof FileFolder) { $folder = $node; } } if (!isset($folder)) { $folder = $filesystem->getRootFolder(); } $permissions = new \Permissions($folder); $error = $this->app->make('error'); $response = new EditResponse(); $response->setError($error); if (!$permissions->canAddTreeSubNode()) { $error->add(t('You do not have permission to add a folder here.')); } if (!$error->has()) { $folder = $filesystem->addFolder($folder, $this->request->request->get('folderName')); $response->setMessage(t('Folder added.')); $response->setAdditionalDataAttribute('folder', $folder); } $response->outputJSON(); }
public function view() { // we also perform the "does the user need to buy it?" query here to save some requests $r = new EditResponse(); $r->setAdditionalDataAttribute('isConnected', $this->marketplace->isConnected()); $r->setAdditionalDataAttribute('connectionError', $this->marketplace->getConnectionError()); if (is_object($this->item)) { $r->setAdditionalDataAttribute('purchaseRequired', $this->item->purchaseRequired()); $r->setAdditionalDataAttribute('remoteURL', $this->item->getRemoteURL()); $r->setAdditionalDataAttribute('localURL', $this->item->getLocalURL()); if (!$this->item->purchaseRequired()) { $this->item->enableFreeLicense(); } } $r->outputJSON(); }
public function remove_tree_node() { $node = $this->getNode(); $tree = $node->getTreeObject(); $treeNodeID = $node->getTreeNodeID(); $error = \Core::make('error'); if (!\Core::make('token')->validate("remove_tree_node")) { $error->add(\Core::make('token')->getErrorMessage()); } if (!is_object($node)) { $error->add(t('Invalid node.')); } if ($node->getTreeNodeParentID() == 0) { $error->add(t('You may not remove the top level node.')); } if (!$error->has()) { $response = new EditResponse(); $response->setMessage(t('%s deleted successfully.', $node->getTreeNodeDisplayName())); $response->setAdditionalDataAttribute('treeNodeID', $treeNodeID); $node->delete(); return new JsonResponse($response); } else { return new JsonResponse($error); } }
public function unsubscribe($cnvID) { $this->loadConversation($cnvID); $this->conversation->unsubscribeUser($this->user); $o = new EditResponse(); $o->setAdditionalDataAttribute('subscribed', false); $o->outputJSON(); }
public function execute() { $message = new EditResponse(); list($sourceNodes, $destNode) = $this->getNodes(); if (is_array($sourceNodes)) { foreach ($sourceNodes as $sourceNode) { if ($_REQUEST['copyNodes']) { $sourceNode->duplicate($destNode); $message->setMessage(t('Item copied successfully.')); } else { $sourceNode->move($destNode); $message->setMessage(t('Item moved successfully.')); } } } if (isset($_POST['treeNodeID'])) { $destNode->saveChildOrder($_POST['treeNodeID']); } $message->setAdditionalDataAttribute('destination', $destNode->getTreeNodeJSON()); return new JsonResponse($message); }
public function update_attribute($ptID = false) { $this->setupPageType($ptID); $sr = new EditResponse(); if (Loader::helper('validation/token')->validate()) { $ak = CollectionKey::getByID(Loader::helper('security')->sanitizeInt($_REQUEST['name'])); if (is_object($ak)) { $ak->saveAttributeForm($this->defaultPage); $val = $this->defaultPage->getAttributeValueObject($ak); } } else { $this->error->add(Loader::helper('validation/token')->getErrorMessage()); } if ($this->error->has()) { $sr->setError($this->error); } else { $sr->setMessage(t('Attribute saved successfully.')); $sr->setAdditionalDataAttribute('value', $val->getValue('displaySanitized', 'display')); } $sr->outputJSON(); }
public function export_translations($localeCode) { $result = new EditResponse(); try { if (!Core::make('token')->validate('export_translations')) { throw new \Exception(Core::make('token')->getErrorMessage()); } $section = Section::getByLocale($localeCode); if (is_object($section) && !$section->isError()) { if ($section->getLocale() == Config::get('concrete.multilingual.default_source_locale')) { $section = null; } } else { $section = null; } if (!isset($section)) { throw new \Exception(t('Invalid language identifier')); } $translations = $section->getSectionInterfaceTranslations(); $extractor = Core::make('multilingual/extractor'); $extractor->mergeTranslationsWithSectionFile($section, $translations); $extractor->saveSectionTranslationsToFile($section, $translations); \Localization::clearCache(); $result->setAdditionalDataAttribute('newToken', Core::make('token')->generate('export_translations')); $result->message = t('The translations have been exported to file and will be used by the website.'); } catch (\Exception $x) { $result->setError($x); } $result->outputJSON(); }