Преглед изворни кода

#20 - removing tags, categories, calendar, ip tracking, some unused tables

Alex Trofimov пре 12 година
родитељ
комит
f40a1ba325
46 измењених фајлова са 35 додато и 3211 уклоњено
  1. 0 57
      calendar.php
  2. 0 380
      categories.php
  3. 0 167
      inc/classes/BxDolAdminBuilder.php
  4. 0 265
      inc/classes/BxDolCalendar.php
  5. 0 214
      inc/classes/BxDolCategories.php
  6. 0 5
      inc/classes/BxDolCronCmd.php
  7. 16 46
      inc/classes/BxDolForm.php
  8. 0 9
      inc/classes/BxDolLanguagesQuery.php
  9. 0 101
      inc/classes/BxDolMobileTemplate.php
  10. 0 1
      inc/classes/BxDolProfile.php
  11. 0 243
      inc/classes/BxDolTags.php
  12. 0 1
      inc/classes/BxDolTemplate.php
  13. 0 50
      inc/tags.inc.php
  14. 1 231
      install/sql/system.sql
  15. 0 6
      member.php
  16. 0 14
      modules/boonex/antispam/install/config.php
  17. 0 9
      modules/boonex/developer/install/config.php
  18. 0 41
      modules/boonex/english/data/langs/system.xml
  19. 13 1
      modules/boonex/membership_pricing/install/sql/install.sql
  20. 5 1
      modules/boonex/membership_pricing/install/sql/uninstall.sql
  21. 0 14
      modules/boonex/profiler/install/config.php
  22. 0 105
      modules/boonex/russian/data/langs/system.xml
  23. 0 6
      modules/boonex/sites/install/config.php
  24. 0 2
      modules/boonex/sites/updates/update_100_200/install/config.php
  25. 0 14
      modules/boonex/smtpmailer/install/config.php
  26. 0 19
      modules/boonex/uni/data/template/system/scripts/BxTemplCalendar.php
  27. 0 16
      modules/boonex/uni/data/template/system/scripts/BxTemplCategories.php
  28. 0 18
      modules/boonex/uni/data/template/system/scripts/BxTemplCategoriesModule.php
  29. 0 16
      modules/boonex/uni/data/template/system/scripts/BxTemplTags.php
  30. 0 17
      modules/boonex/uni/data/template/system/scripts/BxTemplTagsModule.php
  31. 0 14
      studio/classes/BxDolStudioInstaller.php
  32. 0 413
      tags.php
  33. 0 24
      template/browseTextUnit.html
  34. 0 41
      template/calendar.html
  35. 0 75
      template/css/mobile.css
  36. 0 3
      template/mobile_box.html
  37. 0 3
      template/mobile_page_padding.html
  38. 0 9
      template/mobile_row.html
  39. 0 14
      template/page_11.html
  40. 0 39
      template/scripts/BxBaseCalendar.php
  41. 0 201
      template/scripts/BxBaseCategories.php
  42. 0 56
      template/scripts/BxBaseCategoriesModule.php
  43. 0 184
      template/scripts/BxBaseTags.php
  44. 0 62
      template/scripts/BxBaseTagsModule.php
  45. 0 2
      template/view_categ.html
  46. 0 2
      template/view_tags.html

+ 0 - 57
calendar.php

@@ -1,57 +0,0 @@
-<?php
-
-// TODO: decide later what to do with profiles functionality
-
-require_once('./inc/header.inc.php');
-require_once( BX_DIRECTORY_PATH_INC  . 'design.inc.php' );
-require_once(BX_DIRECTORY_PATH_INC . 'admin.inc.php');
-require_once(BX_DIRECTORY_PATH_INC . 'db.inc.php');
-
-bx_import('BxDolProfileFields');
-bx_import('BxDolProfilesController');
-bx_import("BxTemplProfileView");
-bx_import("BxTemplProfileView");
-bx_import("BxTemplSearchProfile");
-
-check_logged();
-
-bx_import('BxDolTemplate');
-$oTemplate = BxDolTemplate::getInstance();
-$oTemplate->setPageNameIndex(7);
-$oTemplate->setPageParams(array(
-    'header' => _t('_People_Calendar')
-));
-$oTemplate->setPageContent('page_main_code', getBlockCode_Results(100));
-PageCode();
-
-function getBlockCode_Results($iBlockID) {
-    $sAction = strip_tags($_GET['action']);
-    switch ($sAction) {
-        case 'browse':
-            $sCode = getProfilesByDate($_GET['date']);
-            break;
-        default:
-            $sCode = getCalendar();
-    }
-    return $sCode;
-}
-
-function getProfilesByDate ($sDate) {
-    $sDate = strip_tags($sDate);
-    $aDateParams = explode('/', $sDate);
-    $oSearch = new BxTemplSearchProfile('calendar', (int)$aDateParams[0], (int)$aDateParams[1], (int)$aDateParams[2]);
-    $oSearch -> aConstants['linksTempl']['browseAll'] = 'calendar.php?';
-
-    $sCode = $oSearch->displayResultBlock();
-    return $oSearch->displaySearchBox('<div class="search_container">'
-        . $sCode . '</div>', $oSearch->showPagination(false, false, false));
-}
-
-function getCalendar () {
-    $oProfile = new BxBaseProfileGenerator(getLoggedId());
-    $mSearchRes = $oProfile->GenProfilesCalendarBlock();
-    list($sResults, $aDBTopMenu, $sPagination, $sTopFilter) = $mSearchRes;
-    return DesignBoxContent(_t('_People_Calendar'), $sResults, 1);
-}
-
-?>

+ 0 - 380
categories.php

@@ -1,380 +0,0 @@
-<?php
-
-// TODO: reconsider almost all functionality in this file, according to new concept it should NOT be separate page with all categories, every module has its own page with tags
-
-/***************************************************************************
-*                            Dolphin Smart Community Builder
-*                              -------------------
-*     begin                : Mon Mar 23 2006
-*     copyright            : (C) 2007 BoonEx Group
-*     website              : http://www.boonex.com
-* This file is part of Dolphin - Smart Community Builder
-*
-* Dolphin is free software; you can redistribute it and/or modify it under
-* the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the
-* License, or  any later version.
-*
-* Dolphin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
-* without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-* See the GNU General Public License for more details.
-* You should have received a copy of the GNU General Public License along with Dolphin,
-* see license.txt file; if not, write to marketing@boonex.com
-***************************************************************************/
-
-define('BX_CATEG_ACTION_ALL', 'all');
-define('BX_CATEG_ACTION_COMMON', 'common');
-define('BX_CATEG_ACTION_USERS', 'users');
-define('BX_CATEG_ACTION_CALENDAR', 'calendar');
-define('BX_CATEG_ACTION_SEARCH', 'search');
-
-require_once( 'inc/header.inc.php' );
-require_once( BX_DIRECTORY_PATH_INC . 'design.inc.php' );
-
-bx_import('BxDolTemplate');
-bx_import('BxTemplCategories');
-bx_import('BxDolPageView');
-bx_import('BxTemplCalendar');
-
-$bAjaxMode = isset($_SERVER['HTTP_X_REQUESTED_WITH']) and $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ? true : false;
-
-function showCategories($aParam = array(), $iBoxId = 1, $sAction = '', $isBox = false, $bOrderPanel = false, $sTitle)
-{
-    $oCateg = new BxTemplCategories();
-
-    $oCateg->getTagObjectConfig($aParam);
-
-    if (empty($oCateg->aTagObjects))
-    {
-        if ($isBox)
-            return DesignBoxContent($sTitle, MsgBox(_t('_Empty')), 1);
-        else
-            return MsgBox(_t('_Empty'));
-    }
-
-    $aParam['type'] = isset($_GET['tags_mode']) && isset($oCateg->aTagObjects[$_GET['tags_mode']]) ? $_GET['tags_mode'] : $oCateg->getFirstObject();
-
-    $sCode = $oCateg->display($aParam, $iBoxId, $sAction, $bOrderPanel, getParam('categ_show_columns'));
-
-    if ($isBox)
-    {
-        $aCaptionMenu = $oCateg->getCategTopMenuHtml($aParam, $iBoxId, $sAction);
-        $sCode = DesignBoxContent($sTitle, $sCode, 1, $aCaptionMenu);
-        $sCode = '<div id="page_block_' . $iBoxId . '">' . $sCode . '<div class="clear_both"></div></div>';
-        return $sCode;
-    }
-    else
-        return array(
-            $sCode,
-            $oCateg->getCategTopMenu($aParam, $sAction),
-            array(),
-            ($sDate ? _t('_categ_by_day') . $sDate : '')
-        );
-}
-
-
-class CategoriesCalendar extends BxTemplCalendar
-{
-    function CategoriesCalendar($iYear, $iMonth)
-    {
-        parent::BxTemplCalendar($iYear, $iMonth);
-    }
-
-    function display() {
-        $aVars = array (
-            'bx_repeat:week_names' => $this->_getWeekNames (),
-            'bx_repeat:calendar_row' => $this->_getCalendar (),
-            'month_prev_url' => $this->getBaseUri () . "&year={$this->iPrevYear}&month={$this->iPrevMonth}",
-            'month_prev_name' => _t('_month_prev'),
-            'month_prev_icon' => getTemplateIcon('sys_back.png'),
-            'month_next_url' => $this->getBaseUri () . "&year={$this->iNextYear}&month={$this->iNextMonth}",
-            'month_next_name' => _t('_month_next'),
-            'month_next_icon' => getTemplateIcon('sys_next.png'),
-            'month_current' => $this->getTitle(),
-        );
-
-        $oSysTemplate = BxDolTemplate::getInstance();
-
-        $sHtml = $oSysTemplate->parseHtmlByName('calendar.html', $aVars);
-        $sHtml = preg_replace ('#<bx_repeat:events>.*?</bx_repeat:events>#s', '', $sHtml);
-        $oSysTemplate->addCss('calendar.css');
-        return $sHtml;
-    }
-
-    function getData()
-    {
-        $oDb = new BxDolDb();
-
-        return $oDb->getAll("SELECT *, DAYOFMONTH(`Date`) AS `Day`
-            FROM `sys_categories`
-            WHERE `Date` >= TIMESTAMP('{$this->iYear}-{$this->iMonth}-1')
-            AND `Date` < TIMESTAMP('{$this->iNextYear}-{$this->iNextMonth}-1')
-            AND `Owner` <> 0 AND `Status` = 'active'");
-    }
-
-    function getBaseUri()
-    {
-        return BX_DOL_URL_ROOT . 'categories.php?action=calendar';
-    }
-
-    function getBrowseUri()
-    {
-        return BX_DOL_URL_ROOT . 'categories.php?action=calendar';
-    }
-
-    function getEntriesNames ()
-    {
-        return array(_t('_categ_single'), _t('_categ_plural'));
-    }
-
-    function _getCalendar ()
-    {
-        $sBrowseUri = $this->getBrowseUri();
-        list ($sEntriesSingle, $sEntriesMul) = $this->getEntriesNames ();
-
-        $this->_getCalendarGrid($aCalendarGrid);
-        $aRet = array ();
-        for ($i = 0; $i < 6; $i++) {
-
-            $aRow = array ('bx_repeat:cell');
-            $isRowEmpty = true;
-
-            for ($j = $this->iWeekStart; $j < $this->iWeekEnd; $j++) {
-
-                $aCell = array ();
-
-                if ($aCalendarGrid[$i][$j]['today']) {
-                    $aCell['class'] = 'sys_cal_cell sys_cal_today';
-                    $aCell['day'] = $aCalendarGrid[$i][$j]['day'];
-                    $aCell['bx_if:num'] = array ('condition' => $aCalendarGrid[$i][$j]['num'], 'content' => array(
-                        'num' => $aCalendarGrid[$i][$j]['num'],
-                        'href' => $sBrowseUri . '&year=' . $this->iYear . '&month=' . $this->iMonth . '&day=' . $aCell['day'],
-                        'entries' => 1 == $aCalendarGrid[$i][$j]['num'] ? $sEntriesSingle : $sEntriesMul,
-                    ));
-                    $isRowEmpty = false;
-                } elseif (isset($aCalendarGrid[$i][$j]['day'])) {
-                    $aCell['class'] = 'sys_cal_cell';
-                    $aCell['day'] = $aCalendarGrid[$i][$j]['day'];
-                    $aCell['bx_if:num'] = array ('condition' => $aCalendarGrid[$i][$j]['num'], 'content' => array(
-                        'num' => $aCalendarGrid[$i][$j]['num'],
-                        'href' => $sBrowseUri . '&year=' . $this->iYear . '&month=' . $this->iMonth . '&day=' . $aCell['day'],
-                        'entries' => 1 == $aCalendarGrid[$i][$j]['num'] ? $sEntriesSingle : $sEntriesMul,
-                    ));
-                    $isRowEmpty = false;
-                } else {
-                    $aCell['class'] = 'sys_cal_cell_blank';
-                    $aCell['day'] = '';
-                    $aCell['bx_if:num'] = array ('condition' => false, 'content' => array(
-                        'num' => '',
-                        'href' => '',
-                        'entries' => '',
-                    ));
-                }
-
-                if ($aCell)
-                    $aRow['bx_repeat:cell'][] = $aCell;
-            }
-
-            if ($aRow['bx_repeat:cell'] && !$isRowEmpty) {
-                $aRet[] = $aRow;
-            }
-        }
-        return $aRet;
-    }
-
-}
-
-class CategoriesCalendarPage extends BxDolPageView
-{
-    var $sPage;
-
-    function CategoriesCalendarPage()
-    {
-        $this->sPage = 'categ_calendar';
-        parent::BxDolPageView($this->sPage);
-    }
-
-    function getBlockCode_Calendar($iBlockId)
-    {
-        $sYear = isset($_GET['year']) ? (int)$_GET['year'] : '';
-        $sMonth = isset($_GET['month']) ? (int)$_GET['month'] : '';
-        $oCalendar = new CategoriesCalendar($sYear, $sMonth);
-
-        return $oCalendar->display();
-    }
-
-    function getBlockCode_CategoriesDate($iBlockId)
-    {
-        if (isset($_GET['year']) && isset($_GET['month']) && isset($_GET['day']))
-        {
-            $aParam = array(
-                'pagination' => getParam('categ_perpage_browse'),
-                'date' => array(
-                    'year' => (int)$_GET['year'],
-                    'month' => (int)$_GET['month'],
-                    'day' => (int)$_GET['day']
-                )
-            );
-
-            return showCategories($aParam, $iBlockId, BX_CATEG_ACTION_CALENDAR, false, false, _t('_categ_caption_calendar'));
-        }
-        else
-            return MsgBox(_t('_Empty'));
-    }
-}
-
-class CategoriesSearchPage extends BxDolPageView {
-
-    var $aSearchForm;
-    var $oForm;
-    var $sPage;
-
-    function CategoriesSearchPage()
-    {
-        $this->sPage = 'categ_search';
-        parent::BxDolPageView($this->sPage);
-
-        bx_import('BxTemplFormView');
-        $this->aSearchForm = array(
-            'form_attrs' => array(
-                'name'     => 'form_search_categories',
-                'action'   => '',
-                'method'   => 'post',
-            ),
-
-            'params' => array (
-                'db' => array(
-                    'submit_name' => 'submit_form',
-                ),
-            ),
-
-            'inputs' => array(
-                'Keyword' => array(
-                    'type' => 'text',
-                    'name' => 'Keyword',
-                    'caption' => _t('_categ_caption_keyword'),
-                    'required' => true,
-                    'checker' => array (
-                        'func' => 'length',
-                        'params' => array(1, 100),
-                        'error' => _t ('_categ_err_keyword'),
-                    ),
-                    'db' => array (
-                        'pass' => 'Xss',
-                    ),
-                ),
-                'Submit' => array (
-                    'type' => 'submit',
-                    'name' => 'submit_form',
-                    'value' => _t('_Submit'),
-                    'colspan' => true,
-                ),
-            ),
-        );
-
-        $this->oForm = new BxTemplFormView($this->aSearchForm);
-        $this->oForm->initChecker();
-    }
-
-    function getBlockCode_Form() {
-        return BxDolTemplate::getInstance()->parseHtmlByName('search_tags_box.html', array('form' => $this->oForm->getCode()));
-    }
-
-    function getBlockCode_Founded($iBlockId)
-    {
-        $aParam = array(
-            'pagination' => getParam('categ_perpage_browse')
-        );
-        $sFilter = bx_get('filter');
-        if ($sFilter !== false)
-            $aParam['filter'] = process_db_input($sFilter);
-        else if ($this->oForm->isSubmittedAndValid())
-            $aParam['filter'] = $this->oForm->getCleanValue('Keyword');
-
-        if (isset($aParam['filter']))
-            return showCategories($aParam, $iBlockId, BX_CATEG_ACTION_SEARCH, false, false, _t('_categ_caption_founded_categ'));
-        else
-            return MsgBox(_t('_Empty'));
-    }
-}
-
-function getPage_All()
-{
-    $aParam = array(
-        'pagination' => getParam('categ_perpage_browse')
-    );
-
-    return showCategories($aParam, 1, BX_CATEG_ACTION_ALL, true, true, _t('_categ_caption_all'));
-}
-
-function getPage_Common()
-{
-    $aParam = array(
-        'pagination' => getParam('categ_perpage_browse'),
-        'common' => true,
-    );
-
-    return showCategories($aParam, 1, BX_CATEG_ACTION_COMMON, true, false, _t('_categ_caption_common'));
-}
-
-function getPage_Users()
-{
-    $aParam = array(
-        'pagination' => getParam('categ_perpage_browse'),
-        'common' => false
-    );
-
-    return showCategories($aParam, 1, BX_CATEG_ACTION_USERS, true, false, _t('_categ_caption_users'));
-}
-
-function getPage_Calendar()
-{
-    $oCalendarPage = new CategoriesCalendarPage();
-
-    return $oCalendarPage->getCode();
-}
-
-function getPage_Search()
-{
-    $oSearchPage = new CategoriesSearchPage();
-
-    return $oSearchPage->getCode();
-}
-
-$sAction = empty($_GET['action']) ? '' : $_GET['action'];
-switch ($sAction)
-{
-    case BX_CATEG_ACTION_COMMON:
-        $sContent = getPage_Common();
-        break;
-
-    case BX_CATEG_ACTION_USERS:
-        $sContent = getPage_Users();
-        break;
-
-    case BX_CATEG_ACTION_CALENDAR:
-        $sContent = getPage_Calendar();
-        break;
-
-    case BX_CATEG_ACTION_SEARCH:
-        $sContent = getPage_Search();
-        break;
-
-    default:
-        $sContent = getPage_All();
-}
-
-if (!$bAjaxMode) {
-    $oTemplate = BxDolTemplate::getInstance();
-    $oTemplate->setPageNameIndex(25);
-    $oTemplate->setPageParams(array(
-        'header' => _t('_Categories'),
-        'header_text' => _t('_Categories'),
-    ));
-    $oTemplate->setPageContent('page_main_code', $sContent);
-
-    check_logged();
-    PageCode();
-}
-else
-    echo $sContent;

+ 0 - 167
inc/classes/BxDolAdminBuilder.php

@@ -1,167 +0,0 @@
-<?php
-/***************************************************************************
-*                            Dolphin Smart Community Builder
-*                              -----------------
-*     begin                : Mon Mar 23 2006
-*     copyright            : (C) 2006 BoonEx Group
-*     website              : http://www.boonex.com/
-* This file is part of Dolphin - Smart Community Builder
-*
-* Dolphin is free software. This work is licensed under a Creative Commons Attribution 3.0 License. 
-* http://creativecommons.org/licenses/by/3.0/
-*
-* Dolphin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
-* without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-* See the Creative Commons Attribution 3.0 License for more details. 
-* You should have received a copy of the Creative Commons Attribution 3.0 License along with Dolphin, 
-* see license.txt file; if not, write to marketing@boonex.com
-***************************************************************************/
-
-
-class BxDolAdminBuilder {
-
-    var $_aContainers;
-    var $_sPostUrl;
-    var $_sTable;
-    var $_sFieldOrder = '`order`';
-    var $_sFieldContainer = '`active`';
-    var $_sFieldId = '`id`';
-    var $_sFieldTitle = '`title`';
-
-	/**
-     * Constructor
-	 * @param array $aContainers - containers, id as key and title as value
-	 */
-	function BxDolAdminBuilder($sTable, $sPostUrl, $aContainers) {
-        $this->_sPostUrl = $sPostUrl;
-        $this->_sTable = $sTable;
-        $this->_aContainers = $aContainers;
-	}
-
-    /**
-     * Process post actions here
-     */
-    function handlePostActions ($aData) {        
-        switch ($aData['action']) {
-            case 'SaveItemsOrder':
-                $this->postSaveItemsOrder ($aData);
-                break;
-        }
-    }
-
-    /**
-     * Post action: SaveItemsOrder
-     */
-    function postSaveItemsOrder ($aData) {        
-        if (!is_array($aData['cont_names']) || !is_array($aData['cont_data']))
-            return;
-        foreach ($aData['cont_names'] as $i => $sKey) {
-            $aIds = $this->_filterIds(explode(',', $aData['cont_data'][$i]));
-            $this->saveItemsOrderForContainer($sKey, $aIds);
-        }
-        echo 'ok';
-    }
-
-    /**
-     * Get ready to print builder page
-     */
-    function getBuilderPage () {
-
-        $sContanersIds = '';
-        $aContainersForTemplate = array ();
-        foreach ($this->_aContainers as $sKey => $sTitle) {
-            $sContanersIds .= '#bx-sort-cont-' . $sKey . ',';
-            $aContainersForTemplate[] = array (
-                'id' => $sKey,
-                'title' => $sTitle,                
-                'bx_repeat:items' => $this->_generateItemsForContainer($sKey),
-            );
-        }
-        $a = array (
-            'post_url' => $this->_sPostUrl,
-            'containers_ids' => substr($sContanersIds, 0, -1),
-            'bx_repeat:containers' => $aContainersForTemplate,
-        );
-        $this->addExternalResources ();
-        return $GLOBALS['oAdmTemplate']->parseHtmlByName('mobile_builder_page.html', $a);
-    }
-
-    /**
-     * Add external recources, like JS and CSS file
-     */
-    function addExternalResources () {
-        $GLOBALS['oAdmTemplate']->addJs(array(
-            'ui.core.js', 
-            'ui.sortable.js'
-        ));
-        $GLOBALS['oAdmTemplate']->addCss(array(
-            'mobile.css',
-            'mobile_builder.css',
-        ));
-    }
-
-    function _filterIds ($a) {
-        $aRet = array ();
-        foreach ($a as $iId) {
-            if (!$iId || $iId < 0)
-                continue;
-            $aRet[] = $iId;
-        }
-        return $aRet;
-    }
-
-    function _generateItemsForContainer ($sKey) {
-        $a = $this->getItemsForContainer ($sKey);
-        foreach ($a as $i => $r) {
-            $a[$i]['item'] = $this->getItem($r);
-        }
-        return $a;
-    }
-
-    /**
-     * Override this function to return data for particular container, defined in costructor.
-     * Each record must have 'id' and 'title' record at least.
-     * @param $sKey container id
-     * @return array
-     */
-    function getItemsForContainer ($sKey) {
-        // !!! override this
-        return array (
-            array ('id' => 1, 'title' => 'Opa1'),
-            array ('id' => 2, 'title' => 'Opa2'),
-        );        
-    }
-
-
-    /**
-     * Override this function to return real item for dragging
-     * @param $aItem array of item properties from database
-     * @return ready html
-     */
-    function getItem ($aItem) {
-        // !!! override this 
-        return $aItem['title'];
-    }
-
-    /**
-     * Override this function to save items order to database, but by default it should be fine in most situations
-     * @param $sKey container id
-     * @param $aOrderedIds arrayy of ids in the right order
-     * @return number of affected rows$aData
-     */
-    function saveItemsOrderForContainer($sKey, $aOrderedIds) {
-        global $MySQL;
-
-        if (!isset($this->_aContainers[$sKey]))
-            return false;
-
-        $iRet = 0;
-        $i = 1;  
-        foreach ($aOrderedIds as $iId) {         
-            $iRet += $MySQL->query("UPDATE {$this->_sTable} SET {$this->_sFieldOrder} = $i, {$this->_sFieldContainer} = '$sKey' WHERE {$this->_sFieldId} = " . (int)$iId);
-            ++$i;
-        }
-        return $iRet;
-    }
-}
-

+ 0 - 265
inc/classes/BxDolCalendar.php

@@ -1,265 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-/**
- * Calendar for your module content
- *
- * Related classes:
- *  BxBaseCalendar - calendar base representation
- *  BxTemplCalendar - custom template representation
- *
- *
- *
- * To add calendar to your content you need to inherit this class and override the following methods:
- * \code
- *  getEntriesNames ()
- *  getData ()
- *  getBaseUri ()
- *  getBrowseUri ()
- * \endcode
- *
- * see each function documentation for more information.
- *
- *
- *
- * Example of usage:
- * After overriding this class and adding necessary methods use thje following code to disp;lay calendar:
- * This code is called from module class:
- *
- * \code
- * function actionCalendar ($iYear = '', $iMonth = '') {
- *     bx_import ('Calendar', $this->_aModule);
- *     $oCalendar = bx_instance ($this->_aModule['class_prefix'] . 'Calendar', array ($iYear, $iMonth, $this->_oDb, $this->_oTemplate, $this->_oConfig));
- *     echo $oCalendar->display();
- * }
- * \endcode
- *
- *
- *
- * Memberships/ACL:
- * vote - ACTION_ID_VOTE
- *
- *
- *
- * Alerts:
- * this class don't risa any alert
- *
- */
-class BxDolCalendar extends BxDol {
-
-    var $iYear, $iMonth, $iPrevYear, $iPrevMonth, $iNextYear, $iNextMonth;
-    var $iFirstWeekDay, $iNumDaysInMonth, $sMonthName, $iWeekStart, $iWeekEnd;
-
-    function BxDolCalendar ($iYear, $iMonth) {
-        parent::BxDol();
-
-        // input values
-        $this->iYear = (int)$iYear ? (int)$iYear : date('Y');
-        $this->iMonth = (int)$iMonth ? (int)$iMonth : date('m');
-        $this->iDay = date('d');
-
-        $this->sMonthName = strftime('%B', mktime(0, 0, 0, $this->iMonth+1, $iDay, $this->iYear));
-        $this->iNumDaysInMonth = date('t', mktime(0, 0, 0, $this->iMonth+1, $iDay, $this->iYear));
-        $this->iFirstWeekDay = (int)date('w', mktime(0, 0, 0, $this->iMonth, 1, $this->iYear));
-
-        // previous month year, month
-        $this->iPrevYear = $this->iYear;
-        $this->iPrevMonth = $this->iMonth - 1;
-        if ( $this->iPrevMonth <= 0 ) {
-            $this->iPrevMonth = 12;
-            $this->iPrevYear--;
-        }
-        // next month year, month
-        $this->iNextYear = $this->iYear;
-        $this->iNextMonth = $this->iMonth + 1;
-        if ( $this->iNextMonth > 12 ) {
-            $this->iNextMonth = 1;
-            $this->iNextYear++;
-        }
-
-        // week config
-        list ($this->iWeekStart, $this->iWeekEnd) = (getParam('sys_calendar_starts_sunday') == 'on') ? array (0, 7) : array (1, 8);
-        if ($this->iFirstWeekDay < $this->iWeekStart)
-            $this->iFirstWeekDay = $this->iWeekEnd-1;
-    }
-
-    function _getWeekNames ($isMiniMode = false)
-    {
-        $sPostfix = '';
-        if ($isMiniMode)
-            $sPostfix = '_mini';
-        if(0 == $this->iWeekStart)
-            $aWeek[] = array('name' => _t('_week_sun' . $sPostfix));
-        $aWeek[] = array('name' => _t('_week_mon' . $sPostfix));
-        $aWeek[] = array('name' => _t('_week_tue' . $sPostfix));
-        $aWeek[] = array('name' => _t('_week_wed' . $sPostfix));
-        $aWeek[] = array('name' => _t('_week_thu' . $sPostfix));
-        $aWeek[] = array('name' => _t('_week_fri' . $sPostfix));
-        $aWeek[] = array('name' => _t('_week_sat' . $sPostfix));
-        if(8 == $this->iWeekEnd)
-            $aWeek[] = array('name' => _t('_week_sun' . $sPostfix));
-        return $aWeek;
-    }
-
-    function _getCalendarGrid (&$aCalendarGrid) {
-
-        // fill calendar with events
-        $aEvents = $this->getData();
-        $aCalendar = array ();
-
-        foreach ($aEvents as $a) {
-            $aCalendar[$a['Day']] += 1;
-        }
-
-        // make calendar grid
-        $aCalendarGrid = array ();
-        $iCurrentDay = 0;
-        for ($i = 0; $i < 6; $i++) {
-            for ($j = $this->iWeekStart; $j < $this->iWeekEnd; $j++) {
-                if ($this->iFirstWeekDay == $j || $i > 0 || $iCurrentDay > 0) {
-                    ++$iCurrentDay;
-                    if ($iCurrentDay > $this->iNumDaysInMonth) break 2;
-                    $aCalendarGrid[$i][$j]['day'] = $iCurrentDay;
-                    $aCalendarGrid[$i][$j]['today'] = ($this->iYear == date('Y') && $this->iMonth == date('m') && $iCurrentDay == $this->iDay);
-                    $aCalendarGrid[$i][$j]['num'] = isset($aCalendar[$iCurrentDay]) && $aCalendar[$iCurrentDay] > 0 ? $aCalendar[$iCurrentDay] : '';
-                }
-            }
-        }
-    }
-
-    function _getCalendar () {
-
-        $sBrowseUri = $this->getBrowseUri();
-        list ($sEntriesSingle, $sEntriesMul) = $this->getEntriesNames ();
-
-        $this->_getCalendarGrid($aCalendarGrid);
-        $aRet = array ();
-        for ($i = 0; $i < 6; $i++) {
-
-            $aRow = array ('bx_repeat:cell');
-            $isRowEmpty = true;
-
-            for ($j = $this->iWeekStart; $j < $this->iWeekEnd; $j++) {
-
-                $aCell = array ();
-
-                if ($aCalendarGrid[$i][$j]['today']) {
-                    $aCell['class'] = 'sys_cal_cell sys_cal_today';
-                    $aCell['day'] = $aCalendarGrid[$i][$j]['day'];
-                    $aCell['bx_if:num'] = array ('condition' => $aCalendarGrid[$i][$j]['num'], 'content' => array(
-                        'num' => $aCalendarGrid[$i][$j]['num'],
-                        'href' => $sBrowseUri . $this->iYear . '/' . $this->iMonth . '/' . $aCell['day'],
-                        'entries' => 1 == $aCalendarGrid[$i][$j]['num'] ? $sEntriesSingle : $sEntriesMul,
-                    ));
-                    $isRowEmpty = false;
-                } elseif (isset($aCalendarGrid[$i][$j]['day'])) {
-                    $aCell['class'] = 'sys_cal_cell';
-                    $aCell['day'] = $aCalendarGrid[$i][$j]['day'];
-                    $aCell['bx_if:num'] = array ('condition' => $aCalendarGrid[$i][$j]['num'], 'content' => array(
-                        'num' => $aCalendarGrid[$i][$j]['num'],
-                        'href' => $sBrowseUri . $this->iYear . '/' . $this->iMonth . '/' . $aCell['day'],
-                        'entries' => 1 == $aCalendarGrid[$i][$j]['num'] ? $sEntriesSingle : $sEntriesMul,
-                    ));
-                    $isRowEmpty = false;
-                } else {
-                    $aCell['class'] = 'sys_cal_cell_blank';
-                    $aCell['day'] = '';
-                    $aCell['bx_if:num'] = array ('condition' => false, 'content' => array(
-                        'num' => '',
-                        'href' => '',
-                        'entries' => '',
-                    ));
-                }
-
-                if ($aCell)
-                    $aRow['bx_repeat:cell'][] = $aCell;
-            }
-
-            if ($aRow['bx_repeat:cell'] && !$isRowEmpty) {
-                $aRet[] = $aRow;
-            }
-        }
-        return $aRet;
-    }
-
-
-    function getTitle () {
-        return $this->sMonthName . ', ' . $this->iYear;
-    }
-
-
-    // override function below to implement your own calendar
-
-    /**
-     * return records for current month, there is mandatory field `Day` - a day for current row
-     * use the following class variables to pass to your database query
-     * $this->iYear, $this->iMonth, $this->iNextYear, $this->iNextMonth
-     *
-     * for example:
-     * \code
-     * return $db->getAll ("
-     *  SELECT *, DAYOFMONTH(FROM_UNIXTIME(`EventStart`)) AS `Day`
-     *  FROM `my_table`
-     *  WHERE `Date` >= UNIX_TIMESTAMP('{$this->iYear}-{$this->iMonth}-1') AND `Date` < UNIX_TIMESTAMP('{$this->iNextYear}-{$this->iNextMonth}-1') AND `Status` = 'approved'");
-     * \endcode
-     */
-    function getData () {
-        // override this func
-        return array();
-    }
-
-    /**
-     * deprecated
-     *
-     * return html for data unit for some day, it is:
-     * - icon 32x32 with link if data have associated image, use $GLOBALS['oFunctions']->sysIcon() to return small icon
-     * - data title with link if data have no associated image
-     */
-    function getUnit (&$aData) {
-        // override this func
-        return '';
-    }
-
-    /**
-     * return base calendar url
-     * year and month will be added to this url automatically
-     * so if your base url is /m/some_module/calendar/, it will be transormed to
-     * /m/some_module/calendar/YEAR/MONTH, like /m/some_module/calendar/2009/3
-     */
-    function getBaseUri () {
-        // override this func
-        return BX_DOL_URL_ROOT;
-    }
-
-    /**
-     * return browse entries url
-     * year and month and day will be added to this url automatically
-     * so if your base url is /m/some_module/browse/calendar/, it will be transormed to
-     * /m/some_module/browse/calendar/YEAR/MONTH/DAY, like /m/some_module/browse/calendar/2009/3/15
-     */
-    function getBrowseUri () {
-        // override this func
-        return '';
-    }
-
-    /**
-     * return entries names in single and plural forms,
-     * for example: ('event', 'events') or ('profile', 'profiles')
-     */
-    function getEntriesNames () {
-        // override this func
-        return array(_t('_item'), _t('_items'));
-    }
-
-    /**
-     * return url for previous/next month
-     */
-    function getMonthUrl ($isNextMoths, $isMiniMode = false) {
-        return $this->getBaseUri () . ($isNextMoths ? "{$this->iNextYear}/{$this->iNextMonth}" : "{$this->iPrevYear}/{$this->iPrevMonth}");
-    }
-}

+ 0 - 214
inc/classes/BxDolCategories.php

@@ -1,214 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import('BxDolTags');
-
-define("CATEGORIES_DIVIDER", ';');
-
-class BxDolCategories extends BxDolTags {
-    var $sAutoApprovePrefix;
-
-    function BxDolCategories ($iPossOwner = 0) {
-        parent::BxDolTags();
-        $this->iViewer = (int)$iPossOwner > 0 ? (int)$iPossOwner : $this->iViewer;
-        $this->sCacheFile = 'sys_objects_categories';
-        $this->sNonParseParams = 'tags_non_parsable';
-        $this->sCacheTable = 'sys_objects_categories';
-        $this->sTagTable = 'sys_categories';
-        $this->aTagFields = array(
-            'id' => 'ID',
-            'type' => 'Type',
-            'tag' => 'Category',
-            'owner' => 'Owner',
-            'status' => 'Status',
-            'date' => 'Date'
-        );
-        $this->sAutoApprovePrefix = 'category_auto_app_';
-        $this->bToLower = false;
-    }
-
-    function getGroupChooser ($sType, $iOwnerId = 0, $bForm = false, $sCustomValues = '') {
-        $a = $this->getCategoriesList ($sType, $iOwnerId, $bForm);
-        $a = array('' => _t('_sys_please_select')) + (is_array($a) ? $a : array());
-
-        $aCustomValues = $this->explodeTags($sCustomValues);
-        foreach($aCustomValues as $iIndex => $sValue)
-            $a[$sValue] = $sValue;
-
-        return array(
-            'type' => 'select_box',
-                'name' => 'Categories',
-                'caption' => _t('_Categories'),
-                'values' => $a,
-                'required' => true,
-                'checker' => array (
-                    'func' => 'avail',
-                    'error' => _t ('_sys_err_categories'),
-                ),
-                'db' => array (
-                    'pass' => 'Categories',
-                ),
-            );
-    }
-
-    function getCategoriesList ($sType, $iOwnerId = 0, $bForm = false) {
-        $oDb = BxDolDb::getInstance();
-        $this->getTagObjectConfig();
-        $sType = array_key_exists($sType, $this->aTagObjects) === true ? $sType : 'bx_photos';
-        $iOwnerId = (int)$iOwnerId;
-        $sqlQuery = $oDb->prepare("SELECT `cat`.`{$this->aTagFields['tag']}`
-                     FROM `{$this->sTagTable}` `cat`
-                     WHERE (`cat`.`{$this->aTagFields['owner']}` = 0 OR `cat`.`{$this->aTagFields['owner']}` = ?)
-                     AND `cat`.`{$this->aTagFields['type']}` = ? AND `cat`.`{$this->aTagFields['status']}` = 'active'
-                     __sqlAdd__
-                     GROUP BY `cat`.`{$this->aTagFields['tag']}`", $iOwnerId, $sType);
-
-        $aAddSql = array();
-
-        if (getParam($this->sAutoApprovePrefix . $sType) != 'on')
-            $aAddSql[] = " AND `cat`.`{$this->aTagFields['status']}` = 'active'";
-
-        $sqlAdd = '';
-        foreach ($aAddSql as $sValue)
-            $sqlAdd .= $sValue;
-
-        $sqlQuery = str_replace('__sqlAdd__', $sqlAdd, $sqlQuery);
-
-        $a = $oDb->getAll($sqlQuery);
-        foreach ($a as $aList) {
-            if ($bForm)
-                $aCatList[$aList[$this->aTagFields['tag']]] = $aList[$this->aTagFields['tag']];
-            else
-                $aCatList[] = $aList[$this->aTagFields['tag']];
-        }
-        return $aCatList;
-    }
-
-    function getTagList($aParam) {
-        $oDb = BxDolDb::getInstance();
-        $sLimit = '';
-        $aTotalTags = array();
-        $sGroupBy = "GROUP BY `{$this->aTagFields['tag']}`";
-
-        if (isset($aParam['limit']))
-        {
-            $sLimit = 'LIMIT ';
-            if (isset($aParam['start']))
-                $sLimit .= (int)$aParam['start'] . ', ';
-            $sLimit .= (int)$aParam['limit'];
-        }
-
-        $sCondition = $this->_getSelectCondition($aParam);
-
-        if (isset($aParam['orderby']))
-        {
-            if ($aParam['orderby'] == 'popular')
-                $sGroupBy .= " ORDER BY `count` DESC, `{$this->aTagFields['tag']}` ASC";
-            else if ($aParam['orderby'] == 'recent')
-                $sGroupBy .= " ORDER BY `{$this->aTagFields['date']}` DESC, `{$this->aTagFields['tag']}` ASC";
-        }
-
-        $sDiffCount = '';
-
-        $sqlQuery = "SELECT
-            `tgs`.`{$this->aTagFields['tag']}` as `{$this->aTagFields['tag']}`,
-            `tgs`.`{$this->aTagFields['date']}` as `{$this->aTagFields['date']}`,
-            COUNT(`tgs`.`{$this->aTagFields['id']}`) AS `count`
-            FROM `{$this->sTagTable}` `tgs` $sCondition $sGroupBy $sLimit";
-
-        $aTags = $oDb->getAll($sqlQuery);
-        foreach ($aTags as $aTag) {
-            if ((int)$aTag['count'] > 0)
-                $aTotalTags[$aTag[$this->aTagFields['tag']]] = (int)$aTag['count'];
-        }
-
-        return $aTotalTags;
-    }
-
-    function getTagsCount($aParam) {
-
-        $sCondition = $this->_getSelectCondition($aParam);
-        $sqlQuery = "SELECT count(DISTINCT `tgs`.`{$this->aTagFields['tag']}`) AS `count` FROM
-            `{$this->sTagTable}` `tgs` {$sCondition}";
-
-        $oDb = BxDolDb::getInstance();
-        return $oDb->getOne($sqlQuery);
-    }
-
-    function _getSelectCondition($aParam)
-    {
-        $sCondition = "WHERE `tgs`.`{$this->aTagFields['owner']}` != 0";
-
-        if (!$aParam)
-            return $sCondition;
-
-        $oDb = BxDolDb::getInstance();
-
-        if (isset($aParam['common'])) {
-            $aUnitsCommon = $this->_getCommonCategories($aParam['type']);
-            $sCondition .= " AND `tgs`.`{$this->aTagFields['tag']}` " . (!$aParam['common'] ? 'NOT' : '') .
-                " IN (" . $oDb->implode_escape($aUnitsCommon) . ")";
-        }
-
-        if (isset($aParam['type']) && $aParam['type'])
-            $sCondition .= $oDb->prepare(" AND `tgs`.`{$this->aTagFields['type']}` = ?", $aParam['type']);
-
-        if (isset($aParam['status']) && $aParam['status'])
-            $sCondition .= $oDb->prepare(" AND tgs.`{$this->aTagFields['status']}` = ?", $aParam['status']);
-        else
-            $sCondition .= " AND tgs.`{$this->aTagFields['status']}` = 'active'";
-
-        if (isset($aParam['filter']) && $aParam['filter'])
-            $sCondition .= " AND `tgs`.`{$this->aTagFields['tag']}` LIKE '%" . $oDb->escape($aParam['filter']) . "%'";
-
-        if (isset($aParam['date']) && $aParam['date'])
-            $sCondition .= $oDb->prepare(" AND DATE(`tgs`.`{$this->aTagFields['date']}`) = DATE(?)", $aParam['date']['year'] . '-' . $aParam['date']['month'] . '-' . $aParam['date']['day']);
-
-        return $sCondition;
-    }
-
-    function _getCommonCategories($sModule = '') {
-        $oDb = BxDolDb::getInstance();
-
-        $sCondModule = $sModule ? $oDb->prepare(" AND `Type` = ?", $sModule) : '';
-        $aCtegories = $oDb->getAll("SELECT `Category` FROM `sys_categories` WHERE `Owner` = 0 $sCondModule");
-
-        $aResult = array();
-        foreach ($aCtegories as $aCategory)
-            $aResult[] = $aCategory['Category'];
-        return $aResult;
-    }
-
-    function _insertTags ($aTagsSet) {
-        $oDb = BxDolDb::getInstance();
-
-        $aTags = $this->explodeTags($aTagsSet['tagString']);
-        if( !$aTags )
-            return;
-        $sFields = '';
-        foreach ($this->aTagFields as $sKey => $sValue)
-            $sFields .= $sValue .', ';
-
-        $aCommonCat = $this->_getCommonCategories($aTagsSet['type']);
-        $bAutoApprove = getParam($this->sAutoApprovePrefix . $aTagsSet['type']) == 'on';
-        $aTagsSet['owner'] = $this->iViewer;
-        $sFields = trim($sFields, ', ');
-        $sValues = '';
-        foreach( $aTags as $sTag )
-        {
-            $aTagsSet['tag'] = addslashes( $sTag );
-            $aTagsSet['status'] = $bAutoApprove || in_array($aTagsSet['tag'], $aCommonCat) ? 'active' : 'passive';
-            $sValues .= $oDb->prepare("(?, ?, ?, ?, ?, CURRENT_TIMESTAMP), ", $aTagsSet['id'], $aTagsSet['type'], $aTagsSet['tag'], $aTagsSet['owner'], $aTagsSet['status']);
-        }
-        $sValues = trim($sValues, ', ');
-
-        $sqlQuery = "INSERT INTO `{$this->sTagTable}` ($sFields) VALUES $sValues";
-        $oDb->res($sqlQuery);
-    }
-}
-

+ 0 - 5
inc/classes/BxDolCronCmd.php

@@ -33,7 +33,6 @@ class BxDolCronCmd extends BxDolCron {
 
     function clean_database()
     {
-        $db_clean_visits = (int) getParam("db_clean_members_visits");
         $db_clean_mem_levels = (int) getParam("db_clean_mem_levels");
 
         //clear from `sys_acl_levels_members`
@@ -44,10 +43,6 @@ class BxDolCronCmd extends BxDolCron {
         if (db_res("DELETE FROM `sys_messages` WHERE FIND_IN_SET('sender', `Trash`) AND FIND_IN_SET('recipient', `Trash`)"))
             db_res("OPTIMIZE TABLE `sys_messages`");
 
-        //clear from `sys_ip_members_visits`
-        if (db_res("DELETE FROM `sys_ip_members_visits` WHERE `DateTime` < NOW() - INTERVAL $db_clean_visits DAY"))
-            db_res("OPTIMIZE TABLE `sys_ip_members_visits`");
-
         // clear ban table
         if (db_res("DELETE FROM `sys_admin_ban_list` WHERE `DateTime` + INTERVAL `Time` SECOND < NOW()"))
             db_res("OPTIMIZE TABLE `sys_admin_ban_list`");

+ 16 - 46
inc/classes/BxDolForm.php

@@ -143,8 +143,6 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *      - XssHtml - this text cam have HTML tags, so perform XSS vulnerabilies cleaning before saving to database.
  *      - All - do not perform any conversion and pass text as it is, be careful with this, use it only when no other function can be used, and make all necessary security checking by yourself.
  *      - Preg - perform regular expression on the text before saving data to database, regular expression can be provided in db_params field.
- *      - Tags - tags are validated and correctly joined using delimiter symbol.
- *      - Categories - categories are validated and correctly joined using delimiter symbol.
  *      - Boolean - this is used for checkboxes with 'on' value which need to be converted into boolean value.
  *      - Set - convert set of values into bit integer before saving to database, and restore bit integer into array of values upon restoration from database, it can be used for select_multiple and checkbox_set field types. 
  *      Please note that values for this field must be 1,2,4,8,... (values of power of 2); the max number of values are 31 for 32bit hardware and 63 for 64bit hardware.
@@ -196,7 +194,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Can be used here: Length, Preg, Avail, Email 
  *          Make no sense to use it here: Date, DateTime, Captcha
  *      - db_pass
- *          Can be used here: Int, Float, Xss, All, Preg, Tags, Categories 
+ *          Can be used here: Int, Float, Xss, All, Preg
  *          Make no sense to use it here: Date, DateTime, XssHtml, Boolean, Set
  * 
  * password - password input field. It is displayed as HTML input element with invisible input.
@@ -211,7 +209,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Date, DateTime, Captcha, Email.
  *      - db_pass
  *          Can be used here: Xss, All. 
- *          Make no sense to use it here: Int, Float, Date, DateTime, XssHtml, Boolean, Set, Preg, Tags, Categories.
+ *          Make no sense to use it here: Int, Float, Date, DateTime, XssHtml, Boolean, Set, Preg.
  * 
  * textarea - multiline input field. It can be displayed as regular textarea field or as visual HTML editor.
  *      Parameters:
@@ -228,7 +226,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Can be used here: Length, Preg, Avail 
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
- *          Can be used here: Int, Float, Xss, XssHtml, All, Preg, Tags, Categories 
+ *          Can be used here: Int, Float, Xss, XssHtml, All, Preg
  *          Make no sense to use it here: Date, DateTime, Boolean, Set
  * 
  * number - number input field. It is displayed as HTL text input, but with limited width. Also some browsers can add additional controls to this field.
@@ -243,7 +241,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int, Float 
- *          Make no sense to use it here: Xss, XssHtml, All, Preg, Tags, Categories, Date, DateTime, Boolean, Set
+ *          Make no sense to use it here: Xss, XssHtml, All, Preg, Date, DateTime, Boolean, Set
  *  
  * select - select one from all available values. It is displayed as HTML combo-box.
  *      Parameters:
@@ -257,7 +255,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int, Float, Xss, All, Preg 
- *          Make no sense to use it here: Date, DateTime, Tags, Categories, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Date, DateTime, XssHtml, Boolean, Set
  *  
  * select_multiple - select one, multiple or all items from all available values. It is displayed as HTML multiple selection input.
  *      Parameters:
@@ -271,7 +269,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int 
- *          Make no sense to use it here: Float, Xss, All, Preg, Date, DateTime, Tags, Categories, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Float, Xss, All, Preg, Date, DateTime, XssHtml, Boolean, Set
  * 
  * switcher - on/off switcher. It is displayed as custom HTML element with own styles, but on background it works as regular HTML checkbox element. 
  *      Parameters:
@@ -285,7 +283,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int, Float, Xss, All, Preg, Boolean 
- *          Make no sense to use it here: Date, DateTime, Tags, Categories, XssHtml, Set
+ *          Make no sense to use it here: Date, DateTime, XssHtml, Set
  * 
  * checkbox - one checkbox. Displayed as HTML checkbox input element.
  *      Parameters:
@@ -299,7 +297,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int, Float, Xss, All, Preg, Boolean 
- *          Make no sense to use it here: Date, DateTime, Tags, Categories, XssHtml, Set
+ *          Make no sense to use it here: Date, DateTime, XssHtml, Set
  * 
  * checkbox_set - set of checkboxes. It is displayed as set of checkboxes. It is displayed in one row if number of items is equal or less than 3 or every item is displayed on new line if there is more than 3 items in the set.
  *      Parameters:
@@ -313,7 +311,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int 
- *          Make no sense to use it here: Float, Xss, All, Preg, Date, DateTime, Tags, Categories, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Float, Xss, All, Preg, Date, DateTime, XssHtml, Boolean, Set
  *  
  * radio_set - set of radio buttons. It is displayed as set of radio buttons. It is displayed in one row if number of items is equal or less than 3 or every item is displayed on new line if there is more than 3 items in the set.
  *      Parameters:
@@ -327,7 +325,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int, Float, Xss, All, Preg 
- *          Make no sense to use it here: Date, DateTime, Tags, Categories, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Date, DateTime, XssHtml, Boolean, Set
  * 
  * slider - select some numeric value within the range using slider control. It is displayed as jQuery UI HTML control, but on background it works as regular HTML text input element.
  *      Parameters:
@@ -345,7 +343,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Preg, Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Int, Float 
- *          Make no sense to use it here: Xss, XssHtml, All, Preg, Tags, Categories, Date, DateTime, Boolean, Set
+ *          Make no sense to use it here: Xss, XssHtml, All, Preg, Date, DateTime, Boolean, Set
  * 
  * doublerange - select range values within the range using slider control.
  *      Parameters:
@@ -363,7 +361,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Preg, Email, Date, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Xss, All, Preg 
- *          Make no sense to use it here: Int, Float, XssHtml, Tags, Categories, Date, DateTime, Boolean, Set
+ *          Make no sense to use it here: Int, Float, XssHtml, Date, DateTime, Boolean, Set
  * 
  * datepicker - date selection control. It is displayed as HTML text input control, when clicking on this input then popup with date selector control is appeared.
  *      Parameters:
@@ -377,7 +375,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Length, Preg, Avail, Email, DateTime, Captcha
  *      - db_pass
  *          Can be used here: Date 
- *          Make no sense to use it here: Int, Float, Xss, All, Preg, Tags, Categories, DateTime, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Int, Float, Xss, All, Preg, DateTime, XssHtml, Boolean, Set
  * 
  * datetime - date/time selection control.
  *      Parameters:
@@ -391,7 +389,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Length, Preg, Avail, Email, Date, Captcha
  *      - db_pass
  *          Can be used here: DateTime 
- *          Make no sense to use it here: Int, Float, Xss, All, Preg, Tags, Categories, Date, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Int, Float, Xss, All, Preg, Date, XssHtml, Boolean, Set
  * 
  * captcha - image captcha. Displayed as image with some text along with HTML text input for entering displayed on the image text.
  *      Parameters:
@@ -405,7 +403,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Make no sense to use it here: Length, Preg, Avail, Email, Date, DateTime
  *      - db_pass
  *          Can be used here: Xss, All, Preg 
- *          Make no sense to use it here: Int, Float, Tags, Categories, Date, DateTime, XssHtml, Boolean, Set
+ *          Make no sense to use it here: Int, Float, Date, DateTime, XssHtml, Boolean, Set
  *  
  * hidden - hidden input field. Displayed as hidden HTML input.
  *      Parameters:
@@ -418,7 +416,7 @@ define('BX_DATA_VALUES_ADDITIONAL', 'LKey2'); ///< Use additional values for dat
  *          Can be used here: Length, Preg, Avail, Email, Date, DateTime 
  *          Make no sense to use it here: Captcha
  *      - db_pass
- *          Can be used here: Int, Float, Xss, All, Preg, Tags, Categories, Date, DateTime, XssHtml, Boolean 
+ *          Can be used here: Int, Float, Xss, All, Preg, Date, DateTime, XssHtml, Boolean 
  *          Make no sense to use it here: Set
  * 
  * file - file upload input. Displayed as file upload HTML input.
@@ -1437,34 +1435,6 @@ class BxDolFormCheckerHelper {
         }
         return '';
     }
-    function passTags ($s) {
-        if (is_array($s)) {
-            $a = array ();
-            foreach ($s as $k => $v) {
-                $a[$k] = $this->_passTags ($v);
-            }
-            return $a;
-        }
-        return $this->_passTags($s);
-    }
-    function _passTags ($s) {
-        require_once(BX_DIRECTORY_PATH_INC . 'tags.inc.php');
-        $sTags = $this->passXss ($s);
-        $aTags = explodeTags($sTags);
-        return implode(",", $aTags);
-    }
-    function passCategories ($aa) {
-        if (is_array($aa)) {
-            $a = array ();
-            foreach ($aa as $k => $v)
-                if ($v)
-                    $a[$k] = $this->passXss ($v);
-        } else {
-            $a = $this->passXss ($aa);
-        }
-        return is_array($a) ? implode(CATEGORIES_DIVIDER, $a) : $a;
-
-    }
     function passBoolean ($s) {
         if (is_array($s)) {
             $a = array ();

+ 0 - 9
inc/classes/BxDolLanguagesQuery.php

@@ -263,15 +263,6 @@ class BxDolLanguagesQuery extends BxDolDb implements iBxDolSingleton {
 
         return (int)$this->getOne("SELECT FOUND_ROWS()");
     }
-    /*
-     * The method is not used anywhere right now. 
-     */
-    function getStringParams($iKeyId) {
-        $iKeyId = (int)$iKeyId;
-        $sSql = $this->prepare("SELECT `IDParam`, `Description` FROM `sys_localization_string_params` WHERE `IDKey`=? ORDER BY `IDParam`", $iKeyId);
-
-        return $this->getPairs($sSql, 'IDParam', 'Description');
-    }
 }
 
 /** @} */

+ 0 - 101
inc/classes/BxDolMobileTemplate.php

@@ -1,101 +0,0 @@
-<?php
-
-/***************************************************************************
-*                            Dolphin Smart Community Builder
-*                              -------------------
-*     begin                : Mon Mar 23 2006
-*     copyright            : (C) 2007 BoonEx Group
-*     website              : http://www.boonex.com
-* This file is part of Dolphin - Smart Community Builder
-*
-* Dolphin is free software; you can redistribute it and/or modify it under
-* the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the
-* License, or  any later version.
-*
-* Dolphin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
-* without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-* See the GNU General Public License for more details.
-* You should have received a copy of the GNU General Public License along with Dolphin,
-* see license.txt file; if not, write to marketing@boonex.com
-***************************************************************************/
-
-bx_import('BxDolModuleTemplate');
-
-class BxDolMobileTemplate extends BxDolModuleTemplate {
-
-    var $_aMobileJs = array ('jquery.js');
-    var $_aMobileCss = array ('mobile.css');
-
-	/*
-	 * Constructor.
-	 */
-	function BxDolMobileTemplate(&$oConfig, &$oDb, $sRootPath = BX_DIRECTORY_PATH_ROOT, $sRootUrl = BX_DOL_URL_ROOT) {
-		parent::BxDolModuleTemplate($oConfig, $oDb, $sRootPath, $sRootUrl);
-	}
-
-	function addMobileCss($mixedFiles) {
-        if (is_array($mixedFiles))
-            $this->_aMobileJs = array_merge($this->_aMobileJs, $mixedFiles);
-        else
-            $this->_aMobileJs[] = $mixedFiles;
-	}
-
-	function addMobileJs($mixedFiles) {
-        if (is_array($mixedFiles))
-            $this->_aMobileCss = array_merge($this->_aMobileCss, $mixedFiles);
-        else
-            $this->_aMobileCss[] = $mixedFiles;
-	}
-    
-    function pageCode ($sTitle, $isDesignBox = true, $isWrap = true) {
-
-        global $_page;        
-        global $_page_cont;
-
-        $GLOBALS['BxDolTemplateJs'] = array ();
-        $GLOBALS['BxDolTemplateCss'] = array ();
-        $this->addCss($this->_aMobileCss);
-        $this->addJs($this->_aMobileJs);
-
-        $sOutput = $this->pageEnd();
-
-        if ($isDesignBox) {
-            $aVars = array ('content' => $sOutput);
-            $sOutput = $this->parseHtmlByName('mobile_box.html', $aVars); 
-        }
-
-        if ($isWrap) {
-            $aVars = array ('content' => $sOutput);
-            $sOutput = $this->parseHtmlByName('mobile_page_padding.html', $aVars);
-        }
-
-        $iNameIndex = 11;
-        $_page['name_index'] = $iNameIndex; 
-        $_page['header'] = $sTitle ? $sTitle : $GLOBALS['site']['title'];
-        $_page_cont[$iNameIndex]['page_main_code'] = $sOutput;
-
-        PageCode($this);
-    }
-
-    function displayNoData($sCaption = false) {
-        $this->displayMsg(_t('_Empty'), $sCaption);
-    }
-
-    function displayAccessDenied($sCaption = false) {
-        $this->displayMsg(_t('_Access denied'), $sCaption);
-    }
-
-    function displayPageNotFound() {
-        header("HTTP/1.0 404 Not Found");
-        $this->displayMsg(_t('_sys_request_page_not_found_cpt'));
-    }
-
-    function displayMsg($sMsg, $bTranslateMsg = false, $sTitle = false, $bTranslateMsg = false) {
-        $sMsg = $bTranslateMsg ? _t($sMsg) : $sMsg;
-        $sTitle = $bTranslateMsg ? _t($sTitle) : $sTitle;
-        echo $sMsg;        
-	    $this->pageCode($sTitle ? $sTitle : $sMsg);
-    }
-}
-

+ 0 - 1
inc/classes/BxDolProfile.php

@@ -249,7 +249,6 @@ class BxDolProfile extends BxDol implements iBxDolProfile {
         // delete associated content 
         // TODO: remake deletion of associated content
         $this->_oQuery->res("DELETE FROM `sys_acl_levels_members` WHERE `IDMember` = {$ID}");
-        $this->_oQuery->res("DELETE FROM `sys_tags` WHERE `ObjID` = {$ID} AND `Type` = 'profile'");
 
         // delete profile
         if (!$this->_oQuery->delete($ID))

+ 0 - 243
inc/classes/BxDolTags.php

@@ -1,243 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-define('BX_DOL_TAGS_DIVIDER', ';,');
-
-class BxDolTags extends BxDol {
-    var $iViewer;
-
-    var $sCacheFile;
-    var $sNonParseParams;
-
-    var $sCacheTable;
-    var $sTagTable;
-    var $aTagFields;
-
-    var $aTagObjects = array();
-
-    var $sTagsDivider = BX_DOL_TAGS_DIVIDER;
-    var $bToLower = true;
-
-    function BxDolTags () {
-        parent::BxDol();
-
-        $this->iViewer = getLoggedId();
-
-        $this->sCacheFile = 'sys_objects_tag';
-        $this->sNonParseParams = 'tags_non_parsable';
-        $this->sCacheTable = 'sys_objects_tag';
-        $this->sTagTable = 'sys_tags';
-        $this->aTagFields = array(
-            'id' => 'ObjID',
-            'type' => 'Type',
-            'tag' => 'Tag',
-            'date' => 'Date'
-        );
-        $this->aObjFields = array(
-            'id' => 'ID',
-            'name' => 'ObjectName',
-            'query' => 'Query',
-            'perm_param' => 'PermalinkParam',
-            'perm_enable' => 'EnabledPermalink',
-            'perm_disable' => 'DisabledPermalink',
-            'lang_key' => 'LangKey'
-        );
-    }
-
-    function getTagObjectConfig ($aParam = array()) {
-        $oDb = BxDolDb::getInstance();
-
-        if (!empty($aParam)) {
-            $sqlQuery = "SELECT obj.*
-                FROM  `{$this->sCacheTable}` obj LEFT JOIN  `{$this->sTagTable}` tgs
-                ON obj.`{$this->aObjFields['name']}` = tgs.`{$this->aTagFields['type']}` " .
-                $this->_getSelectCondition($aParam) . " GROUP BY obj.`{$this->aObjFields['name']}` ORDER BY obj.`ID`";
-            $this->aTagObjects = $oDb->getAllWithKey($sqlQuery, 'ObjectName');
-        } else {
-            $this->aTagObjects = $oDb->fromCache($this->sCacheFile, 'getAllWithKey',
-                "SELECT * FROM `{$this->sCacheTable}`", 'ObjectName');
-        }
-    }
-
-    function explodeTags ($sText) {
-        $aTags = preg_split( '/['.$this->sTagsDivider.']/', $sText, 0, PREG_SPLIT_NO_EMPTY );
-        foreach( $aTags as $iInd => $sTag ) {
-            if( strlen( $sTag ) < 3 )
-                unset( $aTags[$iInd] );
-            else
-                $aTags[$iInd] = $this->bToLower ? mb_strtolower( $sTag , 'UTF-8') : $sTag;
-        }
-        $aTags = array_unique($aTags);
-        $sTagsNotParsed = getParam( $this->sNonParseParams );
-        $aTagsNotParsed = preg_split( '/[, ]/', $sTagsNotParsed, 0, PREG_SPLIT_NO_EMPTY );
-
-        $aTags = array_diff( $aTags, $aTagsNotParsed ); //drop non parsable tags
-        return $aTags;
-    }
-
-    function reparseObjTags( $sType, $iID ) {
-        $this->getTagObjectConfig();
-        $oDb = BxDolDb::getInstance();
-
-        $iID = (int)$iID;
-        if ($iID > 0 && array_key_exists($sType, $this->aTagObjects) && isset($this->aTagObjects[$sType]['Query'])) {
-            $sQuery = $oDb->prepare("DELETE FROM `{$this->sTagTable}` WHERE `{$this->aTagFields['id']}` = ? AND `{$this->aTagFields['type']}` = ?", $iID, $sType);
-            $oDb->res($sQuery);
-            $sqlQuery = str_replace('{iID}', $oDb->escape($iID), $this->aTagObjects[$sType]['Query']);
-            $sTags = $oDb->getOne($sqlQuery);
-            if( !strlen( $sTags ) )
-                return;
-            $aTagsSet = array(
-                'id' => $iID,
-                'type' => $sType,
-                'tagString' => $sTags,
-                'date' => 'CURRENT_TIMESTAMP'
-            );
-            $this->_insertTags($aTagsSet);
-        }
-    }
-
-    function getTagList($aParam)
-    {
-        $oDb = BxDolDb::getInstance();
-        $sLimit = '';
-        $aTotalTags = array();
-        $sJoin = isset($aParam['admin']) ? $this->_getProfileJoin(isset($aParam['admin'])) : '';
-        $sGroupBy = "GROUP BY `{$this->aTagFields['tag']}`";
-
-        if (isset($aParam['limit']) && (int)$aParam['limit'])
-        {
-            $sLimit = 'LIMIT ';
-            if (isset($aParam['start']) && (int)$aParam['start'])
-                $sLimit .= (int)$aParam['start'] . ', ';
-            $sLimit .= (int)$aParam['limit'];
-        }
-
-        $sCondition = $this->_getSelectCondition($aParam);
-
-        if (isset($aParam['orderby']))
-        {
-            if ($aParam['orderby'] == 'popular')
-                $sGroupBy .= " ORDER BY `count` DESC, `{$this->aTagFields['tag']}` ASC";
-            else if ($aParam['orderby'] == 'recent')
-                $sGroupBy .= " ORDER BY `{$this->aTagFields['date']}` DESC, `{$this->aTagFields['tag']}` ASC";
-        }
-
-        $sqlQuery = "SELECT
-            `tgs`.`{$this->aTagFields['tag']}` as `{$this->aTagFields['tag']}`,
-            `tgs`.`{$this->aTagFields['date']}` as `{$this->aTagFields['date']}`,
-            COUNT(`tgs`.`{$this->aTagFields['id']}`) AS `count`
-            FROM `{$this->sTagTable}` `tgs` $sJoin $sCondition $sGroupBy $sLimit";
-        $aTotalTags = $oDb->getPairs($sqlQuery, $this->aTagFields['tag'], 'count');
-
-        if(isset($aParam['orderby']) && $aParam['orderby'] == 'popular')
-            ksort($aTotalTags);
-
-        return $aTotalTags;
-    }
-
-    function getTagsCount($aParam)
-    {
-        $oDb = BxDolDb::getInstance();
-        $sCondition = $this->_getSelectCondition($aParam);
-        $sJoin = isset($aParam['admin']) ? $this->_getProfileJoin(isset($aParam['admin'])) : '';
-        $sqlQuery = "SELECT count(DISTINCT `tgs`.`{$this->aTagFields['tag']}`) AS `count` FROM
-            `{$this->sTagTable}` `tgs` $sJoin {$sCondition}";
-
-        return $oDb->getOne($sqlQuery);
-    }
-
-    function getFirstObject()
-    {
-        if ($this->aTagObjects)
-        {
-            $aKeys = array_keys($this->aTagObjects);
-            return $aKeys[0];
-        }
-
-        return '';
-    }
-
-    function getHrefWithType($sType)
-    {
-        $aCurrent = $this->aTagObjects[$sType];
-        $bPermalinks = getParam($aCurrent['PermalinkParam'])=='on' ? true : false;
-
-        return $bPermalinks ? $aCurrent['EnabledPermalink'] : $aCurrent['DisabledPermalink'];
-    }
-
-    function _getSelectCondition($aParam)
-    {
-        $oDb = BxDolDb::getInstance();
-
-        $sCondition = "WHERE `tgs`.`{$this->aTagFields['tag']}` IS NOT NULL";
-
-        if (!$aParam)
-            return $sCondition;
-
-        if (isset($aParam['type']) && $aParam['type'])
-            $sCondition .= $oDb->prepare(" AND `tgs`.`{$this->aTagFields['type']}` = ?", $aParam['type']);
-
-        if (isset($this->aTagFields['owner']))
-        {
-            $sCondition .= ' AND ';
-
-            if (isset($aParam['admin']))
-            {
-                if ($aParam['admin'])
-                    $sCondition .= $oDb->prepare('(`profiles`.`Role` & ?)', BX_DOL_ROLE_ADMIN);
-                else
-                    $sCondition .= $oDb->prepare('NOT (`profiles`.`Role` & ?)', BX_DOL_ROLE_ADMIN);
-            }
-            else
-                $sCondition .= "`tgs`.`{$this->aTagFields['owner']}` <> 0";
-        }
-
-        if (isset($aParam['filter']) && $aParam['filter'])
-            $sCondition .= " AND `tgs`.`{$this->aTagFields['tag']}` LIKE '%" . $oDb->escape($aParam['filter']) . "%'";
-
-        if (isset($aParam['date']) && $aParam['date'])
-            $sCondition .= $oDb->prepare(" AND DATE(`tgs`.`{$this->aTagFields['date']}`) = DATE(?)", $aParam['date']['year'] . '-' . $aParam['date']['month'] . '-' . $aParam['date']['day']);
-
-        return $sCondition;
-    }
-
-    function _getProfileJoin($bAdmin)
-    {
-        if (isset($this->aTagFields['owner']) && $bAdmin)
-            return "INNER JOIN `Profiles` `profiles` ON `tgs`.`{$this->aTagFields['owner']}` = `profiles`.`ID`";
-
-        return '';
-    }
-
-    function _insertTags ($aTagsSet) {
-        $oDb = BxDolDb::getInstance();
-
-        $aTags = $this->explodeTags( $aTagsSet['tagString'] );
-        if( !$aTags )
-            return;
-        $sFields = '';
-        foreach ($this->aTagFields as $sKey => $sValue)
-            $sFields .= $sValue .', ';
-
-        $sFields = trim($sFields, ', ');
-        $sValues = '';
-        foreach( $aTags as $sTag ) {
-            $sTag = trim($sTag);
-            $aTagsSet['tag'] = $sTag;
-            $sQuery = $oDb->prepare("SELECT COUNT(*) FROM `sys_tags`
-                WHERE `ObjID` = ? AND `Type` = ? AND `Tag` = ?", $aTagsSet['id'], $aTagsSet['type'], $aTagsSet['tag']);
-            if( !$oDb->getOne($sQuery) ) {
-                 $sValues  = $oDb->prepare("(?, ?, ?, ?)", $aTagsSet['id'], $aTagsSet['type'], $aTagsSet['tag'], $aTagsSet['date']);
-                 $sqlQuery = "INSERT INTO `{$this->sTagTable}` ($sFields) VALUES $sValues";
-                 $oDb->res($sqlQuery);
-            }
-        }
-    }
-}
-

+ 0 - 1
inc/classes/BxDolTemplate.php

@@ -23,7 +23,6 @@ define('BX_PAGE_DEFAULT', 0); ///< default, regular page
 define('BX_PAGE_CLEAR', 2); ///< clear page, without any headers and footers
 define('BX_PAGE_POPUP', 44); ///< popup page, without any headers and footers
 define('BX_PAGE_TRANSITION', 150); ///< transition page with redirect to display some msg, like 'please wait', without headers footers
-define('BX_PAGE_MOBILE', 11); ///< mobile page
 
 /**
  * Template engine.

+ 0 - 50
inc/tags.inc.php

@@ -1,50 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-
-function explodeTags( $text ) {
-
-    //$text = preg_replace( '/[^a-zA-Z0-9_\'-]/', ' ', $text );
-
-    $aTags = preg_split( '/[' . BX_DOL_TAGS_DIVIDER . ']/', $text, 0, PREG_SPLIT_NO_EMPTY );
-
-    foreach( $aTags as $iInd => $sTag )
-    {
-        if( strlen( $sTag ) < 3 )
-            unset( $aTags[$iInd] );
-        else
-            $aTags[$iInd] = trim(mb_strtolower( $sTag , 'UTF-8'));
-    }
-    $aTags = array_unique( $aTags );
-    $sTagsNotParsed = getParam( 'tags_non_parsable' );
-    $aTagsNotParsed = preg_split( '/[' . BX_DOL_TAGS_DIVIDER . ']/', $sTagsNotParsed, 0, PREG_SPLIT_NO_EMPTY );
-
-    $aTags = array_diff( $aTags, $aTagsNotParsed ); //drop non parsable tags
-
-    return $aTags;
-}
-
-function storeTags( $iID, $sTags, $sType ) {
-    $oDb = BxDolDb::getInstance();
-
-    $sQuery = $oDb->prepare("DELETE FROM `sys_tags` WHERE `ID` = ? AND `Type` = ?", $iID, $sType);
-    $oDb->res($sQuery);
-
-    $aTags = explodeTags($sTags);
-    foreach ($aTags as $sTag) {
-        $sQuery = $oDb->prepare("INSERT INTO `sys_tags` VALUES (?, ?, ?, CURRENT_TIMESTAMP)", $sTag, $iID, $sType);
-        $oDb->res($sQuery, 0);
-    }
-}
-
-function reparseObjTags( $sType, $iID ) {
-    bx_import('BxDolTags');
-    $oTags = new BxDolTags();
-    $oTags->reparseObjTags($sType, $iID);
-}
-

+ 1 - 231
install/sql/system.sql

@@ -7,27 +7,13 @@ SET @sSysVersion = '8.0.0';
 -- --------------------------------------------------------
 
 SET NAMES 'utf8';
-DROP TABLE IF EXISTS `sys_categories`, `sys_keys`, `sys_objects_editor`, `sys_objects_captcha`, `sys_objects_social_sharing`, `sys_objects_categories`, `sys_objects_cmts`, `sys_cmts_images`, `sys_cmts_images_preview`, `sys_cmts_images2entries`, `sys_email_templates`, `sys_options`, sys_options_types, `sys_options_categories`, `sys_ip_members_visits`, `sys_localization_categories`, `sys_localization_keys`, `sys_localization_languages`, `sys_localization_string_params`, `sys_localization_strings`, `sys_acl_actions`, `sys_acl_actions_track`, `sys_acl_matrix`, `sys_acl_level_prices`, `sys_acl_levels`, `sys_sessions`, `sys_acl_levels_members`, `sys_objects_search`, `sys_stat_site`, `sys_alerts`, `sys_alerts_handlers`, `sys_injections`, `sys_injections_admin`, `sys_modules`, `sys_modules_file_tracks`, `sys_permalinks`, `sys_objects_privacy`, `sys_privacy_defaults`, `sys_privacy_groups`, `sys_tags`, `sys_objects_tag`, `sys_transactions`, `sys_objects_auths`, `sys_objects_vote`, `sys_objects_view`, `sys_cron_jobs`, `sys_menu_mobile`, `sys_menu_mobile_pages`, `sys_objects_storage`, `sys_objects_uploader`, `sys_storage_user_quotas`, `sys_storage_tokens`, `sys_storage_ghosts`, `sys_storage_mime_types`, `sys_objects_transcoder_images`, `sys_transcoder_images_files`, `sys_transcoder_images_filters`, `sys_accounts`, `sys_profiles`, `sys_objects_form`, `sys_form_displays`, `sys_form_inputs`, `sys_form_display_inputs`, `sys_form_pre_lists`, `sys_form_pre_values`, `sys_menu_templates`, `sys_objects_menu`, `sys_menu_sets`, `sys_menu_items`, `sys_objects_grid`, `sys_grid_fields`, `sys_grid_actions`, `sys_objects_connection`, `sys_profiles_conn_subscriptions`, `sys_profiles_conn_friends`, `sys_objects_page`, `sys_pages_layouts`, `sys_pages_design_boxes`, `sys_pages_blocks`, `sys_images`, `sys_std_pages`, `sys_std_widgets`, `sys_std_pages_widgets`;
+DROP TABLE IF EXISTS `sys_keys`, `sys_objects_editor`, `sys_objects_captcha`, `sys_objects_social_sharing`, `sys_objects_cmts`, `sys_cmts_images`, `sys_cmts_images_preview`, `sys_cmts_images2entries`, `sys_email_templates`, `sys_options`, sys_options_types, `sys_options_categories`, `sys_localization_categories`, `sys_localization_keys`, `sys_localization_languages`, `sys_localization_strings`, `sys_acl_actions`, `sys_acl_actions_track`, `sys_acl_matrix`, `sys_acl_levels`, `sys_sessions`, `sys_acl_levels_members`, `sys_objects_search`, `sys_stat_site`, `sys_alerts`, `sys_alerts_handlers`, `sys_injections`, `sys_injections_admin`, `sys_modules`, `sys_modules_file_tracks`, `sys_permalinks`, `sys_objects_privacy`, `sys_privacy_defaults`, `sys_privacy_groups`, `sys_objects_auths`, `sys_objects_vote`, `sys_objects_view`, `sys_cron_jobs`, `sys_objects_storage`, `sys_objects_uploader`, `sys_storage_user_quotas`, `sys_storage_tokens`, `sys_storage_ghosts`, `sys_storage_mime_types`, `sys_objects_transcoder_images`, `sys_transcoder_images_files`, `sys_transcoder_images_filters`, `sys_accounts`, `sys_profiles`, `sys_objects_form`, `sys_form_displays`, `sys_form_inputs`, `sys_form_display_inputs`, `sys_form_pre_lists`, `sys_form_pre_values`, `sys_menu_templates`, `sys_objects_menu`, `sys_menu_sets`, `sys_menu_items`, `sys_objects_grid`, `sys_grid_fields`, `sys_grid_actions`, `sys_objects_connection`, `sys_profiles_conn_subscriptions`, `sys_profiles_conn_friends`, `sys_objects_page`, `sys_pages_layouts`, `sys_pages_design_boxes`, `sys_pages_blocks`, `sys_images`, `sys_std_pages`, `sys_std_widgets`, `sys_std_pages_widgets`;
 ALTER DATABASE DEFAULT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci';
 
 
 -- --------------------------------------------------------
 
 
-CREATE TABLE `sys_categories` (
-  `Category` varchar(32) NOT NULL default '',
-  `ID` int(10) unsigned NOT NULL default '0',
-  `Type` varchar(20) NOT NULL default 'photo',
-  `Owner` int(10) unsigned NOT NULL,
-  `Status` enum('active', 'passive') NOT NULL default 'active',
-  `Date` timestamp NOT NULL default CURRENT_TIMESTAMP,
-  PRIMARY KEY  (`Category`, `ID`, `Type`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
-
--- --------------------------------------------------------
-
-
 CREATE TABLE `sys_keys` (
   `key` varchar(32) NOT NULL,
   `data` text NOT NULL,
@@ -104,23 +90,6 @@ CREATE TABLE `sys_objects_auths` (
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
 
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_objects_categories`
---
-
-CREATE TABLE `sys_objects_categories` (
-  `ID` int(10) unsigned NOT NULL auto_increment,
-  `ObjectName` varchar(50) NOT NULL,
-  `Query` text  NOT NULL,
-  `PermalinkParam` varchar(50) NOT NULL default '',
-  `EnabledPermalink` varchar(100) NOT NULL default '',
-  `DisabledPermalink` varchar(100) NOT NULL default '',
-  `LangKey` varchar(100) NOT NULL default '',
-  PRIMARY KEY (`ID`)
-) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
-
 -- --------------------------------------------------------
 
 --
@@ -278,8 +247,6 @@ SET @iCategoryId = LAST_INSERT_ID();
 INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
 (@iCategoryId, 'lang_default', '_adm_stg_cpt_option_lang_default', '', 'select', 'PHP:bx_import(''BxDolLanguages''); $aValues = BxDolLanguages::getInstance()->getLanguages(false, true); $aResult = array(); foreach($aValues as $sKey => $sValue) $aResult[] = array(\'key\' => $sKey, \'value\' => $sValue); return $aResult;', '', '', 1),
 
-(@iCategoryId, 'sys_calendar_starts_sunday', '_adm_stg_cpt_option_sys_calendar_starts_sunday', '', 'checkbox', '', '', '', 2),
-
 (@iCategoryId, 'sys_format_date', '_adm_stg_cpt_option_sys_format_date', 'D MMM YYYY', 'digit', '', '', '', 3),
 (@iCategoryId, 'sys_format_time', '_adm_stg_cpt_option_sys_format_time', 'HH:mm', 'digit', '', '', '', 4),
 (@iCategoryId, 'sys_format_datetime', '_adm_stg_cpt_option_sys_format_datetime', 'D MMM YYYY h:mm:ss a', 'digit', '', '', '', 5),
@@ -327,17 +294,6 @@ INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `ex
 (@iCategoryId, 'sys_template_cache_compress_enable', '_adm_stg_cpt_option_sys_template_cache_compress_enable', 'on', 'checkbox', '', '', '', 14);
 
 
---
--- CATEGORY: Categories
---
-INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `hidden`, `order`) VALUES (@iTypeId, 'categories', '_adm_stg_cpt_category_categories', 0, 5);
-SET @iCategoryId = LAST_INSERT_ID();
-
-INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
-(@iCategoryId, 'categ_perpage_browse', '_adm_stg_cpt_option_categ_perpage_browse', '30', 'digit', '', '', '', 1),
-(@iCategoryId, 'categ_show_columns', '_adm_stg_cpt_option_categ_show_columns', '5', 'digit', '', '', '', 2);
-
-
 --
 -- CATEGORY: General
 --
@@ -399,7 +355,6 @@ INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `hidden`, `or
 SET @iCategoryId = LAST_INSERT_ID();
 
 INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
-(@iCategoryId, 'db_clean_members_visits', 'Delete stored members IPs older than (days)', '90', 'digit', '', '', '', 1),
 (@iCategoryId, 'db_clean_mem_levels', 'Delete membership levels expired for (days)', '30', 'digit', '', '', '', 2);
 
 
@@ -410,7 +365,6 @@ INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `hidden`, `or
 SET @iCategoryId = LAST_INSERT_ID();
 
 INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
-(@iCategoryId, 'enable_member_store_ip', '_adm_stg_cpt_option_enable_member_store_ip', 'on', 'checkbox', '', '', '', 1),
 (@iCategoryId, 'sys_security_impact_threshold_log', '_adm_stg_cpt_option_sys_security_impact_threshold_log', '-1', 'digit', '', '', '', 4),
 (@iCategoryId, 'sys_security_impact_threshold_block', '_adm_stg_cpt_option_sys_security_impact_threshold_block', '-1', 'digit', '', '', '', 5),
 (@iCategoryId, 'sys_security_form_token_enable', '_adm_stg_cpt_option_sys_security_form_token_enable', 'on', 'checkbox', '', '', '', 6),
@@ -446,40 +400,9 @@ INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `ex
 (@iCategoryId, 'sys_storage_s3_domain', '_adm_stg_cpt_option_sys_storage_s3_domain', '', 'digit', '', '', '', 5);
 
 
---
--- CATEGORY: Tags
---
-INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `hidden`, `order`) VALUES (@iTypeId, 'tags', '_adm_stg_cpt_category_tags', 0, 14);
-SET @iCategoryId = LAST_INSERT_ID();
-
-INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
-(@iCategoryId, 'tags_non_parsable', '_adm_stg_cpt_option_tags_non_parsable', 'hi, hey, hello, all, i, i''m, i''d, am, for, in, to, a, the, on, it''s, is, my, of, are, from, i''m, me, you, and, we, not, will, at, where, there', 'text', '', '', '', 1),
-(@iCategoryId, 'tags_perpage_browse', '_adm_stg_cpt_option_tags_perpage_browse', '30', 'digit', '', '', '', 2),
-(@iCategoryId, 'tags_show_limit', '_adm_stg_cpt_option_tags_show_limit', '50', 'digit', '', '', '', 3);
-
-
 -- --------------------------------------------------------
 
 
---
--- Table structure for table `sys_ip_members_visits`
---
-
-CREATE TABLE `sys_ip_members_visits` (
-  `ID` int(11) NOT NULL AUTO_INCREMENT,
-  `MemberID` int(10) unsigned NOT NULL,
-  `From` int(10) unsigned NOT NULL,
-  `DateTime` datetime NOT NULL,
-  PRIMARY KEY (`ID`),
-  KEY `From` (`From`)
-) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_localization_categories`
---
-
 CREATE TABLE `sys_localization_categories` (
   `ID` int(6) unsigned NOT NULL auto_increment,
   `Name` varchar(255) NOT NULL default '',
@@ -487,20 +410,10 @@ CREATE TABLE `sys_localization_categories` (
   UNIQUE KEY `Name` (`Name`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
---
--- Dumping data for table `sys_localization_categories`
---
-
 INSERT INTO `sys_localization_categories` VALUES
 (1, 'System'),
 (2, 'Custom');
 
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_localization_keys`
---
-
 CREATE TABLE `sys_localization_keys` (
   `ID` int(10) unsigned NOT NULL auto_increment,
   `IDCategory` int(6) unsigned NOT NULL default '0',
@@ -510,12 +423,6 @@ CREATE TABLE `sys_localization_keys` (
   FULLTEXT KEY `KeyFilter` (`Key`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_localization_languages`
---
-
 CREATE TABLE `sys_localization_languages` (
   `ID` int(10) unsigned NOT NULL auto_increment,
   `Name` varchar(5) NOT NULL default '',
@@ -526,26 +433,6 @@ CREATE TABLE `sys_localization_languages` (
   UNIQUE KEY `Name` (`Name`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
-
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_localization_string_params`
---
-
-CREATE TABLE `sys_localization_string_params` (
-  `IDKey` int(10) unsigned NOT NULL default '0',
-  `IDParam` tinyint(3) unsigned NOT NULL default '0',
-  `Description` varchar(255) NOT NULL default '',
-  PRIMARY KEY  (`IDKey`,`IDParam`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_localization_strings`
---
-
 CREATE TABLE `sys_localization_strings` (
   `IDKey` int(10) unsigned NOT NULL default '0',
   `IDLanguage` int(10) unsigned NOT NULL default '0',
@@ -664,19 +551,6 @@ INSERT INTO `sys_acl_matrix` (`IDLevel`, `IDAction`) VALUES
 (@iPremium, 13);
 
 
-
-CREATE TABLE `sys_acl_level_prices` (
-  `id` int(11) NOT NULL auto_increment,
-  `IDLevel` int(10) unsigned NOT NULL DEFAULT '0',
-  `Days` int(10) unsigned NOT NULL default '1',
-  `Price` float unsigned NOT NULL default '1',
-  `Order` int(11) NOT NULL,
-  PRIMARY KEY (`id`),
-  UNIQUE KEY `type` (`IDLevel`,`Days`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
-
-
 CREATE TABLE `sys_acl_levels` (
   `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
   `Name` varchar(100) NOT NULL default '',
@@ -807,65 +681,6 @@ CREATE TABLE `sys_objects_search` (
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 ;
 
 
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_tags`
---
-
-CREATE TABLE `sys_tags` (
-  `Tag` varchar(32) NOT NULL default '',
-  `ObjID` int(10) unsigned NOT NULL default '0',
-  `Type` varchar(20) NOT NULL default 'profile',
-  `Date` timestamp NOT NULL default CURRENT_TIMESTAMP,
-  PRIMARY KEY  (`Tag`,`ObjID`,`Type`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
---
--- Dumping data for table `sys_tags`
---
-
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_objects_tag`
---
-
-CREATE TABLE `sys_objects_tag` (
-  `ID` int(10) unsigned NOT NULL auto_increment,
-  `ObjectName` varchar(50) NOT NULL,
-  `Query` text NOT NULL,
-  `PermalinkParam` varchar(50) NOT NULL default '',
-  `EnabledPermalink` varchar(100) NOT NULL default '',
-  `DisabledPermalink` varchar(100) NOT NULL default '',
-  `LangKey` varchar(100) NOT NULL default '',
-  PRIMARY KEY  (`ID`)
-) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_transactions`
---
-
-CREATE TABLE `sys_transactions` (
-  `ID` bigint(20) unsigned NOT NULL auto_increment,
-  `IDMember` int(10) unsigned NOT NULL default '0',
-  `IDProvider` smallint(6) unsigned NOT NULL default '0',
-  `gtwTransactionID` varchar(32) NOT NULL default '',
-  `Date` datetime NOT NULL default '0000-00-00 00:00:00',
-  `Amount` float unsigned NOT NULL default '0',
-  `Currency` varchar(3) NOT NULL default 'USD',
-  `Status` enum('pending','approved','declined') NOT NULL default 'pending',
-  `Data` text NOT NULL,
-  `Description` tinytext,
-  `Note` tinytext,
-  PRIMARY KEY  (`ID`),
-  KEY `IDMember` (`IDMember`),
-  KEY `IDProvider` (`IDProvider`),
-  KEY `gtwTransactionID` (`gtwTransactionID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
 -- --------------------------------------------------------
 
 --
@@ -1171,46 +986,6 @@ INSERT INTO `sys_cron_jobs` (`name`, `time`, `class`, `file`, `eval`) VALUES
 
 -- --------------------------------------------------------
 
-CREATE TABLE IF NOT EXISTS `sys_menu_mobile_pages` (
-  `id` int(11) NOT NULL AUTO_INCREMENT,
-  `page` varchar(32) NOT NULL,
-  `title` varchar(255) NOT NULL,
-  `order` int(11) NOT NULL,
-  PRIMARY KEY (`id`),
-  UNIQUE KEY `page` (`page`)
-) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
-
-INSERT INTO `sys_menu_mobile_pages` (`id`, `page`, `title`, `order`) VALUES
-(1, 'homepage', '_adm_mobile_page_homepage', 1),
-(2, 'profile', '_adm_mobile_page_profile', 2);
-
-CREATE TABLE IF NOT EXISTS `sys_menu_mobile` (
-  `id` int(11) NOT NULL AUTO_INCREMENT,
-  `type` varchar(32) NOT NULL,
-  `page` varchar(32) NOT NULL,
-  `title` varchar(255) NOT NULL,
-  `icon` varchar(255) NOT NULL,
-  `action` int(11) NOT NULL,
-  `action_data` varchar(255) NOT NULL,
-  `eval_bubble` text NOT NULL,
-  `eval_hidden` text NOT NULL,
-  `order` int(11) NOT NULL,
-  `active` int(11) NOT NULL,
-  PRIMARY KEY (`id`)
-) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
-
-INSERT INTO `sys_menu_mobile` (`type`, `page`, `title`, `icon`, `action`, `action_data`, `eval_bubble`, `eval_hidden`, `order`, `active`) VALUES
-('system', 'homepage', '_sys_mobile_status', 'home_status.png', 1, '', '', '', 1, 1),
-('system', 'homepage', '_sys_mobile_mail', 'home_messages.png', 3, '', 'return getNewLettersNum({member_id});', '', 2, 1),
-('system', 'homepage', '_sys_mobile_friends', 'home_friends.png', 4, '', 'return getFriendRequests({member_id});', '', 3, 1),
-('system', 'homepage', '_sys_mobile_info', 'home_info.png', 5, '', '', '', 4, 1),
-('system', 'homepage', '_sys_mobile_search', 'home_search.png', 6, '', '', '', 5, 1),
-('system', 'profile', '_sys_mobile_profile_info', '', 5, '', '', '', 1, 1),
-('system', 'profile', '_sys_mobile_profile_contact', '', 3, '', '', '', 2, 1),
-('system', 'profile', '_sys_mobile_profile_friends', '', 4, '', 'return getFriendNumber(''{profile_id}'');', '', 3, 1);
-
--- --------------------------------------------------------
-
 CREATE TABLE IF NOT EXISTS `sys_objects_storage` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `object` varchar(64) NOT NULL,
@@ -3425,11 +3200,6 @@ INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
 (3, 'builder_permissions', '_adm_page_cpt_builder_permissions', '_adm_page_cpt_builder_permissions', 'pi-builder-permissions.png');
 SET @iIdBuilderPermissions = LAST_INSERT_ID();
 
-INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
-(3, 'builder_mobile', '_adm_page_cpt_builder_mobile', '_adm_page_cpt_builder_mobile', 'pi-builder-mobile.png');
-SET @iIdBuilderMobile = LAST_INSERT_ID();
-
-
 --
 -- Dumping data for table `sys_std_widgets` and `sys_std_pages_widgets`
 -- Home Page

+ 0 - 6
member.php

@@ -37,12 +37,6 @@ if (isset($_POST['ID'])) { // login form is submitted
         $oAccount = BxDolAccount::getInstance($oForm->getCleanValue('ID'));
         $aAccount = bx_login($oAccount->id(), ($oForm->getCleanValue('rememberMe') ? true : false));
 
-        // Storing IP Address // TODO: move somewhere
-        if (getParam('enable_member_store_ip') == 'on') {
-            $iCurLongIP = sprintf("%u", ip2long(getVisitorIP()));
-            db_res("INSERT INTO `sys_ip_members_visits` SET `MemberID` = '{$aAccount['id']}', `From`='{$iCurLongIP}', `DateTime`=NOW()");
-        }
-
         $sUrlRelocate = $oForm->getCleanValue('relocate');
         if (!$sUrlRelocate || BX_DOL_URL_ROOT == $sUrlRelocate || basename($sUrlRelocate) == 'join.php' || 0 != strncmp($sUrlRelocate, BX_DOL_URL_ROOT, strlen(BX_DOL_URL_ROOT)))
             $sUrlRelocate = BX_DOL_ROLE_ADMIN == $oForm->getRole() ? BX_DOL_URL_STUDIO . 'launcher.php' : BX_DOL_URL_ROOT . 'member.php';

+ 0 - 14
modules/boonex/antispam/install/config.php

@@ -49,9 +49,7 @@ $aConfig = array(
 		'recompile_profile_fields' => 0,
 		'recompile_comments' => 0,
 		'recompile_member_actions' => 0,
-		'recompile_tags' => 0,
 		'recompile_votes' => 0,
-		'recompile_categories' => 0,
 		'recompile_search' => 0,
 		'recompile_injections' => 0,
 		'recompile_permalinks' => 0,
@@ -71,9 +69,7 @@ $aConfig = array(
 		'recompile_profile_fields' => 0,
 		'recompile_comments' => 0,
 		'recompile_member_actions' => 0,
-		'recompile_tags' => 0,
 		'recompile_votes' => 0,
-		'recompile_categories' => 0,
 		'recompile_search' => 0,
 		'recompile_injections' => 0,
 		'recompile_permalinks' => 0,
@@ -91,9 +87,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -109,9 +103,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -129,12 +121,6 @@ $aConfig = array(
 	 */
 	'language_category' => 'Antispam',
 
-	/**
-	 * Permissions Section
-	 */
-    'install_permissions' => array(),
-    'uninstall_permissions' => array(),
-
 	/**
 	 * Introduction and Conclusion Section.
 	 */

+ 0 - 9
modules/boonex/developer/install/config.php

@@ -50,9 +50,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 1,
         'recompile_alerts' => 0,
@@ -72,9 +70,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -95,11 +91,6 @@ $aConfig = array(
      * Category for language keys.
      */
     'language_category' => 'BoonEx Developer',
-    /**
-     * Permissions Section
-     */
-    'install_permissions' => array(),
-    'uninstall_permissions' => array(),
     /**
      * Introduction and Conclusion Section.
      */

+ 0 - 41
modules/boonex/english/data/langs/system.xml

@@ -17,8 +17,6 @@
 	<string name="_CONTACT_H1"><![CDATA[Contact]]></string>
 	<string name="_Can not delete comments with replies"><![CDATA[Cannot delete comments with replies]]></string>
 	<string name="_Cancel"><![CDATA[Cancel]]></string>
-	<string name="_Categories"><![CDATA[Categories]]></string>
-	<string name="_Category"><![CDATA[Category]]></string>
 	<string name="_Content"><![CDATA[Content]]></string>
 	<string name="_Count"><![CDATA[Count]]></string>
 	<string name="_DELETE_SUCCESS"><![CDATA[You account was successfully deleted]]></string>
@@ -60,7 +58,6 @@
 	<string name="_No"><![CDATA[No]]></string>
 	<string name="_No actions allowed for this membership"><![CDATA[No actions allowed for this membership]]></string>
 	<string name="_No such comment"><![CDATA[No such comment]]></string>
-	<string name="_People_Calendar"><![CDATA[Calendar]]></string>
 	<string name="_Period"><![CDATA[Period]]></string>
 	<string name="_Please Wait"><![CDATA[Please Wait]]></string>
 	<string name="_Please enter n1-n2 characters"><![CDATA[Please enter {0}-{1} characters]]></string>
@@ -79,8 +76,6 @@
 	<string name="_Subject"><![CDATA[Subject]]></string>
 	<string name="_Submit"><![CDATA[Submit]]></string>
 	<string name="_Success"><![CDATA[Success]]></string>
-	<string name="_Tag"><![CDATA[Tag]]></string>
-	<string name="_Tags"><![CDATA[Tags]]></string>
 	<string name="_There_are_no_comments_yet"><![CDATA[There are no comments yet]]></string>
 	<string name="_Times allowed"><![CDATA[Times allowed]]></string>
 	<string name="_Title"><![CDATA[Title]]></string>
@@ -1079,7 +1074,6 @@
 	<string name="_adm_reg_title"><![CDATA[<a href="https://www.boonex.com/paymentprovider/payment">Purchase a Dolphin License</a> and Register Your Site.]]></string>
 	<string name="_adm_scs_operation_done"><![CDATA[]]></string>
 	<string name="_adm_stg_cpt_category_cache"><![CDATA[Cache]]></string>
-	<string name="_adm_stg_cpt_category_categories"><![CDATA[Categories]]></string>
 	<string name="_adm_stg_cpt_category_general"><![CDATA[General]]></string>
 	<string name="_adm_stg_cpt_category_languages"><![CDATA[Languages]]></string>
 	<string name="_adm_stg_cpt_category_massmailer"><![CDATA[Massmailer]]></string>
@@ -1090,15 +1084,11 @@
 	<string name="_adm_stg_cpt_category_site_settings"><![CDATA[Site Settings]]></string>
 	<string name="_adm_stg_cpt_category_storage"><![CDATA[Storage]]></string>
 	<string name="_adm_stg_cpt_category_system"><![CDATA[System]]></string>
-	<string name="_adm_stg_cpt_category_tags"><![CDATA[Tags]]></string>
 	<string name="_adm_stg_cpt_category_templates"><![CDATA[Templates]]></string>
 	<string name="_adm_stg_cpt_option_boonex_aff_id"><![CDATA[My BoonEx Affiliate ID]]></string>
-	<string name="_adm_stg_cpt_option_categ_perpage_browse"><![CDATA[Number of categories to show on browse pages]]></string>
-	<string name="_adm_stg_cpt_option_categ_show_columns"><![CDATA[Number of columns to show categories]]></string>
 	<string name="_adm_stg_cpt_option_currency_code"><![CDATA[Currency code (for checkout system)]]></string>
 	<string name="_adm_stg_cpt_option_currency_sign"><![CDATA[Currency sign (for display purposes only)]]></string>
 	<string name="_adm_stg_cpt_option_enable_gd"><![CDATA[Use GD library for image processing]]></string>
-	<string name="_adm_stg_cpt_option_enable_member_store_ip"><![CDATA[When a member login into dolphin that the IP address from that person will be saved into the database]]></string>
 	<string name="_adm_stg_cpt_option_enable_template"><![CDATA[Show Template Switcher]]></string>
 	<string name="_adm_stg_cpt_option_expire_notification_days"><![CDATA[Number of days before membership expiration to notify members ( -1 = after expiration )]]></string>
 	<string name="_adm_stg_cpt_option_expire_notify_once"><![CDATA[Notify members about membership expiration only once (every day otherwise)]]></string>
@@ -1112,7 +1102,6 @@
 	<string name="_adm_stg_cpt_option_site_title"><![CDATA[Site Title]]></string>
 	<string name="_adm_stg_cpt_option_sys_cache_memcache_host"><![CDATA[Memcached server host]]></string>
 	<string name="_adm_stg_cpt_option_sys_cache_memcache_port"><![CDATA[Memcached server port]]></string>
-	<string name="_adm_stg_cpt_option_sys_calendar_starts_sunday"><![CDATA[Does Calender start on Sunday?]]></string>
 	<string name="_adm_stg_cpt_option_sys_db_cache_enable"><![CDATA[Enable DB cache]]></string>
 	<string name="_adm_stg_cpt_option_sys_db_cache_engine"><![CDATA[DB cache engine (other than File option may require custom server setup)]]></string>
 	<string name="_adm_stg_cpt_option_sys_format_date"><![CDATA[Date Format]]></string>
@@ -1147,9 +1136,6 @@
 	<string name="_adm_stg_cpt_option_sys_template_cache_js_enable"><![CDATA[Enable cache for JS files]]></string>
 	<string name="_adm_stg_cpt_option_sys_template_page_width_max"><![CDATA[Max page width(in pixels)]]></string>
 	<string name="_adm_stg_cpt_option_sys_template_page_width_min"><![CDATA[Min page width(in pixels)]]></string>
-	<string name="_adm_stg_cpt_option_tags_non_parsable"><![CDATA[Non-parsable tags (type all tags in lower case, delimit them by comma)]]></string>
-	<string name="_adm_stg_cpt_option_tags_perpage_browse"><![CDATA[Number of tags to show on browse pages]]></string>
-	<string name="_adm_stg_cpt_option_tags_show_limit"><![CDATA[Number of tags to show limit]]></string>
 	<string name="_adm_stg_cpt_option_template"><![CDATA[Default Template]]></string>
 	<string name="_adm_stg_cpt_option_use_like_operator"><![CDATA[Use operator LIKE for search (recommended for small content)]]></string>
 	<string name="_adm_stg_cpt_type_system"><![CDATA[System]]></string>
@@ -1237,7 +1223,6 @@
 	<string name="_adm_txt_modules_process_success"><![CDATA[Done]]></string>
 	<string name="_adm_txt_modules_recompile_alerts"><![CDATA[Recompiling alerts:]]></string>
 	<string name="_adm_txt_modules_recompile_browse"><![CDATA[Recompiling browse:]]></string>
-	<string name="_adm_txt_modules_recompile_categories"><![CDATA[Recompiling categories:]]></string>
 	<string name="_adm_txt_modules_recompile_comments"><![CDATA[Recompiling comments:]]></string>
 	<string name="_adm_txt_modules_recompile_global_paramaters"><![CDATA[Recompiling global paramaters:]]></string>
 	<string name="_adm_txt_modules_recompile_injections"><![CDATA[Recompiling injections:]]></string>
@@ -1250,7 +1235,6 @@
 	<string name="_adm_txt_modules_recompile_profile_fields"><![CDATA[Recompiling profile fields:]]></string>
 	<string name="_adm_txt_modules_recompile_search"><![CDATA[Recompiling search:]]></string>
 	<string name="_adm_txt_modules_recompile_site_stats"><![CDATA[Recompiling site statistics:]]></string>
-	<string name="_adm_txt_modules_recompile_tags"><![CDATA[Recompiling tags:]]></string>
 	<string name="_adm_txt_modules_recompile_votes"><![CDATA[Recompiling votes:]]></string>
 	<string name="_adm_txt_modules_show_conclusion"><![CDATA[Conclusion from vendor:]]></string>
 	<string name="_adm_txt_modules_show_introduction"><![CDATA[Introduction from vendor:]]></string>
@@ -1275,23 +1259,8 @@
 	<string name="_adm_wgt_cpt_polyglot"><![CDATA[Polyglot]]></string>
 	<string name="_adm_wgt_cpt_settings"><![CDATA[Settings]]></string>
 	<string name="_adm_wgt_cpt_store"><![CDATA[Store]]></string>
-	<string name="_all_tags"><![CDATA[All Tags]]></string>
 	<string name="_are you sure?"><![CDATA[Are you sure?]]></string>
 	<string name="_bottom_text"><![CDATA[2002-{0}. Product of <a class="bottom_text" href="http://www.boonex.com/">BoonEx Group</a>.]]></string>
-	<string name="_categ_by_day"><![CDATA[Categories By Day: ]]></string>
-	<string name="_categ_caption_all"><![CDATA[All Categories]]></string>
-	<string name="_categ_caption_calendar"><![CDATA[Calendar]]></string>
-	<string name="_categ_caption_common"><![CDATA[Common Categories]]></string>
-	<string name="_categ_caption_keyword"><![CDATA[Keyword]]></string>
-	<string name="_categ_caption_users"><![CDATA[User Categories]]></string>
-	<string name="_categ_err_keyword"><![CDATA[Please specify keyword from 1 to 100 characters]]></string>
-	<string name="_categ_order_none"><![CDATA[None]]></string>
-	<string name="_categ_order_order_by"><![CDATA[Order by: ]]></string>
-	<string name="_categ_order_popular"><![CDATA[Popular]]></string>
-	<string name="_categ_order_recent"><![CDATA[Recent]]></string>
-	<string name="_categ_plural"><![CDATA[Categories]]></string>
-	<string name="_categ_single"><![CDATA[Category]]></string>
-	<string name="_categ_users"><![CDATA[User Categories]]></string>
 	<string name="_cmt_block_comments_title"><![CDATA[Comments ({0})]]></string>
 	<string name="_cmt_browse_all"><![CDATA[All]]></string>
 	<string name="_cmt_browse_friends"><![CDATA[Friends]]></string>
@@ -1328,7 +1297,6 @@
 	<string name="_month_next"><![CDATA[Next Month]]></string>
 	<string name="_month_prev"><![CDATA[Previous Month]]></string>
 	<string name="_no limit"><![CDATA[no limit]]></string>
-	<string name="_popular_tags"><![CDATA[Popular Tags]]></string>
 	<string name="_powered_by"><![CDATA[Powered by]]></string>
 	<string name="_see_more"><![CDATA[see more]]></string>
 	<string name="_show_replacement"><![CDATA[Show]]></string>
@@ -1433,7 +1401,6 @@ If it is not enabled then please consider implement this optimization, since it
 	<string name="_sys_designbox_13"><![CDATA[Content + background + padding]]></string>
 	<string name="_sys_designbox_2"><![CDATA[Empty box]]></string>
 	<string name="_sys_designbox_3"><![CDATA[Content + background]]></string>
-	<string name="_sys_err_categories"><![CDATA[please specify at least one category]]></string>
 	<string name="_sys_et_txt_about_us"><![CDATA[About us]]></string>
 	<string name="_sys_et_txt_body_activation"><![CDATA[<bx_include_auto:_email_header.html />
 <p>Hello,</p>
@@ -1939,14 +1906,6 @@ If it is not enabled then please consider implement this optimization, since it
 	<string name="_sys_uploader_upload_canceled"><![CDATA[Too bad. Upload canceled.]]></string>
 	<string name="_sys_edit_profile"><![CDATA[Edit profile]]></string>
 	<string name="_sys_x_days"><![CDATA[{0} days]]></string>
-	<string name="_tags_by_day"><![CDATA[Tags By Day: ]]></string>
-	<string name="_tags_caption_keyword"><![CDATA[Keyword]]></string>
-	<string name="_tags_caption_module"><![CDATA[Module]]></string>
-	<string name="_tags_err_keyword"><![CDATA[Please specify keyword from 1 to 100 characters]]></string>
-	<string name="_tags_founded_tags"><![CDATA[Search Results]]></string>
-	<string name="_tags_plural"><![CDATA[Tags]]></string>
-	<string name="_tags_recent"><![CDATA[Recently Added Tags]]></string>
-	<string name="_tags_single"><![CDATA[Tag]]></string>
 	<string name="_to"><![CDATA[to]]></string>
 	<string name="_top"><![CDATA[Top]]></string>
 	<string name="_uknown"><![CDATA[unknown]]></string>

+ 13 - 1
modules/boonex/membership_pricing/install/sql/install.sql

@@ -1,3 +1,14 @@
+
+CREATE TABLE `sys_acl_level_prices` (
+  `id` int(11) NOT NULL auto_increment,
+  `IDLevel` int(10) unsigned NOT NULL DEFAULT '0',
+  `Days` int(10) unsigned NOT NULL default '1',
+  `Price` float unsigned NOT NULL default '1',
+  `Order` int(11) NOT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `type` (`IDLevel`,`Days`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
 INSERT INTO `sys_objects_grid` (`object`, `source_type`, `source`, `table`, `field_id`, `field_order`, `field_active`, `paginate_url`, `paginate_per_page`, `paginate_simple`, `paginate_get_start`, `paginate_get_per_page`, `filter_fields`, `filter_fields_translatable`, `filter_mode`, `sorting_fields`, `sorting_fields_translatable`, `override_class_name`, `override_class_file`) VALUES
 ('sys_studio_acl_prices', 'Sql', 'SELECT * FROM `sys_acl_level_prices` WHERE 1 ', 'sys_acl_level_prices', 'id', 'Order', '', '', 100, NULL, 'start', '', 'Days,Price', '', 'like', '', '', 'BxTemplStudioPermissionsPrices', '');
 
@@ -10,4 +21,5 @@ INSERT INTO `sys_grid_fields` (`object`, `name`, `title`, `width`, `translatable
 INSERT INTO `sys_grid_actions` (`object`, `type`, `name`, `title`, `icon`, `confirm`, `order`) VALUES
 ('sys_studio_acl_prices', 'independent', 'add', '_adm_prm_btn_add_price', '', 0, 1),
 ('sys_studio_acl_prices', 'single', 'edit', '', 'pencil', 0, 1),
-('sys_studio_acl_prices', 'single', 'delete', '', 'remove', 1, 2);
+('sys_studio_acl_prices', 'single', 'delete', '', 'remove', 1, 2);
+

+ 5 - 1
modules/boonex/membership_pricing/install/sql/uninstall.sql

@@ -1,3 +1,7 @@
+
+DROP TABLE IF EXISTS `sys_acl_level_prices`;
+
 DELETE FROM `sys_objects_grid` WHERE `object`='sys_studio_acl_prices';
 DELETE FROM `sys_grid_fields` WHERE `object`='sys_studio_acl_prices';
-DELETE FROM `sys_grid_actions` WHERE `object`='sys_studio_acl_prices';
+DELETE FROM `sys_grid_actions` WHERE `object`='sys_studio_acl_prices';
+

+ 0 - 14
modules/boonex/profiler/install/config.php

@@ -49,9 +49,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_search' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
@@ -71,9 +69,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_search' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
@@ -91,9 +87,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -109,9 +103,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -129,12 +121,6 @@ $aConfig = array(
      */
     'language_category' => 'Boonex Profiler',
 
-    /**
-     * Permissions Section
-     */
-    'install_permissions' => array(),
-    'uninstall_permissions' => array(),
-
     /**
      * Introduction and Conclusion Section.
      */

+ 0 - 105
modules/boonex/russian/data/langs/system.xml

@@ -250,7 +250,6 @@
 	<string name="_Subject"><![CDATA[Subject]]></string>
 	<string name="_Successfully uploaded"><![CDATA[Successfully uploaded!]]></string>
 	<string name="_Suspend account"><![CDATA[Suspend account]]></string>
-	<string name="_sys_tags_note"><![CDATA[Enter a few words delimited by commas]]></string>
 	<string name="_Text"><![CDATA[Text]]></string>
 	<string name="_Terms_of_use"><![CDATA[Terms]]></string>
 	<string name="_Tell a friend"><![CDATA[Invite a friend]]></string>
@@ -870,13 +869,6 @@ We may update our Privacy Statement from time to time so please visit this page
 	<string name="_please_select"><![CDATA[please select]]></string>
 	<string name="_Please_Select_"><![CDATA[Please Select...]]></string>
 	<string name="_associated_image"><![CDATA[associated image]]></string>
-	<string name="_add_category"><![CDATA[add category]]></string>
-	<string name="_edit_category"><![CDATA[edit category]]></string>
-	<string name="_characters_left"><![CDATA[characters left]]></string>
-	<string name="_category_deleted"><![CDATA[category deleted]]></string>
-	<string name="_category_delete_failed"><![CDATA[failed to delete the category]]></string>
-	<string name="_category_successfully_added"><![CDATA[category successfully added]]></string>
-	<string name="_failed_to_add_category"><![CDATA[failed to add category]]></string>
 	<string name="_changes_successfully_applied"><![CDATA[changes successfully applied]]></string>
 	<string name="_comment_added_successfully"><![CDATA[comment added successfully]]></string>
 	<string name="_failed_to_add_comment"><![CDATA[failed to add comment]]></string>
@@ -888,7 +880,6 @@ We may update our Privacy Statement from time to time so please visit this page
 	<string name="_UPLOAD_MEDIA"><![CDATA[UPLOAD MEDIA]]></string>
 	<string name="_MEDIA_GALLERY_H"><![CDATA[profile media gallery]]></string>
 	<string name="_Showing results:"><![CDATA[Showing results: <b>{0}</b> - <b>{1}</b> of <b>{2}</b>]]></string>
-	<string name="_Category"><![CDATA[Category]]></string>
 	<string name="_Created"><![CDATA[Founded]]></string>
 	<string name="_Members count"><![CDATA[Members]]></string>
 	<string name="_View all members"><![CDATA[View all members]]></string>
@@ -912,7 +903,6 @@ We may update our Privacy Statement from time to time so please visit this page
 	<string name="_Choose"><![CDATA[Choose]]></string>
 	<string name="_Open join"><![CDATA[Open join]]></string>
 	<string name="_Name is required"><![CDATA[Name is required]]></string>
-	<string name="_Category is required"><![CDATA[Category is required]]></string>
 	<string name="_Country is required"><![CDATA[Country is required]]></string>
 	<string name="_City is required"><![CDATA[City is required]]></string>
 	<string name="_About is required"><![CDATA[Group title is required]]></string>
@@ -952,7 +942,6 @@ We may update our Privacy Statement from time to time so please visit this page
 	<string name="_Next page"><![CDATA[Next page]]></string>
 	<string name="_Previous page"><![CDATA[Previous page]]></string>
 	<string name="_By Author"><![CDATA[Author: <b><a href="{0}">{0}</a></b>]]></string>
-	<string name="_in Category"><![CDATA[<img src="{0}" alt="" /><a href="{1}">{2}</a>]]></string>
 	<string name="_comments N"><![CDATA[<img src="{0}" />{1} comments]]></string>
 	<string name="_Videos"><![CDATA[Videos]]></string>
 	<string name="_N times"><![CDATA[{0} time(s)]]></string>
@@ -965,7 +954,6 @@ We may update our Privacy Statement from time to time so please visit this page
 	<string name="_Blocked Me"><![CDATA[Blocked Me]]></string>
 	<string name="_My Videos"><![CDATA[My Videos]]></string>
 	<string name="_My Friends"><![CDATA[My Friends]]></string>
-	<string name="_Add Category"><![CDATA[Add Category]]></string>
 	<string name="_New Post"><![CDATA[New Post]]></string>
 	<string name="_Add Post"><![CDATA[Add Post]]></string>
 	<string name="_Send Message"><![CDATA[Send Message]]></string>
@@ -1043,7 +1031,6 @@ We may update our Privacy Statement from time to time so please visit this page
 	<string name="_This Week"><![CDATA[This Week]]></string>
 	<string name="_This Month"><![CDATA[This Month]]></string>
 	<string name="_This Year"><![CDATA[This Year]]></string>
-	<string name="_No tags found here"><![CDATA[No tags found here]]></string>
 	<string name="_New Today"><![CDATA[New Today]]></string>
 	<string name="_Count"><![CDATA[Count]]></string>
 	<string name="_Site Stats"><![CDATA[Site Stats]]></string>
@@ -1066,31 +1053,9 @@ When uploading the material, you provide {0} and its members with the right to u
 - Media files containing children's porno.
 - Media containing naked views of you or your children.
 If you do not agree with these stipulations, you may not upload any media files.]]></string>
-	<string name="_Tags"><![CDATA[Tags]]></string>
-	<string name="_Tags_caption"><![CDATA[Tags]]></string>
-	<string name="_Tags_desc"><![CDATA[Enter a few words delimited by commas or semicolon]]></string>
-	<string name="_Tags_err_msg"><![CDATA[You must enter your Tags]]></string>
-	<string name="_tags_err_keyword"><![CDATA[Please specify keyword from 1 to 100 characters]]></string>
-	<string name="_tags_home"><![CDATA[Tags Home]]></string>
-	<string name="_all_tags"><![CDATA[All Tags]]></string>
-	<string name="_popular_tags"><![CDATA[Popular Tags]]></string>
-	<string name="_tags_calendar"><![CDATA[Calendar]]></string>
-	<string name="_tags_search"><![CDATA[Search]]></string>
-	<string name="_tags_recent"><![CDATA[Recently Added Tags]]></string>
-	<string name="_tags_not_found"><![CDATA[Tags Not Found]]></string>
-	<string name="_tags_empty"><![CDATA[Empty]]></string>
-	<string name="_tags_by_day"><![CDATA[Tags By Day: ]]></string>
-	<string name="_tags_search_form"><![CDATA[Search Form]]></string>
-	<string name="_tags_founded_tags"><![CDATA[Search Results]]></string>
-	<string name="_tags_single"><![CDATA[Tag]]></string>
-	<string name="_tags_plural"><![CDATA[Tags]]></string>
-	<string name="_tags_date"><![CDATA[Empty]]></string>
-	<string name="_tags_caption_keyword"><![CDATA[Keyword]]></string>
-	<string name="_tags_caption_module"><![CDATA[Module]]></string>
 	<string name="_Member Friends"><![CDATA[Member Friends]]></string>
 	<string name="_Select"><![CDATA[Select]]></string>
 	<string name="_Join Now Top"><![CDATA[Join Now]]></string>
-	<string name="_Tag"><![CDATA[Tag]]></string>
 	<string name="_Sorry, no members found"><![CDATA[Sorry, no members found]]></string>
 	<string name="_PWD_INVALID3"><![CDATA[Password confirmation failed]]></string>
 	<string name="_Change Password"><![CDATA[Change Password]]></string>
@@ -1099,9 +1064,6 @@ If you do not agree with these stipulations, you may not upload any media files.
 	<string name="_Admin Panel"><![CDATA[Admin Panel]]></string>
 	<string name="_File upload error"><![CDATA[File upload error]]></string>
 	<string name="_send greetings"><![CDATA[send greetings]]></string>
-	<string name="_Category Caption"><![CDATA[Category Caption]]></string>
-	<string name="_Category Deleted Successfully"><![CDATA[Category Deleted Successfully]]></string>
-	<string name="_Category are not deleted"><![CDATA[Category not deleted]]></string>
 	<string name="_affiliate_system_was_disabled"><![CDATA[Affiliate system was disabled]]></string>
 	<string name="_DescriptionMedia"><![CDATA[Description]]></string>
 	<string name="_Mutual Friends"><![CDATA[Mutual Friends]]></string>
@@ -1110,7 +1072,6 @@ If you do not agree with these stipulations, you may not upload any media files.
 	<string name="_Unsubscribe"><![CDATA[Unsubscribe]]></string>
 	<string name="_not_active_story"><![CDATA[Inactive Story]]></string>
 	<string name="_Profile Videos"><![CDATA[Profile Videos]]></string>
-	<string name="_Uncategorized"><![CDATA[Uncategorized]]></string>
 	<string name="_PROFILE_CONFIRM"><![CDATA[Congratulations! Your e-mail confirmation succeeded and your profile has been activated!<br />
 Please click "Continue" below to navigate to the home page of the site.]]></string>
 	<string name="_First Person"><![CDATA[First Person]]></string>
@@ -1175,10 +1136,8 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_Can not delete comments with replies"><![CDATA[Cannot delete comments with replies]]></string>
 	<string name="_Access denied"><![CDATA[Access denied]]></string>
 	<string name="_Save"><![CDATA[Save]]></string>
-	<string name="_Search by Tag"><![CDATA[Search by Tag]]></string>
 	<string name="_Approve"><![CDATA[Approve]]></string>
 	<string name="_Disapprove"><![CDATA[Disapprove]]></string>
-	<string name="_Select Category"><![CDATA[Select Category]]></string>
 	<string name="_Print As"><![CDATA[Print As]]></string>
 	<string name="_Hide N replies"><![CDATA[<span>{0}</span> replies]]></string>
 	<string name="_Counter"><![CDATA[Counter]]></string>
@@ -1189,7 +1148,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_Write new Message"><![CDATA[Send once more]]></string>
 	<string name="_FieldCaption_Membership_Edit"><![CDATA[Membership level]]></string>
 	<string name="_FieldDesc_Membership_Edit"><![CDATA[Member membership level]]></string>
-	<string name="_FieldCaption_Tags_View"><![CDATA[Tags]]></string>
 	<string name="_use Orca private forums"><![CDATA[use Orca private forums]]></string>
 	<string name="_use Orca public forums"><![CDATA[use Orca public forums]]></string>
 	<string name="_vote"><![CDATA[vote]]></string>
@@ -1227,7 +1185,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_day_of_12"><![CDATA[{0} December, {1}]]></string>
 	<string name="_day_of_12_short"><![CDATA[{0} Dec {1}]]></string>
 	<string name="_Clear"><![CDATA[Clear]]></string>
-	<string name="_SubCategory is required"><![CDATA[SubCategory is required]]></string>
 	<string name="_Send eCard"><![CDATA[Send eCard]]></string>
 	<string name="_send eCards"><![CDATA[send eCards]]></string>
 	<string name="_Total"><![CDATA[Total]]></string>
@@ -1251,8 +1208,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_Existed_RSS"><![CDATA[Existing RSS]]></string>
 	<string name="_Favorited"><![CDATA[Favorited]]></string>
 	<string name="_Click here"><![CDATA[Click here]]></string>
-	<string name="_Profile tags"><![CDATA[Profile tags]]></string>
-	<string name="_Profiles tags"><![CDATA[Profiles tags]]></string>
 	<string name="_First page"><![CDATA[First page]]></string>
 	<string name="_Last page"><![CDATA[Last page]]></string>
 	<string name="_People"><![CDATA[People]]></string>
@@ -1360,8 +1315,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_td_content"><![CDATA[Content]]></string>
 	<string name="_td_snippet"><![CDATA[Snippet]]></string>
 	<string name="_td_date"><![CDATA[Date]]></string>
-	<string name="_td_tags"><![CDATA[Tags]]></string>
-	<string name="_td_categories"><![CDATA[Categories]]></string>
 	<string name="_td_post"><![CDATA[Post]]></string>
 	<string name="_td_edit"><![CDATA[Update]]></string>
 	<string name="_td_allow_comment"><![CDATA[Allow comment on my feedback]]></string>
@@ -1382,7 +1335,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_sys_breadcrumb_login"><![CDATA[Login]]></string>
 	<string name="_sys_breadcrumb_logout"><![CDATA[Logout]]></string>
 	<string name="_sys_breadcrumb_guest"><![CDATA[Guest]]></string>
-	<string name="_sys_err_categories"><![CDATA[please specify at least one category]]></string>
 	<string name="_Welcome_to_the_community"><![CDATA[Welcome to the community!]]></string>
 	<string name="_Empty"><![CDATA[Empty]]></string>
 	<string name="_By Sex"><![CDATA[By Sex]]></string>
@@ -1404,7 +1356,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_Featured"><![CDATA[Featured]]></string>
 	<string name="_Top Rated"><![CDATA[Top Rated]]></string>
 	<string name="_Birthdays"><![CDATA[Birthdays]]></string>
-	<string name="_People_Calendar"><![CDATA[Calendar]]></string>
 	<string name="_World_Map"><![CDATA[World Map]]></string>
 	<string name="_Spy"><![CDATA[Spy]]></string>
 	<string name="_All_Users"><![CDATA[All Users]]></string>
@@ -1415,17 +1366,12 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_All_Sites"><![CDATA[All Sites]]></string>
 	<string name="_Admin_Links"><![CDATA[Admin Links]]></string>
 	<string name="_Profile_Sites"><![CDATA[Profile Sites]]></string>
-	<string name="_Sites_Categories"><![CDATA[Categories]]></string>
-	<string name="_Sites_Calendar"><![CDATA[Calendar]]></string>
 	<string name="_Advice"><![CDATA[Advice]]></string>
 	<string name="_Cards"><![CDATA[Cards]]></string>
 	<string name="_All_Cards"><![CDATA[All Cards]]></string>
-	<string name="_Cards_Categories"><![CDATA[Categories]]></string>
-	<string name="_Cards_Calendar"><![CDATA[Calendar]]></string>
 	<string name="_Sites_Home"><![CDATA[Sites Home]]></string>
 	<string name="_Cards_Home"><![CDATA[Cards Home]]></string>
 	<string name="_Search_Home"><![CDATA[Search Home]]></string>
-	<string name="_Tags_Home"><![CDATA[Tags Home]]></string>
 	<string name="_Static"><![CDATA[Static]]></string>
 	<string name="_Bottom"><![CDATA[Bottom]]></string>
 	<string name="_Saved"><![CDATA[Saved]]></string>
@@ -1572,7 +1518,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<!-- Settings: Languages -->
 	<string name="_adm_stg_cpt_category_languages"><![CDATA[Languages]]></string>
 	<string name="_adm_stg_cpt_option_lang_default"><![CDATA[Default Language]]></string>
-	<string name="_adm_stg_cpt_option_sys_calendar_starts_sunday"><![CDATA[Does Calender start on Sunday?]]></string>
 	<string name="_adm_stg_cpt_option_sys_format_date"><![CDATA[Date Format]]></string>
 	<string name="_adm_stg_cpt_option_sys_format_time"><![CDATA[Time Format]]></string>
 	<string name="_adm_stg_cpt_option_sys_format_datetime"><![CDATA[Datetime Format]]></string>
@@ -1602,11 +1547,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_adm_stg_cpt_option_sys_template_cache_js_enable"><![CDATA[Enable cache for JS files]]></string>
 	<string name="_adm_stg_cpt_option_sys_template_cache_compress_enable"><![CDATA[Enable compression for JS/CSS files(cache should be enabled)]]></string>
 
-	<!-- Settings: Categories -->
-	<string name="_adm_stg_cpt_category_categories"><![CDATA[Categories]]></string>
-	<string name="_adm_stg_cpt_option_categ_perpage_browse"><![CDATA[Number of categories to show on browse pages]]></string>
-	<string name="_adm_stg_cpt_option_categ_show_columns"><![CDATA[Number of columns to show categories]]></string>
-
 	<!-- Settings: General -->
 	<string name="_adm_stg_cpt_category_general"><![CDATA[General]]></string>
 	<string name="_adm_stg_cpt_option_sys_ftp_login"><![CDATA[FTP server login]]></string>
@@ -1637,12 +1577,10 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 
 	<!-- Settings: Pruning -->
 	<string name="_adm_stg_cpt_category_pruning"><![CDATA[Pruning]]></string>
-	<string name="_adm_stg_cpt_option_db_clean_members_visits"><![CDATA[Delete stored members IPs older than (days)]]></string>
 	<string name="_adm_stg_cpt_option_db_clean_mem_levels"><![CDATA[Delete membership levels expired for (days)]]></string>
 
 	<!-- Settings: Security -->
 	<string name="_adm_stg_cpt_category_security"><![CDATA[Security]]></string>
-	<string name="_adm_stg_cpt_option_enable_member_store_ip"><![CDATA[When a member login into dolphin that the IP address from that person will be saved into the database]]></string>
 	<string name="_adm_stg_cpt_option_ip_blacklist_mode"><![CDATA[IP Blacklist system mode (1 - total block, 2 - login block)]]></string>
 	<string name="_adm_stg_cpt_option_ip_list_global_type"><![CDATA[IP List Type (1 - all allowed except listed, 2 - all blocked except listed, 0 - disabled)]]></string>
 	<string name="_adm_stg_cpt_option_sys_security_impact_threshold_log"><![CDATA[Total security impact threshold to send report]]></string>
@@ -1673,12 +1611,6 @@ Please click "Continue" below to navigate to the home page of the site.]]></stri
 	<string name="_adm_stg_cpt_option_sys_storage_s3_bucket"><![CDATA[AWS Bucket]]></string>
 	<string name="_adm_stg_cpt_option_sys_storage_s3_domain"><![CDATA[AWS Custom domain (require custom DNS setup)]]></string>
 
-	<!-- Settings: Tags -->
-	<string name="_adm_stg_cpt_category_tags"><![CDATA[Tags]]></string>
-	<string name="_adm_stg_cpt_option_tags_non_parsable"><![CDATA[Non-parsable tags (type all tags in lower case, delimit them by comma)]]></string>
-	<string name="_adm_stg_cpt_option_tags_perpage_browse"><![CDATA[Number of tags to show on browse pages]]></string>
-	<string name="_adm_stg_cpt_option_tags_show_limit"><![CDATA[Number of tags to show limit]]></string>
-
 	<string name="_adm_stg_err_save"><![CDATA[Cannot save settings]]></string>
 	<string name="_adm_stg_scs_save"><![CDATA[Settings were successfully saved]]></string>
 
@@ -2516,9 +2448,7 @@ Without doing that you won't be submitted to our database.</p>
 	<string name="_adm_txt_modules_recompile_profile_fields"><![CDATA[Recompiling profile fields:]]></string>
 	<string name="_adm_txt_modules_recompile_comments"><![CDATA[Recompiling comments:]]></string>
 	<string name="_adm_txt_modules_recompile_member_actions"><![CDATA[Recompiling member actions:]]></string>
-	<string name="_adm_txt_modules_recompile_tags"><![CDATA[Recompiling tags:]]></string>
 	<string name="_adm_txt_modules_recompile_votes"><![CDATA[Recompiling votes:]]></string>
-	<string name="_adm_txt_modules_recompile_categories"><![CDATA[Recompiling categories:]]></string>
 	<string name="_adm_txt_modules_recompile_search"><![CDATA[Recompiling search:]]></string>
 	<string name="_adm_txt_modules_recompile_browse"><![CDATA[Recompiling browse:]]></string>
 	<string name="_adm_txt_modules_recompile_injections"><![CDATA[Recompiling injections:]]></string>
@@ -2627,8 +2557,6 @@ Without doing that you won't be submitted to our database.</p>
 	<string name="_adm_btn_mp_confirm"><![CDATA[Confirm Email]]></string>
 	<string name="_adm_btn_mp_qlinks"><![CDATA[Quick Links]]></string>
 	<string name="_adm_btn_mp_browse"><![CDATA[Browse]]></string>
-	<string name="_adm_btn_mp_calendar"><![CDATA[Calendar]]></string>
-	<string name="_adm_btn_mp_tags"><![CDATA[Tags]]></string>
 	<string name="_adm_btn_mp_search"><![CDATA[Search]]></string>
 	<string name="_adm_btn_mp_simple"><![CDATA[Simple]]></string>
 	<string name="_adm_btn_mp_extended"><![CDATA[Extended]]></string>
@@ -3031,39 +2959,6 @@ Without doing that you won't be submitted to our database.</p>
 	<string name="_sys_btn_fans_remove"><![CDATA[Remove]]></string>
 	<string name="_sys_btn_fans_add_to_admins"><![CDATA[Add To Admins]]></string>
 	<string name="_sys_btn_fans_move_admins_to_fans"><![CDATA[Demote Admins]]></string>
-	<string name="_Categories"><![CDATA[Categories]]></string>
-	<string name="_categ_all"><![CDATA[All Categories]]></string>
-	<string name="_categ_common"><![CDATA[Common Categories]]></string>
-	<string name="_categ_users"><![CDATA[User Categories]]></string>
-	<string name="_categ_calendar"><![CDATA[Calendar]]></string>
-	<string name="_categ_search"><![CDATA[Search]]></string>
-	<string name="_categ_caption_all"><![CDATA[All Categories]]></string>
-	<string name="_categ_order_order_by"><![CDATA[Order by: ]]></string>
-	<string name="_categ_caption_common"><![CDATA[Common Categories]]></string>
-	<string name="_categ_caption_users"><![CDATA[User Categories]]></string>
-	<string name="_categ_caption_calendar"><![CDATA[Calendar]]></string>
-	<string name="_categ_caption_day"><![CDATA[Empty]]></string>
-	<string name="_categ_by_day"><![CDATA[Categories By Day: ]]></string>
-	<string name="_categ_caption_search_form"><![CDATA[Search Form]]></string>
-	<string name="_categ_caption_founded"><![CDATA[Search Results]]></string>
-	<string name="_categ_caption_keyword"><![CDATA[Keyword]]></string>
-	<string name="_categ_single"><![CDATA[Category]]></string>
-	<string name="_categ_plural"><![CDATA[Categories]]></string>
-	<string name="_categ_btn_delete"><![CDATA[Delete]]></string>
-	<string name="_categ_btn_disable"><![CDATA[Disable]]></string>
-	<string name="_categ_btn_activate"><![CDATA[Activate]]></string>
-	<string name="_categ_order_none"><![CDATA[None]]></string>
-	<string name="_categ_order_popular"><![CDATA[Popular]]></string>
-	<string name="_categ_order_recent"><![CDATA[Recent]]></string>
-	<string name="_categ_err_keyword"><![CDATA[Please specify keyword from 1 to 100 characters]]></string>
-	<string name="_categ_admin_pending"><![CDATA[Pending Approval]]></string>
-	<string name="_categ_admin_settings"><![CDATA[Settings]]></string>
-	<string name="_categ_modules"><![CDATA[Modules]]></string>
-	<string name="_categ_form_name"><![CDATA[Name]]></string>
-	<string name="_categ_form_add"><![CDATA[Add Category]]></string>
-	<string name="_categ_form_field_name_err"><![CDATA[Please specify name from 3 to 100 characters]]></string>
-	<string name="_categ_form_type"><![CDATA[Type]]></string>
-	<string name="_categ_exist_err"><![CDATA[Category named '%s' already exists]]></string>
 	<string name="_FieldError_City_Mandatory"><![CDATA[You must specify your city]]></string>
 	<string name="_FieldError_Country_Mandatory"><![CDATA[You must specify your country]]></string>
 	<string name="_FieldError_zip_Mandatory"><![CDATA[You must specify your ZIP code]]></string>

+ 0 - 6
modules/boonex/sites/install/config.php

@@ -75,12 +75,6 @@ $aConfig = array(
      */
     'language_category' => 'Sites',
 
-    /**
-     * Permissions Section
-     */
-    'install_permissions' => array(),
-    'uninstall_permissions' => array(),
-
     /**
      * Introduction and Conclusion Section.
      */

+ 0 - 2
modules/boonex/sites/updates/update_100_200/install/config.php

@@ -42,9 +42,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_search' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,

+ 0 - 14
modules/boonex/smtpmailer/install/config.php

@@ -49,9 +49,7 @@ $aConfig = array(
 		'recompile_profile_fields' => 0,
 		'recompile_comments' => 0,
 		'recompile_member_actions' => 0,
-		'recompile_tags' => 0,
 		'recompile_votes' => 0,
-		'recompile_categories' => 0,
 		'recompile_search' => 0,
 		'recompile_injections' => 0,
 		'recompile_permalinks' => 0,
@@ -71,9 +69,7 @@ $aConfig = array(
 		'recompile_profile_fields' => 0,
 		'recompile_comments' => 0,
 		'recompile_member_actions' => 0,
-		'recompile_tags' => 0,
 		'recompile_votes' => 0,
-		'recompile_categories' => 0,
 		'recompile_search' => 0,
 		'recompile_injections' => 0,
 		'recompile_permalinks' => 0,
@@ -91,9 +87,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -109,9 +103,7 @@ $aConfig = array(
         'recompile_profile_fields' => 0,
         'recompile_comments' => 0,
         'recompile_member_actions' => 0,
-        'recompile_tags' => 0,
         'recompile_votes' => 0,
-        'recompile_categories' => 0,
         'recompile_injections' => 0,
         'recompile_permalinks' => 0,
         'recompile_alerts' => 0,
@@ -129,12 +121,6 @@ $aConfig = array(
 	 */
 	'language_category' => 'SMTP Mailer',
 
-	/**
-	 * Permissions Section
-	 */
-    'install_permissions' => array(),
-    'uninstall_permissions' => array(),
-
 	/**
 	 * Introduction and Conclusion Section.
 	 */

+ 0 - 19
modules/boonex/uni/data/template/system/scripts/BxTemplCalendar.php

@@ -1,19 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import ('BxBaseCalendar');
-
-/**
- * @see BxDolCalendar
- */
-class BxTemplCalendar extends BxBaseCalendar {
-    function BxTemplCalendar($iYear, $iMonth)    {
-        parent::BxBaseCalendar($iYear, $iMonth);
-    }
-}
-

+ 0 - 16
modules/boonex/uni/data/template/system/scripts/BxTemplCategories.php

@@ -1,16 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import('BxBaseCategories');
-
-class BxTemplCategories extends BxBaseCategories {
-    function BxTemplCategories() {
-        parent::BxBaseCategories();
-    }
-}
-

+ 0 - 18
modules/boonex/uni/data/template/system/scripts/BxTemplCategoriesModule.php

@@ -1,18 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-// TODO: reconsider almost all functionality in this file, according to new concept it should NOT be separate page with all categories, every module has its own page with tags
-
-bx_import('BxBaseCategoriesModule');
-
-class BxTemplCategoriesModule extends BxBaseCategoriesModule {
-    function BxTemplCategoriesModule($aParam, $sTitle, $sUrl) {
-        parent::BxBaseCategoriesModule($aParam, $sTitle, $sUrl);
-    }
-}
-

+ 0 - 16
modules/boonex/uni/data/template/system/scripts/BxTemplTags.php

@@ -1,16 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import('BxBaseTags');
-
-class BxTemplTags extends BxBaseTags {
-    function BxTemplTags () {
-        parent::BxBaseTags();
-    }
-}
-

+ 0 - 17
modules/boonex/uni/data/template/system/scripts/BxTemplTagsModule.php

@@ -1,17 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-// TODO: reconsider almost all functionality in this file, according to new concept it should NOT be separate page with all tags, every module has its own page with tags
-
-bx_import('BxBaseTagsModule');
-
-class BxTemplTagsModule extends BxBaseTagsModule {
-    function BxTemplTagsModule($aParam, $sTitle, $sUrl) {
-        parent::BxBaseTagsModule($aParam, $sTitle, $sUrl);
-    }
-}

+ 0 - 14
studio/classes/BxDolStudioInstaller.php

@@ -129,15 +129,9 @@ class BxDolStudioInstaller extends BxDolInstallerUtils {
             'recompile_member_actions' => array(
                 'title' => _t('_adm_txt_modules_recompile_member_actions'),
             ),
-            'recompile_tags' =>  array(
-                'title' => _t('_adm_txt_modules_recompile_tags'),
-            ),
             'recompile_votes' => array(
                 'title' => _t('_adm_txt_modules_recompile_votes'),
             ),
-            'recompile_categories' =>  array(
-                'title' => _t('_adm_txt_modules_recompile_categories'),
-            ),
             'recompile_search' => array(
                 'title' => _t('_adm_txt_modules_recompile_search'),
             ),
@@ -767,18 +761,10 @@ class BxDolStudioInstaller extends BxDolInstallerUtils {
         $bResult = $this->oDb->cleanCache('sys_objects_actions');
         return $bResult ? BX_DOL_STUDIO_INSTALLER_SUCCESS : BX_DOL_STUDIO_INSTALLER_FAILED;
     }
-    function actionRecompileTags($sOperation) {
-        $bResult = $this->oDb->cleanCache('sys_objects_tag');
-        return $bResult ? BX_DOL_STUDIO_INSTALLER_SUCCESS : BX_DOL_STUDIO_INSTALLER_FAILED;
-    }
     function actionRecompileVotes($sOperation) {
         $bResult = $this->oDb->cleanCache('sys_objects_vote');
         return $bResult ? BX_DOL_STUDIO_INSTALLER_SUCCESS : BX_DOL_STUDIO_INSTALLER_FAILED;
     }
-    function actionRecompileCategories($sOperation) {
-        $bResult = $this->oDb->cleanCache('sys_objects_categories');
-        return $bResult ? BX_DOL_STUDIO_INSTALLER_SUCCESS : BX_DOL_STUDIO_INSTALLER_FAILED;
-    }
     function actionRecompileInjections($sOperation) {
         $bResult = $this->oDb->cleanCache('sys_injections.inc');
         $bResult = $bResult && $this->oDb->cleanCache('sys_injections_admin.inc');

+ 0 - 413
tags.php

@@ -1,413 +0,0 @@
-<?php
-
-// TODO: reconsider almost all functionality in this file, according to new concept it should NOT be separate page with all tags, every module has its own page with tags
-
-/***************************************************************************
-*                            Dolphin Smart Community Builder
-*                              -------------------
-*     begin                : Mon Mar 23 2006
-*     copyright            : (C) 2007 BoonEx Group
-*     website              : http://www.boonex.com
-* This file is part of Dolphin - Smart Community Builder
-*
-* Dolphin is free software; you can redistribute it and/or modify it under
-* the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the
-* License, or  any later version.
-*
-* Dolphin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
-* without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-* See the GNU General Public License for more details.
-* You should have received a copy of the GNU General Public License along with Dolphin,
-* see license.txt file; if not, write to marketing@boonex.com
-***************************************************************************/
-
-define('BX_TAGS_ACTION_HOME', 'home');
-define('BX_TAGS_ACTION_ALL', 'all');
-define('BX_TAGS_ACTION_POPULAR', 'popular');
-define('BX_TAGS_ACTION_CALENDAR', 'calendar');
-define('BX_TAGS_ACTION_SEARCH', 'search');
-
-define('BX_TAGS_BOX_DISIGN', 1);
-define('BX_TAGS_BOX_INT_MENU', 2);
-
-require_once( 'inc/header.inc.php' );
-require_once( BX_DIRECTORY_PATH_INC . 'design.inc.php' );
-
-bx_import('BxDolTemplate');
-bx_import('BxTemplTags');
-bx_import('BxDolPageView');
-bx_import('BxTemplCalendar');
-
-$bAjaxMode = isset($_SERVER['HTTP_X_REQUESTED_WITH']) and $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ? true : false;
-
-function showTags($aParam = array(), $iBoxId = 1, $sAction = '', $iBox = 0, $sTitle = '')
-{
-    $oTags = new BxTemplTags();
-
-    $oTags->getTagObjectConfig($aParam);
-
-    if (empty($oTags->aTagObjects))
-    {
-        if ($iBox & BX_TAGS_BOX_DISIGN)
-            return DesignBoxContent($sTitle, MsgBox(_t('_Empty')), 1);
-        else
-            return MsgBox(_t('_Empty'));
-    }
-
-    $aParam['type'] = isset($_GET['tags_mode']) && isset($oTags->aTagObjects[$_GET['tags_mode']]) ? $_GET['tags_mode'] : $oTags->getFirstObject();
-
-    $sCode = '';
-    if ($iBox & BX_TAGS_BOX_INT_MENU)
-        $sCode .= $oTags->getTagsInternalMenuHtml($aParam, $iBoxId, $sAction);
-    $sCode .= $oTags->display($aParam, $iBoxId, $sAction);
-
-    if ($iBox & BX_TAGS_BOX_DISIGN)
-    {
-        $aCaptionMenu = $iBox & BX_TAGS_BOX_INT_MENU ? '' : $oTags->getTagsTopMenuHtml($aParam, $iBoxId, $sAction);
-        $sCode = DesignBoxContent($sTitle, $sCode, 1, $aCaptionMenu);
-        $sCode = '<div id="page_block_' . $iBoxId . '">' . $sCode . '<div class="clear_both"></div></div>';
-        return $sCode;
-    }
-    else
-        return array(
-            $sCode,
-            ($iBox & BX_TAGS_BOX_INT_MENU ? '' : $oTags->getTagsTopMenu($aParam, $sAction)),
-            array(),
-            ($sDate ? _t('_tags_by_day') . $sDate : '')
-        );
-}
-
-class TagsCalendar extends BxTemplCalendar
-{
-    function TagsCalendar($iYear, $iMonth)
-    {
-        parent::BxTemplCalendar($iYear, $iMonth);
-    }
-
-    function display() {
-        $oSysTemplate = BxDolTemplate::getInstance();
-            
-        $aVars = array (
-            'bx_repeat:week_names' => $this->_getWeekNames (),
-            'bx_repeat:calendar_row' => $this->_getCalendar (),
-            'month_prev_url' => $this->getBaseUri () . "&year={$this->iPrevYear}&month={$this->iPrevMonth}",
-            'month_prev_name' => _t('_month_prev'),
-            'month_prev_icon' => getTemplateIcon('sys_back.png'),
-            'month_next_url' => $this->getBaseUri () . "&year={$this->iNextYear}&month={$this->iNextMonth}",
-            'month_next_name' => _t('_month_next'),
-            'month_next_icon' => getTemplateIcon('sys_next.png'),
-            'month_current' => $this->getTitle(),
-        );
-        $sHtml = $oSysTemplate->parseHtmlByName('calendar.html', $aVars);
-        $sHtml = preg_replace ('#<bx_repeat:events>.*?</bx_repeat:events>#s', '', $sHtml);
-        $oSysTemplate->addCss('calendar.css');
-        return $sHtml;
-    }
-
-    function getData()
-    {
-        $oDb = new BxDolDb();
-
-        return $oDb->getAll("SELECT *, DAYOFMONTH(`Date`) AS `Day`
-            FROM `sys_tags`
-            WHERE `Date` >= TIMESTAMP('{$this->iYear}-{$this->iMonth}-1') AND `Date` < TIMESTAMP('{$this->iNextYear}-{$this->iNextMonth}-1')");
-    }
-
-    function getBaseUri()
-    {
-        return BX_DOL_URL_ROOT . 'tags.php?action=calendar';
-    }
-
-    function getBrowseUri()
-    {
-        return BX_DOL_URL_ROOT . 'tags.php?action=calendar';
-    }
-
-    function getEntriesNames ()
-    {
-        return array(_t('_tags_single'), _t('_tags_plural'));
-    }
-
-    function _getCalendar ()
-    {
-        $sBrowseUri = $this->getBrowseUri();
-        list ($sEntriesSingle, $sEntriesMul) = $this->getEntriesNames ();
-
-        $this->_getCalendarGrid($aCalendarGrid);
-        $aRet = array ();
-        for ($i = 0; $i < 6; $i++) {
-
-            $aRow = array ('bx_repeat:cell');
-            $isRowEmpty = true;
-
-            for ($j = $this->iWeekStart; $j < $this->iWeekEnd; $j++) {
-
-                $aCell = array ();
-
-                if ($aCalendarGrid[$i][$j]['today']) {
-                    $aCell['class'] = 'sys_cal_cell sys_cal_today';
-                    $aCell['day'] = $aCalendarGrid[$i][$j]['day'];
-                    $aCell['bx_if:num'] = array ('condition' => $aCalendarGrid[$i][$j]['num'], 'content' => array(
-                        'num' => $aCalendarGrid[$i][$j]['num'],
-                        'href' => $sBrowseUri . '&year=' . $this->iYear . '&month=' . $this->iMonth . '&day=' . $aCell['day'],
-                        'entries' => 1 == $aCalendarGrid[$i][$j]['num'] ? $sEntriesSingle : $sEntriesMul,
-                    ));
-                    $isRowEmpty = false;
-                } elseif (isset($aCalendarGrid[$i][$j]['day'])) {
-                    $aCell['class'] = 'sys_cal_cell';
-                    $aCell['day'] = $aCalendarGrid[$i][$j]['day'];
-                    $aCell['bx_if:num'] = array ('condition' => $aCalendarGrid[$i][$j]['num'], 'content' => array(
-                        'num' => $aCalendarGrid[$i][$j]['num'],
-                        'href' => $sBrowseUri . '&year=' . $this->iYear . '&month=' . $this->iMonth . '&day=' . $aCell['day'],
-                        'entries' => 1 == $aCalendarGrid[$i][$j]['num'] ? $sEntriesSingle : $sEntriesMul,
-                    ));
-                    $isRowEmpty = false;
-                } else {
-                    $aCell['class'] = 'sys_cal_cell_blank';
-                    $aCell['day'] = '';
-                    $aCell['bx_if:num'] = array ('condition' => false, 'content' => array(
-                        'num' => '',
-                        'href' => '',
-                        'entries' => '',
-                    ));
-                }
-
-                if ($aCell)
-                    $aRow['bx_repeat:cell'][] = $aCell;
-            }
-
-            if ($aRow['bx_repeat:cell'] && !$isRowEmpty) {
-                $aRet[] = $aRow;
-            }
-        }
-        return $aRet;
-    }
-
-}
-
-class TagsHomePage extends BxDolPageView
-{
-    var $sPage;
-
-    function TagsHomePage()
-    {
-        $this->sPage = 'tags_home';
-        parent::BxDolPageView($this->sPage);
-    }
-
-    function getBlockCode_Recent($iBlockId)
-    {
-        $aParam = array(
-            'orderby' => 'recent',
-            'limit' => getParam('tags_show_limit'),
-        );
-
-        return showTags($aParam, $iBlockId, BX_TAGS_ACTION_HOME, BX_TAGS_BOX_INT_MENU, _t('_tags_recent'));
-    }
-
-    function getBlockCode_Popular($iBlockId)
-    {
-        $aParam = array(
-            'orderby' => 'popular',
-            'limit' => getParam('tags_show_limit')
-        );
-
-        return showTags($aParam, $iBlockId, BX_TAGS_ACTION_HOME, 0, _t('_tags_popular'));
-    }
-}
-
-class TagsCalendarPage extends BxDolPageView
-{
-    var $sPage;
-
-    function TagsCalendarPage()
-    {
-        $this->sPage = 'tags_calendar';
-        parent::BxDolPageView($this->sPage);
-    }
-
-    function getBlockCode_Calendar($iBlockId)
-    {
-        $sYear = isset($_GET['year']) ? (int)$_GET['year'] : '';
-        $sMonth = isset($_GET['month']) ? (int)$_GET['month'] : '';
-        $oCalendar = new TagsCalendar($sYear, $sMonth);
-
-        return $oCalendar->display();
-    }
-
-    function getBlockCode_TagsDate($iBlockId)
-    {
-        if (isset($_GET['year']) && isset($_GET['month']) && isset($_GET['day']))
-        {
-            $aParam = array(
-                'pagination' => getParam('tags_perpage_browse'),
-                'date' => array(
-                    'year' => (int)$_GET['year'],
-                    'month' => (int)$_GET['month'],
-                    'day' => (int)$_GET['day']
-                )
-            );
-
-            return showTags($aParam, $iBlockId, BX_TAGS_ACTION_CALENDAR, 0, _t('_tags_by_day'));
-        }
-        else
-            return MsgBox(_t('_Empty'));
-    }
-}
-
-class TagsSearchPage extends BxDolPageView {
-
-    var $aSearchForm;
-    var $oForm;
-    var $sPage;
-
-    function TagsSearchPage()
-    {
-        $this->sPage = 'tags_search';
-        parent::BxDolPageView($this->sPage);
-
-        bx_import('BxTemplFormView');
-        $this->aSearchForm = array(
-            'form_attrs' => array(
-                'name'     => 'form_search_tags',
-                'action'   => '',
-                'method'   => 'post',
-            ),
-
-            'params' => array (
-                'db' => array(
-                    'submit_name' => 'submit_form',
-                ),
-            ),
-
-            'inputs' => array(
-                'Keyword' => array(
-                    'type' => 'text',
-                    'name' => 'Keyword',
-                    'caption' => _t('_tags_caption_keyword'),
-                    'required' => true,
-                    'checker' => array (
-                        'func' => 'length',
-                        'params' => array(1, 100),
-                        'error' => _t ('_tags_err_keyword'),
-                    ),
-                    'db' => array (
-                        'pass' => 'Xss',
-                    ),
-                ),
-                'Submit' => array (
-                    'type' => 'submit',
-                    'name' => 'submit_form',
-                    'value' => _t('_Submit'),
-                    'colspan' => true,
-                ),
-            ),
-        );
-
-        $this->oForm = new BxTemplFormView($this->aSearchForm);
-        $this->oForm->initChecker();
-    }
-
-    function getBlockCode_Form()
-    {
-        return BxDolTemplate::getInstance()->parseHtmlByName('search_tags_box.html', array('form' => $this->oForm->getCode()));
-    }
-
-    function getBlockCode_Founded($iBlockId)
-    {
-        $aParam = array(
-            'pagination' => getParam('tags_perpage_browse')
-        );
-
-        $sFilter = bx_get('filter');
-        if ($sFilter !== false)
-            $aParam['filter'] = process_db_input($sFilter);
-        else if ($this->oForm->isSubmittedAndValid())
-            $aParam['filter'] = $this->oForm->getCleanValue('Keyword');
-
-        if (isset($aParam['filter']))
-            return showTags($aParam, $iBlockId, BX_TAGS_ACTION_SEARCH, 0, _t('_tags_founded_tags'));
-        else
-            return MsgBox(_t('_Empty'));
-    }
-}
-
-function getPage_Home()
-{
-    $oHomePage = new TagsHomePage();
-
-    return $oHomePage->getCode();
-}
-
-function getPage_All()
-{
-    $aParam = array(
-        'pagination' => getParam('tags_perpage_browse')
-    );
-
-    return showTags($aParam, 1, BX_TAGS_ACTION_ALL, BX_TAGS_BOX_DISIGN, _t('_all_tags'));
-}
-
-function getPage_Popular()
-{
-    $aParam = array(
-        'orderby' => 'popular',
-        'limit' => getParam('tags_show_limit')
-    );
-
-    return showTags($aParam, 2, BX_TAGS_ACTION_POPULAR, BX_TAGS_BOX_DISIGN, _t('_popular_tags'));
-}
-
-function getPage_Calendar()
-{
-    $oCalendarPage = new TagsCalendarPage();
-
-    return $oCalendarPage->getCode();
-}
-
-function getPage_Search()
-{
-    $oSearchPage = new TagsSearchPage();
-
-    return $oSearchPage->getCode();
-}
-
-$sAction = empty($_GET['action']) ? '' : $_GET['action'];
-switch ($sAction)
-{
-    case BX_TAGS_ACTION_POPULAR:
-        $sContent = getPage_Popular();
-        break;
-
-    case BX_TAGS_ACTION_ALL:
-        $sContent = getPage_All();
-        break;
-
-    case BX_TAGS_ACTION_CALENDAR:
-        $sContent = getPage_Calendar();
-        break;
-
-    case BX_TAGS_ACTION_SEARCH:
-        $sContent = getPage_Search();
-        break;
-
-    default:
-        $sContent = getPage_Home();
-}
-
-if (!$bAjaxMode) {
-	check_logged();
-
-	bx_import('BxDolTemplate');
-    $oTemplate = BxDolTemplate::getInstance();
-    $oTemplate->setPageNameIndex(25);
-    $oTemplate->setPageParams(array(
-        'header' => _t('_Tags'),
-        'header_text' => _t('_Tags'),
-    ));
-    $oTemplate->setPageContent('page_main_code', $sContent);
-    PageCode();
-}
-else
-    echo $sContent;

+ 0 - 24
template/browseTextUnit.html

@@ -1,24 +0,0 @@
-<!-- TODO: remake according to new design -->
-<div class="{unitClass}_Unit">
-    <div class="{unitClass}_Content">
-    <div class="{unitClass}_OwnerPic">{ownerPic}</div>
-        <div class="{unitClass}_Header">
-        <div class="{unitClass}_Title">{title}</div>
-            <div class="{unitClass}_Owner">{from}</div>
-            <div class="{unitClass}_Rate">{rate}</div>
-            <div class="clear_both"></div>
-        </div>
-        <div class="{unitClass}_Info">
-            <div class="{unitClass}_When">{when}</div>
-            <div class="{unitClass}_Category">{category}</div>
-            <div class="{unitClass}_View">{view}</div>
-            <div class="{unitClass}_Comment">{comment}</div>
-            <div class="{unitClass}_Tag">{tag}</div>
-            <div class="clear_both"></div>
-        </div>
-        <div class="{unitClass}_Body">
-            {body}
-        </div>
-    </div>
-
-</div>

+ 0 - 41
template/calendar.html

@@ -1,41 +0,0 @@
-<!-- TODO: remake according to new design -->
-
-<div class="sys_cal_wrapper">
-
-<div class="dbBottomMenu">
-    <img class="bot_icon_left" src="__month_prev_icon__" alt="" />
-    <a class="backMembers" href="__month_prev_url__">__month_prev_name__</a>
-    <img class="bot_icon_right" src="__month_next_icon__" alt="" />
-    <a class="moreMembers" href="__month_next_url__">__month_next_name__</a>
-    <span class="viewAllMembers">__month_current__</span>
-</div>
-
-<table class="sys_cal_table">
-    <tr>
-        <bx_repeat:week_names>
-            <th>__name__</th>
-        </bx_repeat:week_names>
-    </tr>
-    <bx_repeat:calendar_row>
-        <tr>
-            <bx_repeat:cell>
-                <td class="__class__" valign="top">
-                    <u>__day__</u>
-                    <bx_if:num>
-                        <a href="__href__"><b>__num__</b> __entries__</a>
-                    </bx_if:num>
-                </td>
-            </bx_repeat:cell>
-        </tr>
-    </bx_repeat:calendar_row>
-</table>
-
-<div class="dbBottomMenu">
-    <img class="bot_icon_left" src="__month_prev_icon__" alt="" />
-    <a class="backMembers" href="__month_prev_url__">__month_prev_name__</a>
-    <img class="bot_icon_right" src="__month_next_icon__" alt="" />
-    <a class="moreMembers" href="__month_next_url__">__month_next_name__</a>
-    <span class="viewAllMembers">__month_current__</span>
-</div>
-
-</div>

+ 0 - 75
template/css/mobile.css

@@ -1,75 +0,0 @@
-
-.bx-sys-mobile-padding { padding:9px; }
-.bx-sys-mobile-padding-top { padding-top:9px; }
-.bx-sys-mobile-padding-right { padding-right:9px; }
-.bx-sys-mobile-padding-bottom { padding-bottom:9px; }
-.bx-sys-mobile-padding-left { padding-left:9px; }
-
-.bx-sys-mobile-padding2 { padding:4px; }
-.bx-sys-mobile-padding2-top { padding-top:4px; }
-.bx-sys-mobile-padding2-right { padding-right:4px; }
-.bx-sys-mobile-padding2-bottom { padding-bottom:4px; }
-.bx-sys-mobile-padding2-left { padding-left:4px; }
-
-.bx-sys-mobile-margin { margin:9px; }
-.bx-sys-mobile-margin-top { margin-top:9px; }
-.bx-sys-mobile-margin-right { margin-right:9px; }
-.bx-sys-mobile-margin-bottom { margin-bottom:9px; }
-.bx-sys-mobile-margin-left { margin-left:9px; }
-
-.bx-sys-mobile-margin-auto { margin:9px; }
-.bx-sys-mobile-margin-auto:first-child { margin:9px 9px 0 9px; }
-.bx-sys-mobile-margin-top-auto { margin-top:9px; }
-.bx-sys-mobile-margin-top-auto:first-child { margin-top:0px; }
-
-.bx-sys-mobile-margin2 { margin:4px; }
-.bx-sys-mobile-margin2-top { margin-top:4px; }
-.bx-sys-mobile-margin2-right { margin-right:4px; }
-.bx-sys-mobile-margin2-bottom { margin-bottom:4px; }
-.bx-sys-mobile-margin2-left { margin-left:4px; }
-
-.bx-sys-mobile-margin2-auto { margin:4px; }
-.bx-sys-mobile-margin2-auto:first-child { margin:4px 4px 0 4px; }
-.bx-sys-mobile-margin2-top-auto { margin-top:4px; }
-.bx-sys-mobile-margin2-top-auto:first-child { margin-top:0px; }
-
-.bx-sys-mobile-border { border:4px solid #242424; }
-.bx-sys-mobile-border-top { border-top:4px solid #242424; }
-.bx-sys-mobile-border-right { border-right:4px solid #242424; }
-.bx-sys-mobile-border-bottom { border-right:4px solid #242424; }
-.bx-sys-mobile-border-left { border-right:4px solid #242424; }
-
-.bx-sys-mobile-border-auto { border:4px solid #242424; }
-.bx-sys-mobile-border-auto:first-child { border-top:4px solid #242424; border-right:4px solid #242424; border-bottom:none; border-left:4px solid #242424; }
-
-.bx-sys-mobile-box-bg { background-color:#2a2a2a; }
-.bx-sys-mobile-box-bg-sel { background-color:#ff7a00; } 
-
-.bx-sys-mobile-text {
-    color:white;
-    font-family:Arial, Verdana;
-    font-size:12px;
-}
-
-.bx-sys-mobile-text a {
-    color:white;
-    text-decoration:underline;
-}
-
-.bx-sys-mobile-page {
-    padding:0;
-    margin:0;
-    background-color:#333333;
-}
-
-.bx-sys-row { position:relative; }
-.bx-sys-row h1, .bx-sys-row h2, .bx-sys-row h3 { margin:0; padding:0; }
-.bx-sys-row-accessory { height:0px; width:0px; position:absolute; top:50%; right:0px; }
-.bx-sys-row-accessory-img { position:absolute; top:-12px; left:-16px; }
-
-.bx-sys-box { }
-
-.bx-sys-mobile-page h1 { font-size:16px; }
-.bx-sys-mobile-page h2 { font-size:14px; }
-.bx-sys-mobile-page h3 { font-size:12px; }
-

+ 0 - 3
template/mobile_box.html

@@ -1,3 +0,0 @@
-<div class="bx-sys-mobile-padding2 bx-sys-mobile-border bx-sys-mobile-box-bg bx-sys-mobile-text">
-    __content__
-</div>

+ 0 - 3
template/mobile_page_padding.html

@@ -1,3 +0,0 @@
-<div class="bx-sys-mobile-padding">
-    __content__
-</div>

+ 0 - 9
template/mobile_row.html

@@ -1,9 +0,0 @@
-<div class="bx-sys-row bx-sys-mobile-padding bx-sys-mobile-border bx-sys-mobile-box-bg bx-sys-mobile-margin-top-auto" ontouchstart="$(this).addClass('bx-sys-mobile-box-bg-sel')" ontouchend="$(this).removeClass('bx-sys-mobile-box-bg-sel');" onclick="if('__url__'.length) document.location = '__url__';">
-
-    __content__
-
-    <div class="bx-sys-row-accessory bx-sys-mobile-margin-right">
-        <img class="bx-sys-row-accessory-img" src="<bx_icon_url:mobile_next.png />" />
-    </div>
-
-</div>

+ 0 - 14
template/page_11.html

@@ -1,14 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<head>
-	<title>__page_header__</title>
-   	<meta http-equiv="Content-Type" content="text/html; charset=__page_charset__" />
-	<bx_include_css />
-	<bx_include_js />
-    <bx_injection:mobile_injection_head />
-</head>
-<body class="bx-sys-mobile-page bx-sys-mobile-text">
-    <bx_injection:mobile_injection_header />
-    __page_main_code__
-    <bx_injection:mobile_injection_footer />
-</body>
-</html>

+ 0 - 39
template/scripts/BxBaseCalendar.php

@@ -1,39 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import ('BxDolCalendar');
-
-/**
- * @see BxDolCalendar
- */
-class BxBaseCalendar extends BxDolCalendar {
-
-    function BxBaseCalendar ($iYear, $iMonth) {
-        parent::BxDolCalendar($iYear, $iMonth);
-    }
-
-    function display() {
-        $oTemplate = BxDolTemplate::getInstance();
-        $aVars = array (
-            'bx_repeat:week_names' => $this->_getWeekNames (),
-            'bx_repeat:calendar_row' => $this->_getCalendar (),
-            'month_prev_url' => $this->getBaseUri () . "{$this->iPrevYear}/{$this->iPrevMonth}",
-            'month_prev_name' => _t('_month_prev'),
-            'month_prev_icon' => getTemplateIcon('sys_back.png'),
-            'month_next_url' => $this->getBaseUri () . "{$this->iNextYear}/{$this->iNextMonth}",
-            'month_next_name' => _t('_month_next'),
-            'month_next_icon' => getTemplateIcon('sys_next.png'),
-            'month_current' => $this->getTitle(),
-        );
-        $sHtml = $oTemplate->parseHtmlByName('calendar.html', $aVars);
-        $sHtml = preg_replace ('#<bx_repeat:events>.*?</bx_repeat:events>#s', '', $sHtml); // TODO: check this line and remove if unused
-        $oTemplate->addCss('calendar.css');
-        return $sHtml;
-    }
-}
-

+ 0 - 201
template/scripts/BxBaseCategories.php

@@ -1,201 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import('BxDolTemplate');
-bx_import('BxDolCategories');
-
-class BxBaseCategories extends BxDolCategories
-{
-    var $_sCategTmplName;
-    var $_sCategTmplContent;
-
-    function BxBaseCategories ()
-    {
-        parent::BxDolCategories();
-
-        $this->_sCategTmplName = 'view_categ.html';
-        $this->_sCategTmplContent = '';
-    }
-
-    function getCategoriesView ($aTotalCategories, $sHrefTempl, $iColumns) {
-        $oSysTemplate = BxDolTemplate::getInstance();
-
-        if (empty($aTotalCategories))
-            return MsgBox(_t( '_Empty' ));
-
-        if (!$iColumns)
-            $iColumns = 1;
-
-        $iCount = count($aTotalCategories);
-        $iRowCount = floor($iCount / $iColumns) + (($iCount % $iColumns) ? 1 : 0);
-        $iWidthPr = floor(100 / $iColumns);
-        $i = 0;
-        $sCode = '<div class="categories_wrapper">';
-
-        foreach( $aTotalCategories as $sCategory => $iCatCount )
-        {
-            if (!($i % $iRowCount))
-            {
-                if ($i)
-                    $sCode .= '</div>';
-                $sCode .= '<div class="categories_col" style="width: ' . $iWidthPr . '%">';
-            }
-
-            $aUnit['catHref'] = str_replace( '{tag}', urlencode(title2uri($sCategory)), $sHrefTempl);
-            $aUnit['category'] = htmlspecialchars_adv($sCategory );
-            $aUnit['count'] = $iCatCount;
-
-            if ($this->_sCategTmplContent)
-                $sCode .= $oSysTemplate->parseHtmlByContent($this->_sCategTmplContent, $aUnit);
-            else
-                $sCode .= $oSysTemplate->parseHtmlByName($this->_sCategTmplName, $aUnit);
-
-            $i++;
-        }
-
-        $sCode .= '</div></div>';
-
-        return $sCode;
-    }
-
-    function getCategTopMenu ($aParam, $sAction = '')
-    {
-        $aTopMenu = array();
-        $aParamTmp = $aParam;
-
-        foreach ($this->aTagObjects as $sKey => $aTagUnit)
-        {
-            $sName = _t($aTagUnit['LangKey']);
-            $sHref = bx_html_attribute($_SERVER['PHP_SELF']) . "?tags_mode=$sKey" . ($sAction ? '&action=' . $sAction : '');
-
-            if (isset($aParam['filter']) && $aParam['filter'])
-            {
-                $aParamTmp['type'] = $sKey;
-                $sName .= '(' . $this->getTagsCount($aParamTmp) . ')';
-                $sHref .= '&filter=' . $aParam['filter'];
-            }
-
-            if (isset($aParam['date']) && $aParam['date'])
-                $sHref .= '&year=' . $aParam['date']['year'] .
-                    '&month=' . $aParam['date']['month'] .
-                    '&day=' . $aParam['date']['day'];
-
-            $aTopMenu[$sName] = array('href' => $sHref, 'dynamic' => true, 'active' => ( $sKey == $aParam['type']));
-        }
-
-        return $aTopMenu;
-    }
-
-    function getCategTopMenuHtml($aParam, $iBoxId, $sAction = '')
-    {
-        $aItems = array();
-
-        $aTopMenu = $this->getCategTopMenu($aParam, $sAction);
-        foreach ($aTopMenu as $sName => $aItem)
-        {
-            $aItems[$sName] = array(
-                'dynamic' => true,
-                'active' => $aItem['active'],
-                'href' => $aItem['href']
-            );
-        }
-        return BxDolPageView::getBlockCaptionItemCode($iBoxId, $aItems);
-    }
-
-    function display($aParam, $iBoxId, $sAction = '', $bOrderPanel = false, $iColumns, $sUrl = '')
-    {
-        if (!isset($aParam['type']) || !$aParam['type'])
-            return MsgBox(_t( '_Empty' ));
-
-        $sPaginate = '';
-        $sCode = '';
-        $sPageUrl = $sUrl ? $sUrl : bx_html_attribute($_SERVER['PHP_SELF']);
-        $sPageUrl .= '?tags_mode=' . $aParam['type'];
-
-        if (!isset($aParam['orderby']) && isset($_REQUEST['orderby']) && $_REQUEST['orderby'])
-            $aParam['orderby'] = $_REQUEST['orderby'];
-
-        if (isset($aParam['filter']) && $aParam['filter'])
-            $sPageUrl .= '&filter=' . $aParam['filter'];
-        if (isset($aParam['orderby']) && $aParam['orderby'])
-            $sPageUrl .= '&orderby=' . $aParam['orderby'];
-        if ($sAction)
-            $sPageUrl .= '&action=' . $sAction;
-        if (isset($aParam['date']) && $aParam['date'])
-        {
-            $sPageUrl .= '&year=' . $aParam['date']['year'] .
-                '&month=' . $aParam['date']['month'] .
-                '&day=' . $aParam['date']['day'];
-        }
-
-        if (isset($aParam['pagination']) && $aParam['pagination'])
-        {
-            bx_import('BxDolPaginate');
-
-            $aPaginate = array(
-                'page_url' => $sPageUrl . '&page={page}&per_page={per_page}',
-                'info' => true,
-                'page_links' => true,
-                'on_change_page' => "!loadDynamicBlock($iBoxId, this.href)"
-            );
-
-            $aParam['limit'] = $aPaginate['per_page'] = $aParam['pagination'];
-            $aPaginate['count'] = $this->getTagsCount($aParam);
-            $aPaginate['page'] = isset($_REQUEST['page']) ? (int)$_REQUEST['page'] : 1;
-            $aParam['start'] = $aParam['limit'] * ($aPaginate['page'] - 1);
-            if ($aParam['start'] <=0)
-                $aParam['start'] = 0;
-
-            $oPaginate = new BxDolPaginate($aPaginate);
-            $sPaginate = '<div class="clear_both"></div>'.$oPaginate->getPaginate();
-        }
-
-        $sHrefTmpl = $this->getHrefWithType($aParam['type']);
-        $aTotalTags = $this->getTagList($aParam);
-
-        if ($aTotalTags)
-        {
-            if ($bOrderPanel)
-                $sCode .= $this->_getTopBox($aParam, $iBoxId, $sPageUrl);
-            $sCode .= $this->getCategoriesView($aTotalTags, $sHrefTmpl, $iColumns) . $sPaginate;
-        }
-        else
-            return MsgBox(_t( '_Empty' ));
-
-        return $sCode;
-    }
-
-    function setTemplateName($sTmplName)
-    {
-        $this->_sCategTmplName = $sTmplName;
-    }
-
-    function setTemplateContent($sTmplContent)
-    {
-        $this->_sCategTmplContent = $sTmplContent;
-    }
-
-    function _getTopBox($aParam, $iBoxId, $sPageUrl) {
-        $sCode = '';
-
-        $aValues = array(
-            'none' => _t('_categ_order_none'),
-            'popular' => _t('_categ_order_popular'),
-            'recent' => _t('_categ_order_recent')
-        );
-        $sTopCode = _t('_categ_order_order_by');
-        $sTopCode .= '<select onchange="loadDynamicBlock(' . $iBoxId . ', \'' . $sPageUrl . '&orderby=\' + this.value + \'' . '\')">';
-        foreach ($aValues as $sKey => $sVal)
-            $sTopCode .= '<option value="' . $sKey . '" ' . ($sKey == $aParam['orderby'] ? 'selected' : '') . '>' . $sVal . '</option>';
-        $sTopCode .= '</select>';
-        $sCode = BxDolTemplate::getInstance()->parseHtmlByName('top_block.html', array('code' => $sTopCode));
-
-        return $sCode;
-    }
-}
-

+ 0 - 56
template/scripts/BxBaseCategoriesModule.php

@@ -1,56 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-// TODO: reconsider almost all functionality in this file, according to new concept it should NOT be separate page with all categories, every module has its own page with tags
-
-bx_import('BxDolPageView');
-bx_import('BxBaseCategories');
-
-class BxBaseCategoriesModule extends BxDolPageView
-{
-    var $_sPage;
-    var $_sTitle;
-    var $_sUrl;
-    var $_aParam;
-
-    function BxBaseCategoriesModule($aParam, $sTitle, $sUrl)
-    {
-        $this->_sPage = 'categ_module';
-        $this->_sTitle = $sTitle ? $sTitle : _t('_categ_users');
-        $this->_sUrl = $sUrl;
-        $this->_aParam = $aParam;
-        parent::BxDolPageView($this->_sPage);
-    }
-
-    function getBlockCode_Common($iBlockId)
-    {
-        $oCateg = new BxBaseCategories();
-        $oCateg->getTagObjectConfig();
-        $aParam = array(
-            'type' => $this->_aParam['type'],
-            'common' => true
-        );
-
-        return $oCateg->display($aParam, $iBlockId, '', true, 1, $this->_sUrl);
-    }
-
-    function getBlockCode_All($iBlockId)
-    {
-        $oCateg = new BxBaseCategories();
-        $oCateg->getTagObjectConfig();
-        $this->_aParam['common'] = false;
-
-        return array(
-            $oCateg->display($this->_aParam, $iBlockId, '', true, getParam('categ_show_columns'), $this->_sUrl),
-            array(),
-            array(),
-            $this->_sTitle
-        );
-    }
-}
-

+ 0 - 184
template/scripts/BxBaseTags.php

@@ -1,184 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-bx_import('BxDolTemplate');
-bx_import('BxDolTags');
-
-class BxBaseTags extends BxDolTags {
-
-    var $_sTagTmplName;
-    var $_sTagTmplContent;
-
-    function BxBaseTags () {
-        parent::BxDolTags();
-
-        $this->_sTagTmplName = 'view_tags.html';
-        $this->_sTagTmplContent = '';
-    }
-
-    function getTagsView ($aTotalTags, $sHrefTempl) {
-        $oSysTemplate = BxDolTemplate::getInstance();
-
-        if (empty($aTotalTags))
-            return MsgBox(_t('_Empty'));
-
-        bx_import('BxTemplConfig');
-        $oTemplConfig = BxTemplConfig::getInstance();
-
-        $iMinFontSize = $oTemplConfig -> iTagsMinFontSize;
-        $iMaxFontSize = $oTemplConfig -> iTagsMaxFontSize;
-        $iFontDiff = $iMaxFontSize - $iMinFontSize;
-
-        $iMinRating = min( $aTotalTags );
-        $iMaxRating = max( $aTotalTags );
-
-        $iRatingDiff = $iMaxRating - $iMinRating;
-        $iRatingDiff = ($iRatingDiff==0)? 1:$iRatingDiff;
-
-        $sCode = '<div class="tags_wrapper">';
-        $aUnit = array();
-        foreach( $aTotalTags as $sTag => $iCount ) {
-            $aUnit['tagSize'] = $iMinFontSize + round( $iFontDiff * ( ( $iCount - $iMinRating ) / $iRatingDiff ) );
-            $aUnit['tagHref'] = str_replace( '{tag}', urlencode(title2uri($sTag)), $sHrefTempl);
-            $aUnit['countCapt'] = _t( '_Count' );
-            $aUnit['countNum'] = $iCount;
-            $aUnit['tag'] = htmlspecialchars_adv( $sTag );
-            if ($this->_sTagTmplContent)
-                $sCode .= $oSysTemplate->parseHtmlByContent($this->_sTagTmplContent, $aUnit);
-            else
-                $sCode .= $oSysTemplate->parseHtmlByName($this->_sTagTmplName, $aUnit);
-        }
-        $sCode .= '</div>';
-        $sCode .= '<div class="clear_both"></div>';
-        return $sCode;
-    }
-
-    function getTagsTopMenu ($aParam, $sAction = '')
-    {
-        $aTopMenu = array();
-        $aParamTmp = $aParam;
-
-        foreach ($this->aTagObjects as $sKey => $aTagUnit)
-        {
-            $sName = _t($aTagUnit['LangKey']);
-            $sHref = bx_html_attribute($_SERVER['PHP_SELF']) . "?tags_mode=$sKey" . ($sAction ? '&action=' . $sAction : '');
-
-            if (isset($aParam['filter']) && $aParam['filter'])
-            {
-                $aParamTmp['type'] = $sKey;
-                $sName .= '(' . $this->getTagsCount($aParamTmp) . ')';
-                $sHref .= '&filter=' . $aParam['filter'];
-            }
-
-            if (isset($aParam['date']) && $aParam['date'])
-                $sHref .= '&year=' . $aParam['date']['year'] .
-                    '&month=' . $aParam['date']['month'] .
-                    '&day=' . $aParam['date']['day'];
-
-            $aTopMenu[$sName] = array('href' => $sHref, 'key' => $sKey, 'dynamic' => true, 'active' => ( $sKey == $aParam['type']));
-        }
-
-        return $aTopMenu;
-    }
-
-    function getTagsTopMenuHtml ($aParam, $iBoxId, $sAction = '')
-    {
-        $aItems = array();
-
-        $aTopMenu = $this->getTagsTopMenu($aParam, $sAction);
-        foreach ($aTopMenu as $sName => $aItem)
-        {
-            $aItems[$sName] = array(
-                'dynamic' => true,
-                'active' => $aItem['active'],
-                'href' => $aItem['href']
-            );
-        }
-
-        return BxDolPageView::getBlockCaptionItemCode($iBoxId, $aItems);
-    }
-
-    function getTagsInternalMenuHtml ($aParam, $iBoxId, $sAction = '') {
-        $sMenu = '';
-
-        $sMenu = _t('_tags_caption_module') . ' <select onchange="loadDynamicBlock(' . $iBoxId . ', this.value);">';
-        $aMenu = $this->getTagsTopMenu($aParam, $sAction);
-
-        foreach ($aMenu as $sName => $aItem) {
-            $sMenu .= '<option value="' . $aItem['href'] . '" '.
-                ($aItem['key'] == $aParam['type'] ? 'selected' : '') .'>' .
-                $sName . '</option>';
-        }
-
-        $sMenu .= '</select>';
-
-        return BxDolTemplate::getInstance()->parseHtmlByName('top_block.html', array('code' => $sMenu));
-    }
-
-    function display($aParam, $iBoxId, $sAction = '', $sUrl = '')
-    {
-        $sPaginate = '';
-
-        if (!isset($aParam['type']) || !$aParam['type'])
-            return MsgBox(_t( '_Empty' ));
-
-        if (isset($aParam['pagination']) && $aParam['pagination'])
-        {
-            bx_import('BxDolPaginate');
-            $sPageUrl = $sUrl ? $sUrl : bx_html_attribute($_SERVER['PHP_SELF']);
-            $sPageUrl .= '?tags_mode=' . $aParam['type'] . '&page={page}&per_page={per_page}';
-
-            if (isset($aParam['filter']) && $aParam['filter'])
-                $sPageUrl .= '&filter=' . $aParam['filter'];
-            if ($sAction)
-                $sPageUrl .= '&action=' . $sAction;
-            if (isset($aParam['date']) && $aParam['date'])
-            {
-                $sPageUrl .= '&year=' . $aParam['date']['year'] .
-                    '&month=' . $aParam['date']['month'] .
-                    '&day=' . $aParam['date']['day'];
-            }
-
-            $aPaginate = array(
-                'page_url' => $sPageUrl,
-                'info' => true,
-                'page_links' => true,
-                'on_change_page' => "!loadDynamicBlock($iBoxId, this.href)"
-            );
-
-            $aParam['limit'] = $aPaginate['per_page'] = $aParam['pagination'];
-            $aPaginate['count'] = $this->getTagsCount($aParam);
-            $aPaginate['page'] = isset($_REQUEST['page']) ? (int)$_REQUEST['page'] : 1;
-            $aParam['start'] = $aParam['limit'] * ($aPaginate['page'] - 1);
-            if ($aParam['start'] <=0)
-                $aParam['start'] = 0;
-
-            $oPaginate = new BxDolPaginate($aPaginate);
-            $sPaginate = '<div class="clear_both"></div>'.$oPaginate->getPaginate();
-        }
-
-        $sHrefTmpl = $this->getHrefWithType($aParam['type']);
-        $aTotalTags = $this->getTagList($aParam);
-
-        if ($aTotalTags)
-            return $this->getTagsView($aTotalTags, $sHrefTmpl) . $sPaginate;
-        else
-            return MsgBox(_t( '_Empty' ));
-    }
-
-    function setTemplateName($sTmplName)
-    {
-        $this->_sTagTmplName = $sTmplName;
-    }
-
-    function setTemplateContent($sTmplContent)
-    {
-        $this->_sTagTmplContent = $sTmplContent;
-    }
-}
-

+ 0 - 62
template/scripts/BxBaseTagsModule.php

@@ -1,62 +0,0 @@
-<?php
-/**
- * @package     Dolphin Core
- * @copyright   Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
- * @license     CC-BY - http://creativecommons.org/licenses/by/3.0/
- */
-defined('BX_DOL') or die('hack attempt');
-
-// TODO: reconsider almost all functionality in this file, according to new concept it should NOT be separate page with all tags, every module has its own page with tags
-
-bx_import('BxDolPageView');
-bx_import('BxTemplTags');
-
-class BxBaseTagsModule extends BxDolPageView
-{
-    var $_sPage;
-    var $_sTitle;
-    var $_sUrl;
-    var $_aParam;
-
-    function BxBaseTagsModule($aParam, $sTitle, $sUrl)
-    {
-        $this->_sPage = 'tags_module';
-        $this->_sTitle = $sTitle ? $sTitle : _t('_all_tags');
-        $this->_sUrl = $sUrl;
-        $this->_aParam = $aParam;
-        parent::BxDolPageView($this->_sPage);
-    }
-
-    function getBlockCode_Recent($iBlockId)
-    {
-        $oTags = new BxTemplTags();
-        $oTags->getTagObjectConfig();
-
-        return array(
-            $oTags->display(
-                array(
-                    'type' => $this->_aParam['type'],
-                    'orderby' => 'recent',
-                    'limit' => getParam('tags_show_limit')
-                ),
-                $iBlockId, '', $this->_sUrl)
-        );
-    }
-
-    function getBlockCode_All($iBlockId)
-    {
-        $oTags = new BxTemplTags();
-        $oTags->getTagObjectConfig();
-
-        if (!isset($this->_aParam['pagination']))
-            $this->_aParam['pagination'] = getParam('tags_perpage_browse');
-
-        return array(
-            $oTags->display($this->_aParam, $iBlockId, '', $this->_sUrl),
-            array(),
-            array(),
-            $this->_sTitle
-        );
-    }
-}
-

+ 0 - 2
template/view_categ.html

@@ -1,2 +0,0 @@
-<!-- TODO: remake acording to new design and styles -->
-<a href="__catHref__">__category__(__count__)</a><br />

+ 0 - 2
template/view_tags.html

@@ -1,2 +0,0 @@
-<!-- TODO: remake acording to new design and styles -->
-<span class="one_tag" style="font-size:__tagSize__px;"><a href="__tagHref__" title="__countCapt__: __countNum__">__tag__</a></span>