Admin_TemplateController::editAction PHP Метод

editAction() публичный Метод

public editAction ( )
    public function editAction()
    {
        $translator = \Zend_Registry::get('container')->getService('translator');
        $key = $this->getKey();
        $item = $this->service->fetchMetadata($key);
        $this->view->item = $item;
        $this->view->placeholder('title')->set($translator->trans("Edit template: \$1", array('$1' => $item->name), 'themes'));
        switch ($item->type) {
            case 'jpg':
            case 'png':
            case 'gif':
                $this->_forward('edit-image');
                break;
            case 'css':
            case 'txt':
            case 'html':
            case 'js':
            case 'tpl':
                $this->_forward('edit-template');
                break;
            default:
                $this->_forward('edit-other');
                break;
        }
        $form = new Admin_Form_ReplaceTemplate();
        $form->setMethod('post')->setAttrib('enctype', 'multipart/form-data');
        $request = $this->getRequest();
        if ($request->isPost() && $request->getParam('file', false) && $form->isValid($request->getPost())) {
            try {
                $form->getValues();
                // upload
                $this->service->replaceItem($key, $form->file);
                $this->_helper->flashMessenger($translator->trans("File \$1 was replaced.", array('$1' => basename($key)), 'themes'));
            } catch (\InvalidArgumentException $e) {
                $this->_helper->flashMessenger(array('error', $e->getMessage()));
            }
            $this->_helper->redirector('edit', 'template', 'admin', array('path' => $this->_getParam('path'), 'file' => $this->_getParam('file'), 'next' => urlencode($this->_getParam('next')), 'id' => $this->_getParam('id')));
        }
        $this->view->replaceForm = $form;
    }