예제 #1
0
    // массив всех
    $arrNewses = $news->getNewses($strWhere, false, $strLimit, $arrFields);
    // формируем страницы
    $allRecords = $news->cntNews();
    // получаем общее количество
    $strPages = strings::generatePage($allRecords, $offset, $retFields['records'], $path, true);
    // формируем странциы
    $smarty->assignByRef('arrNewses', $arrNewses);
    //передаем в шаблон общее количество записей
    $smarty->assignByRef('allRecords', $allRecords);
    //передаем в шаблон строку сформированных страниц
    $smarty->assignByRef('strPages', $strPages);
} elseif ($arrActions['comments']) {
    // инициируем "Наименование страницы" отображаемое в форме
    $arrNamePage[] = array('name' => MENU_COMMENTS, 'link' => false);
    $newsComments = new newsComments();
    /** Массовое удаление **/
    if (!empty($_POST['action']) && !empty($_POST['comments'])) {
        if ('deleted' === $_POST['action']) {
            $strWhere = 'id IN (' . implode(',', secure::escQuoteData(array_keys($_POST['comments']))) . ')';
            if (!$newsComments->deleteRecords($strWhere)) {
                $arrErrors[] = db::$message_error;
            } else {
                messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?' . $qString);
            }
        }
    }
    // Проверяем фильтр
    $arrFilter = array('name', 'ip', 'id_news');
    if (isset($_GET['filter']) && in_array($_GET['filter'], $arrFilter) && !empty($_GET['in'])) {
        $strWhere = $_GET['filter'] . " IN (" . secure::escQuoteData($_GET['in']) . ")";
예제 #2
0
                } else {
                    echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_COMPLAINT_NOT_SEND));
                }
            } else {
                echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_COMPLAINT_NOT_SEND));
            }
        } else {
            echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_COMPLAINT_NOT_SEND));
        }
    } else {
        echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_COMPLAINT_NOT_SEND));
    }
} elseif (isset($_POST['deleteComment']) && isset($_POST['newsId'])) {
    if (!empty($_POST['deleteComment']) && !empty($_POST['newsId'])) {
        $news = new news();
        $newsComments = new newsComments();
        if ($arrNews = $news->getNews("id=" . secure::escQuoteData($_POST['newsId'] . " AND token='active'"))) {
            if (!empty($_SESSION['sd_user']['data']['id']) && $_SESSION['sd_user']['data']['id'] == $arrNews['id_user']) {
                if ($newsComments->deleteRecords("id=" . secure::escQuoteData($_POST['deleteComment']))) {
                    echo ajax::sdgJSONencode(array('success' => true));
                } else {
                    echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_NOT_DELETE));
                }
            } else {
                echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_NOT_DELETE));
            }
        } else {
            echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_NOT_DELETE));
        }
    } else {
        echo ajax::sdgJSONencode(array('error' => MESSAGE_COMMENTS_NOT_DELETE));
예제 #3
0
 /**
  * protected функция помечает новости как удаленные
  *
  * @param (array || false) $arrNews - массив, содержащий id новостей для удаления
  * @param (string || false) $strWhere - условие запроса. Если этот параметр не FALSE, то параметр $arrNews не обрабатывается.
  *
  * @return bool
  */
 protected function deleteNews($arrNews, $strWhere)
 {
     if (empty($arrNews) && empty($strWhere)) {
         return false;
     }
     $strWhere = empty($strWhere) ? 'id IN (' . implode(',', secure::escQuoteData($arrNews)) . ')' : (!empty($arrNews) ? $strWhere . ' AND id IN (' . implode(',', secure::escQuoteData($arrNews)) . ')' : $strWhere);
     // удаляем комментарии к новостям
     if (!empty($arrNews)) {
         // при удалении пользователей, если выбрано удаление новостей пользователя
         // комментарии к новостям удалены не будут, т.к. удаление новостей идет по id_user
         // и id новостей, которые необходимо удалить неизвестны
         $newsComments = new newsComments();
         if (!$newsComments->deleteRecords('id_news IN (' . implode(',', secure::escQuoteData($arrNews)) . ')')) {
             return false;
         }
     }
     return $this->delEntrys($strWhere);
 }