コード例 #1
0
 public function getFileName()
 {
     $fileName = preg_replace('/_-/', ' ', $this->_name);
     $filter = new Zend_Filter_Word_SeparatorToCamelCase();
     $fileName = $filter->filter($fileName) . 'Controller.php';
     return $this->getBaseDirectoryName() . '/' . $fileName;
 }
コード例 #2
0
 public function testFilterSeparatesCamelCasedWordsWithProvidedSeparator()
 {
     $string = 'camel:-:cased:-:Words';
     $filter = new Zend_Filter_Word_SeparatorToCamelCase(':-:');
     $filtered = $filter->filter($string);
     $this->assertNotEquals($string, $filtered);
     $this->assertEquals('CamelCasedWords', $filtered);
 }
コード例 #3
0
 /**
  * Figure out what the filename should be based on title
  * @param String $value
  * @return String
  */
 public function createFilename($value = '')
 {
     if ($value == '') {
         $value = $this->layout_title;
     }
     $layout = Zend_Controller_Action_HelperBroker::getStaticHelper('layout');
     $inflector = $layout->getInflector();
     $camelFilter = new Zend_Filter_Word_SeparatorToCamelCase();
     $filename = $inflector->filter(array('script' => $camelFilter->filter($value)));
     return $filename;
 }
コード例 #4
0
 public function errorAction()
 {
     $errors = $this->_getParam('error_handler');
     $layoutService = $this->_helper->service('layout', 'layouts');
     $layout = $layoutService->fetchLayout('error', Layouts_Model_Layout::CUSTOM);
     if ($layout === null) {
         $layout = (object) array('layout_type' => $layoutService->getSystemLayoutType(), 'layout_title' => 'error', 'layout_module' => 'layouts', 'layout_filename' => 'error.phtml');
     }
     $path = $layoutService->fetchLayoutPath($layout->layout_type, $layout->layout_module);
     $this->_helper->layout()->setLayoutPath($path);
     // Configure the layout file
     $camelFilter = new Zend_Filter_Word_SeparatorToCamelCase();
     $layoutFile = $camelFilter->filter($layout->layout_title);
     $this->_helper->layout()->setLayout($layoutFile);
     switch ($errors->type) {
         case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE:
         case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
         case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
             // 404 error -- controller or action not found
             $this->getResponse()->setHttpResponseCode(404);
             $title = 'Page not found';
             $this->view->errorType = '404';
             break;
         default:
             if (is_a($errors->exception, 'FFR_Exception_404')) {
                 // 404 error -- controller or action not found
                 $this->getResponse()->setHttpResponseCode(404);
                 $title = 'Page not found';
                 $this->view->errorType = '404';
             } else {
                 // application error
                 $this->getResponse()->setHttpResponseCode(500);
                 $title = 'Application Error';
                 $this->view->type = '500';
             }
             break;
     }
     if ($this->_request->isXmlHttpRequest()) {
         $return = array();
         $return['error']['exception']['title'] = $title;
         $return['error']['exception']['message'] = $errors->exception->getMessage();
         $return['error']['exception']['stack_trace'] = $errors->exception->getTraceAsString();
         $return['error']['request'] = $errors->request->getParams();
         $this->_helper->json->sendJson($return);
     } else {
         $this->view->title = $title;
         $this->view->exception = $errors->exception;
         $this->view->request = $errors->request;
     }
     $this->_helper->getHelper('Log')->direct($errors->exception, Zend_Log::EMERG);
     $this->_helper->getHelper('Notify')->direct($errors->exception);
 }
コード例 #5
0
ファイル: DashToCamelCase.php プロジェクト: Sywooch/forums
 /**
  * Constructor
  *
  * @return void
  */
 public function __construct()
 {
     parent::__construct('-');
 }