if (!check_auth() || $CURRENT_USER['level'] < 7) {
    die("Access denied!");
}
require_once dirname(__FILE__) . "/SMPHPToolkit/SMAjax.php";
CADBiSNew::instance()->script_src('js/ajax/buffer.js');
CADBiSNew::instance()->script_src('js/ajax/manager.js');
CADBiSNew::instance()->link_href('skins/smadbis/css/grid.css');
$BILL = new CBilling($GV["dbhost"], $GV["dbname"], $GV["dblogin"], $GV["dbpassword"]);
$cats = $BILL->GetUrlCategories();
global $cats_cid;
$cats_cid_title = array();
foreach ($cats as $cat) {
    $cats_cid[$cat['cid']] = $cat;
}
$ajaxbuf_url_cats = new ajax_buffer("update_buffer_cats");
$emanager = new ajax_entities_manager('entities_manager', $ajaxbuf_url_cats);
$ajaxbuf_url_matched_cats = new ajax_buffer("update_buffer_cats_matched");
//$emanager_matched = new ajax_entities_manager('entities_manager_matched', $ajaxbuf_url_matched_cats);
class cat_urls_formatter extends grid_formatter
{
    protected $_field = '';
    /**
     * Entities manager
     * @var ajax_entities_manager
     */
    protected $_cats_cid_title = null;
    protected $_manager = '{}';
    /**
     * @param string $field
     * @param ajax_entities_manager $entities_manager
     */
Exemple #2
0
    // функция получения определённой страницы отсортированных данных
    // cортировка указывается третьим параметром (true=ASC,false=DESC)
    public static function get_page($pagesize, $page, $asc = true)
    {
        return array_slice($asc ? self::$mydata : array_reverse(self::$mydata), ($page - 1) * $pagesize, $pagesize);
    }
    // так же допустим есть функция удаления строки
    public static function delete($num)
    {
        unset(self::$mydata[$num]);
    }
}
// Инициализируем буфер и менеджер сущностей
$ajaxbuffer = new ajax_buffer("ajax_buffer");
$ajaxbuffer->show_progress(true);
$emanager = new ajax_entities_manager('entities_manager', $ajaxbuffer);
// Если нужно выполнить какие-то действия над данными по постбэку
if ($ajaxbuffer->is_post_back() && $emanager->isAnyAction()) {
    switch ($emanager->getAction()) {
        // необходимо удалить строку
        case $emanager->action->DEL:
            mydata::delete($emanager->getItem());
            break;
    }
    // сбрасываем действие (в противном случае оно будет активно при каждом ajax запросе)
    $emanager->eraseAction();
}
// Форматтер для отображения данных грида
class my_grid_formatter extends grid_formatter
{
    protected $_field = '';
if (!check_auth() || $CURRENT_USER['level'] < 7) {
    die("Access denied!");
}
require_once dirname(__FILE__) . "/SMPHPToolkit/SMAjax.php";
CADBiSNew::instance()->script_src('js/ajax/buffer.js');
CADBiSNew::instance()->script_src('js/ajax/manager.js');
CADBiSNew::instance()->link_href('skins/smadbis/css/grid.css');
$BILL = new CBilling($GV["dbhost"], $GV["dbname"], $GV["dblogin"], $GV["dbpassword"]);
if (isset($_REQUEST['renderkwdsfor'])) {
    $cid = $_REQUEST['renderkwdsfor'];
    die(implode(", ", $BILL->GetUrlCategoryKeywordsWithWeights($cid)));
}
$ajaxbuf_cats = new ajax_buffer("update_buffer_cats");
$ajaxbuf_cats->show_progress(true);
$emanager = new ajax_entities_manager('entities_manager', $ajaxbuf_cats);
class cats_formatter extends grid_formatter
{
    protected $_field = '';
    /**
     * Entities manager
     * @var ajax_entities_manager
     */
    protected $_entities_manager = null;
    /**
     * @param string $field
     * @param ajax_entities_manager $entities_manager
     */
    public function __construct($field, $entities_manager)
    {
        $this->_field = $field;