Beispiel #1
0
 public function actionGetMobileLayouts($modelName)
 {
     Yii::import('application.modules.mobile.models.*');
     // find or generate layouts
     $formLayout = MobileLayouts::model()->findByAttributes(array('modelName' => $modelName, 'defaultView' => 1));
     $viewLayout = MobileLayouts::model()->findByAttributes(array('modelName' => $modelName, 'defaultForm' => 1));
     $formLayout = $formLayout ? $formLayout->layout : null;
     $viewLayout = $viewLayout ? $viewLayout->layout : null;
     if (!$formLayout) {
         $formLayout = MobileLayouts::generateDefaultLayout('form', $modelName);
     }
     if (!$viewLayout) {
         $viewLayout = MobileLayouts::generateDefaultLayout('view', $modelName);
     }
     list($formLayout, $unselectedForm) = MobileLayouts::getFieldOptions($formLayout, $modelName);
     list($viewLayout, $unselectedView) = MobileLayouts::getFieldOptions($viewLayout, $modelName);
     echo CJSON::encode(array('defaultForm' => $formLayout, 'defaultView' => $viewLayout, 'defaultFormUnselected' => $unselectedForm, 'defaultViewUnselected' => $unselectedView));
 }
 public function getLayoutData()
 {
     if (!$this->mobileLayout) {
         // if there's no mobile layout, generate layout from default desktop app record layout
         $layoutData = MobileLayouts::generateDefaultLayout($this->layoutType, $this->modelName);
     } else {
         $layoutData = $this->mobileLayout->layout;
     }
     return $layoutData;
 }