public function createGenerator($sliderId, $params)
 {
     $data = new N2Data($params);
     unset($params['type']);
     unset($params['group']);
     unset($params['record-slides']);
     try {
         $generatorId = $this->_create($data->get('type'), $data->get('group'), json_encode($params));
         $info = $this->getGeneratorInfo($data->get('group'), $data->get('type'));
         $slideData = self::getLayout($info->type);
         /*if (self::$layouts[$info->type]) {
               $slideData = json_decode(self::$layouts[$info->type], true);
           } else {
               $slideData = array(
                   'title'       => 'title',
                   'slide'       => array(),
                   'description' => '',
                   'thumbnail'   => '',
                   'published'   => 1
               );
           }*/
         $slideData['published'] = '1';
         $slideData['publishdates'] = '|*|';
         $slideData['generator_id'] = $generatorId;
         $slideData['record-slides'] = intval($data->get('record-slides', 1));
         $slideData['slide'] = json_encode($slideData['slide']);
         $slidesModel = new N2SmartsliderSlidesModel();
         $slideId = $slidesModel->create($sliderId, $slideData, false);
         return array('slideId' => $slideId, 'generatorId' => $generatorId);
     } catch (Exception $e) {
         throw new Exception($e->getMessage());
     }
 }
Example #2
0
 public function actionCreate()
 {
     $this->validateToken();
     $this->validatePermission('smartslider_edit');
     $slidersModel = new N2SmartsliderSlidersModel();
     $sliderId = N2Request::getInt('sliderid');
     $slider = $slidersModel->get($sliderId);
     $this->validateDatabase($slider);
     if (N2Request::getInt('save')) {
         $slidesModel = new N2SmartsliderSlidesModel();
         $slideId = $slidesModel->create($sliderId, N2Request::getVar('slide'));
         $this->validateDatabase($slideId);
         $this->response->redirect(array("slides/edit", array("sliderid" => N2Request::getInt("sliderid"), "slideid" => $slideId)));
     }
 }