Esempio n. 1
0
    public function RightColumnContent()
    {
        switch ($this->Action) {
            case 'view':
                $this->CheckIdExist();
                $Object = Db_Slider::getObjectById($this->Id);
                $this->TPL->assign('Object', $Object);
                $ObjectTrans = Db_SliderTrans::getTransByObjectId($this->Id);
                $this->TPL->assign('ObjectTrans', $ObjectTrans);
                $LanguageModel = Db_Language::getLanguageWithKey();
                $this->TPL->assign('LanguageModel', $LanguageModel);
                break;
            case 'edit':
                $this->CheckIdExist();
                $Object = Db_Slider::getObjectById($this->Id);
                $this->TPL->assign('Object', $Object);
                $ObjectTrans = Db_SliderTrans::getTransByObjectId($this->Id);
                $this->TPL->assign('ObjectTrans', $ObjectTrans);
                $LanguageModel = Db_Language::getLanguageWithKey();
                $this->TPL->assign('LanguageModel', $LanguageModel);
                break;
            case 'delete':
                if ($this->Id != 0) {
                    Db_Slider::deleteByField('id', $this->Id);
                    if (is_dir(BASE_PATH . 'files/' . $this->object_path . $this->Id)) {
                        removeDir(BASE_PATH . 'files/' . $this->object_path . $this->Id);
                    }
                    $this->Msg->SetMsg($this->_T('success_item_deleted'));
                    $this->Redirect($this->PageUrl);
                }
                break;
            case 'add':
                $LanguageModel = Db_Language::getLanguageWithKey();
                $this->TPL->assign('LanguageModel', $LanguageModel);
                break;
            case 'save':
                if ($this->Id != 0) {
                    $this->CheckIdExist();
                }
                $s_priority = getPost('s_priority');
                $s_published = isset($_POST['s_published']) ? 1 : 0;
                $s_url = getPost('s_url');
                $st_top = getPost('st_top');
                $st_middle = getPost('st_middle');
                $st_bottom = getPost('st_bottom');
                //                Save data into OBJECT
                $Object = new Db_Slider($this->DB, $this->Id, 'id');
                $Object->s_priority = $s_priority;
                $Object->s_published = $s_published;
                $Object->s_url = $s_url;
                $Object->save();
                //                Take id of $Object
                $id = $Object->id;
                foreach ($st_top as $lang => $top) {
                    $ObjectTrans = new Db_SliderTrans();
                    $ObjectTrans->findByFields(array('st_slider_id' => $id, 'st_lang_id' => $lang));
                    $ObjectTrans->st_top = $st_top[$lang];
                    $ObjectTrans->st_middle = $st_middle[$lang];
                    $ObjectTrans->st_bottom = $st_bottom[$lang];
                    $ObjectTrans->st_lang_id = $lang;
                    $ObjectTrans->st_slider_id = $id;
                    $ObjectTrans->save();
                }
                if (!empty($_FILES['s_image']) && $_FILES['s_image']['error'] == 0) {
                    $image = Db_Slider::getObjectById($id);
                    if (!empty($image['s_image']) && is_dir(BASE_PATH . 'files/' . $this->object_path . $this->Id)) {
                        removeDir(BASE_PATH . 'files/' . $this->object_path . $this->Id);
                    }
                    $path = BASE_PATH . 'files/' . $this->object_path . '/' . $id . '/';
                    if ($filename = Upload::uploadImage($path, $_FILES['s_image'], 'slider', $this->imageSizes, 'crop')) {
                        $Object = new Db_Slider($this->DB, $id, 'id');
                        $Object->s_image = $filename;
                        $Object->save();
                    }
                }
                $this->Msg->SetMsg($this->_T('success_item_saved'));
                $this->Redirect($this->PageUrl . '?action=view&id=' . $id);
                break;
            default:
                $Objects = Db_Slider::getObjects();
                $ListGrid = false;
                if ($Objects) {
                    $ListGrid = new TGrid();
                    $ListGrid->Spacing = 0;
                    $ListGrid->Width = '100%';
                    $ListGrid->SetClass('table table-bordered table-highlight-head');
                    $ListGrid->AddHeaderRow($this->_T('id'), $this->_T('Url'), $this->_T('Priority'), $this->_T('Published'), $this->_T('actions'));
                    $ListGrid->BeginBody();
                    foreach ($Objects as $Object) {
                        $Grid_TR = new TGrid_TTR();
                        $Grid_TD = new TGrid_TTD($Object['id'] . ' (&nbsp;<a href="' . $this->PageUrl . '?action=view&id=' . $Object['id'] . '">' . $this->_T('see') . '</a>&nbsp;)');
                        $Grid_TR->Add($Grid_TD);
                        $Grid_TD = new TGrid_TTD($Object['s_url']);
                        $Grid_TR->Add($Grid_TD);
                        $Grid_TD = new TGrid_TTD($Object['s_priority']);
                        $Grid_TR->Add($Grid_TD);
                        $Grid_TD = new TGrid_TTD($Object['s_published'] == 1 ? $this->_T('yes') : $this->_T('no'));
                        $Grid_TR->Add($Grid_TD);
                        $Grid_TD = new TGrid_TTD('
								<a class="bs-tooltip" title="" href="' . $this->PageUrl . '?action=edit&id=' . $Object['id'] . '" data-original-title="' . $this->_T('edit') . '"><i class="icon-pencil"></i></a>
								<a class="bs-tooltip confirm-dialog" data-text="' . _T('sure_you_want_to_delete') . '" title="" href="' . $this->PageUrl . '?action=delete&id=' . $Object['id'] . '" data-original-title="' . $this->_T('delete') . '"><i class="icon-trash"></i></a>
							');
                        $Grid_TD->AddAttr(new TAttr('class', 'align-center'));
                        $Grid_TR->Add($Grid_TD);
                        $ListGrid->AddTR($Grid_TR);
                    }
                    $ListGrid->EndBody();
                    $ListGrid = $ListGrid->Html();
                }
                $this->TPL->assign('ListGrid', $ListGrid);
                break;
        }
        $msg = $this->Msg->Html();
        $this->TPL->assign('msg', $msg);
        $this->TPL->assign('Action', $this->Action);
        $result = $this->TPL->display(null, true);
        $this->Msg->Clear();
        return $result;
    }