Пример #1
0
 public function add($pageType, $iPage)
 {
     $db = Zend_Db_Table::getDefaultAdapter();
     $values = $values_key = '';
     $metadata_pageType = $db->describeTable($pageType);
     foreach ($metadata_pageType as $k => $v) {
         //if(@$_POST[$k] && $_POST[$k] !== false)
         if (@$_POST[$k]) {
             if ($_POST[$k] == "on") {
                 $_POST[$k] = 1;
             }
             if ($values) {
                 $values .= ",";
             }
             $_POST[$k] = str_replace("'", "\"", $_POST[$k]);
             if (strlen($_POST[$k]) > 10000) {
                 $this->flag = 1;
             }
             $values .= "'" . $_POST[$k] . "'";
             if ($values_key) {
                 $values_key .= ",";
             }
             $values_key .= $k;
         }
     }
     if ($_FILES && @(!$return['message']) && $pageType != 'news') {
         //            var_dump($_FILES); die();
         $resize = 0;
         if ($iPage['resize'] != 0) {
             $resize = 1;
         }
         $AddFiles = new Core_Controller_Action_Helper_AddFiles();
         $files_array = $AddFiles->checkFiles($pageType, $resize);
         if (@$files_array['message']) {
             $return['message'] = $files_array['message'];
         }
     }
     if ($pageType == 'top') {
         $exist = $db->fetchRow("SELECT t.id FROM top t WHERE t.film_id=" . $_POST['film_id']);
         if ($exist != false) {
             $return['message'] = 'Фильм уже существует';
         }
     }
     if (@(!$return['message'])) {
         $row = $db->fetchRow("SELECT MAX(position) as position\n\t\t\t\tFROM\n\t\t\t\t  " . $pageType . " AS p\n\t\t\t\tWHERE\n\t\t\t\t  p.page_id = " . $iPage['menu_activ']);
         if ($row['position'] != '') {
             $values_key .= ",position";
             $values .= ",'" . ($row['position'] + 1) . "'";
         }
         if ($pageType == 'films') {
             $storages = $db->fetchRow('select name from storages where isactive = "1"');
             $values_key .= ",storages";
             $values .= ",'" . $storages['name'] . "'";
         }
         //			if($this->flag == 1)
         //			{
         //				$sql = "INSERT INTO ".$pageType.
         //			       "(".$values_key.") ".
         //			       "VALUES ".
         //			       "(".$values.")";
         //			       $isklucheniedb = new Core_Controller_Action_Helper_isklucheniedb();
         //			       $isklucheniedb->iskluchenie_db($sql);
         //			}
         //			else
         $db->query("INSERT INTO " . $pageType . " (" . $values_key . ") VALUES (" . $values . ")");
         $return['id_row'] = $db->lastInsertId();
         if ($_FILES && $pageType != 'news') {
             //				var_dump($_FILES); die();
             $AddFiles->workings_files($resize, $pageType, $return['id_row']);
         }
         if ($pageType == 'banners') {
             $update = '';
             $return['id_row'] = $db->lastInsertId();
             $img_link = 'http://' . $_SERVER['SERVER_NAME'] . '/public/' . $pageType . '/' . $_GET['menu_id'] . '/' . $return['id_row'] . '/banner' . $_FILES['banner']['name'];
             //                var_dump($img_link);die();
             //                $values_key .=",img";
             //                $values .=",'".$img_link."'";
             $db->query("UPDATE " . $pageType . " SET img='" . $img_link . "' WHERE id = " . $return['id_row']);
         }
     }
     return @$return;
 }
Пример #2
0
 public function update($pageType, $iPage)
 {
     //            var_dump($_GET);die();
     $return['id_row'] = $_GET['pages_id'];
     $db = Zend_Db_Table::getDefaultAdapter();
     $update = $files_array = '';
     $metadata_pageType = $db->describeTable($pageType);
     //          echo '<pre>';
     ////          var_dump($metadata_pageType);die();
     //          var_dump($_POST);die();
     //          echo '</pre>';
     foreach ($metadata_pageType as $k => $v) {
         /*    		if($_POST[$k])
             		{*/
         if (isset($_POST[$k]) || $metadata_pageType[$k]['NULLABLE'] == 1 && (strpos($metadata_pageType[$k]['DATA_TYPE'], 'text') !== false || $metadata_pageType[$k]['DATA_TYPE'] == 'varchar')) {
             if ($update) {
                 $update .= ",";
             }
             $_POST[$k] = str_replace("'", "\"", $_POST[$k]);
             if ($_POST[$k] == "on") {
                 $_POST[$k] = 1;
             }
             if (strlen($v) > 10000) {
                 $this->flag = 1;
             }
             $update .= "`" . $k . "`='" . $_POST[$k] . "'";
         }
         //	}
     }
     //            var_dump($update);die();
     if ($_FILES && @(!$return['message']) && $pageType != 'news') {
         $resize = 0;
         if ($iPage['resize'] != 0) {
             $resize = 1;
         }
         $AddFiles = new Core_Controller_Action_Helper_AddFiles();
         $files_array = $AddFiles->checkFiles($pageType, $resize);
         if (@$files_array['message']) {
             $return['message'] = $files_array['message'];
         }
     }
     if ($pageType == 'top') {
         $exist = $db->fetchRow("SELECT t.id FROM top t WHERE t.film_id=" . $_POST['film_id']);
         if ($exist != false) {
             $return['message'] = 'Фильм уже существует';
         }
     }
     if (($pageType == 'comment' || $pageType == 'commentnews') && $_GET['moderate'] == '1') {
         $db->query("UPDATE {$pageType} SET moderate = '0' WHERE id=" . $_GET['pages_id']);
     }
     //       	var_dump($return);die();
     if (@(!$return['message'])) {
         if ($update) {
             if ($pageType == 'banners') {
                 $img_link = 'http://' . $_SERVER['SERVER_NAME'] . '/public/' . $pageType . '/' . $_GET['menu_id'] . '/' . $return['id_row'] . '/banner' . $_FILES['banner']['name'];
                 //                var_dump($img_link);die();
                 $update .= ",`" . img . "`='" . $img_link . "'";
             }
             //				if($this->flag == 1)
             //				{
             //					$sql = "UPDATE ".$pageType. " SET ".$update." WHERE id = ".$_GET['pages_id'];
             //					$isklucheniedb = new Core_Controller_Action_Helper_isklucheniedb();
             //					$isklucheniedb->iskluchenie_db($sql);
             //				}
             //				else
             //                    var_dump($update); die();
             $db->query("UPDATE " . $pageType . " SET " . $update . " WHERE id = " . $_GET['pages_id']);
         }
         if ($_FILES && $pageType != 'news') {
             //				echo '<pre>';
             //				var_dump($_FILES); die();
             //				echo '</pre>';
             $storages['name'] = '';
             if ($pageType == 'films') {
                 $storages = $db->fetchRow('select storages as name from films where id = ' . $_GET['pages_id']);
             }
             $AddFiles->workings_files($resize, $pageType, $return['id_row'], $storages['name']);
         }
     }
     return @$return;
 }