HEX
Server: Apache
System: Linux sg241.singhost.net 2.6.32-896.16.1.lve1.4.51.el6.x86_64 #1 SMP Wed Jan 17 13:19:23 EST 2018 x86_64
User: honghock (909)
PHP: 8.0.30
Disabled: passthru,system,shell_exec,show_source,exec,popen,proc_open
Upload Files
File: //opt/cpanel/ea-php54/root/usr/share/pear/RVSeagullMod/lib/RVSGL/SitebuilderDao/ColorDao.php
<?php
/* Reminder: always indent with 4 spaces (no tabs). */
// +---------------------------------------------------------------------------+
// WebSite:  http://www.rvglobalsoft.com
// Unauthorized copying is strictly forbidden and may result in severe legal action.
// Copyright (c) 2006 RV Global Soft Co.,Ltd. All rights reserved.
// 
// =====YOU MUST KEEP THIS COPYRIGHTS NOTICE INTACT AND CAN NOT BE REMOVE =======
// Copyright (c) 2006 RV Global Soft Co.,Ltd. All rights reserved.
// This Agreement is a legal contract, which specifies the terms of the license
// and warranty limitation between you and RV Global Soft Co.,Ltd. and RV Site Builder.
// You should carefully read the following terms and conditions before
// installing or using this software.  Unless you have a different license
// agreement obtained from RV Global Soft Co.,Ltd., installation or use of this software
// indicates your acceptance of the license and warranty limitation terms
// contained in this Agreement. If you do not agree to the terms of this
// Agreement, promptly delete and destroy all copies of the Software.
//
// =====  Grant of License =======
// The Software may only be installed and used on a single host machine.
//
// =====  Disclaimer of Warranty =======
// THIS SOFTWARE AND ACCOMPANYING DOCUMENTATION ARE PROVIDED "AS IS" AND
// WITHOUT WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY OTHER
// WARRANTIES WHETHER EXPRESSED OR IMPLIED.   BECAUSE OF THE VARIOUS HARDWARE
// AND SOFTWARE ENVIRONMENTS INTO WHICH RV SITE BUILDER MAY BE USED, NO WARRANTY OF
// FITNESS FOR A PARTICULAR PURPOSE IS OFFERED.  THE USER MUST ASSUME THE
// ENTIRE RISK OF USING THIS PROGRAM.  ANY LIABILITY OF RV GLOBAL SOFT CO.,LTD. WILL BE
// LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE PRICE.
// IN NO CASE SHALL RV GLOBAL SOFT CO.,LTD. BE LIABLE FOR ANY INCIDENTAL, SPECIAL OR
// CONSEQUENTIAL DAMAGES OR LOSS, INCLUDING, WITHOUT LIMITATION, LOST PROFITS
// OR THE INABILITY TO USE EQUIPMENT OR ACCESS DATA, WHETHER SUCH DAMAGES ARE
// BASED UPON A BREACH OF EXPRESS OR IMPLIED WARRANTIES, BREACH OF CONTRACT,
// NEGLIGENCE, STRICT TORT, OR ANY OTHER LEGAL THEORY. THIS IS TRUE EVEN IF
// RV GLOBAL SOFT CO.,LTD. IS ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO CASE WILL
// RV GLOBAL SOFT CO.,LTD.'S LIABILITY EXCEED THE AMOUNT OF THE LICENSE FEE ACTUALLY PAID
// BY LICENSEE TO RV GLOBAL SOFT CO.,LTD.
// +---------------------------------------------------------------------------+
// $Id$
// +---------------------------------------------------------------------------+

/**
 *  Data access methods for the color of RVSiteBuilder  
 *
 * @package sitebuilder
 * @author  Pairote Manunphol <pairote@rvglobalsoft.com>
 * @author  Parinya <parinya@rvglobalsoft.com>
 * @version $Revision$
 * @since   PHP 5.1
 */

class ColorDao extends DbWrapper implements SitebuilderInf
{
	function ColorDao()
	{
		parent::DbWrapper();
	}
	
	/**
	 * Returns a singleton ColorDao instance.
	 *
	 * @param bool $autoload
	 * @return obj
	 */
	public static function singleton($autoload=false)
    {
        static $instance;
        // If the instance is not there, create one
        if (!isset($instance) || $autoload) {
            $class = __CLASS__;
            $instance = new $class();
        }
        return $instance;
    }
    
	public function findAllColorTemplateBytemplateID($templateId=null, $fecthMode='getassoc')
	{
	    SGL::logMessage(null, PEAR_LOG_DEBUG);
        $oTemplateItem = DB_DataObject::factory($this->aConf['table']['rvs_template_item']);
	    $query = sprintf('
            SELECT 
                DISTINCT (c.color_id)
                , c.color_name
                , c.color_code 
            FROM 
                %s c
                , %s it 
            WHERE 
                it.template_id = %s
                AND c.color_id = it.color_id
            ORDER BY 
                color_name
            '
            , $this->aConf['table']['rvs_color']
            , $this->aConf['table']['rvs_template_item']
            , RvsLibs_String::quoteSmart($templateId)
        );
	    $oTemplateItem->query($query);
        $aCloneData = array();
        while ($oTemplateItem->fetch()) {
            $aCloneData[]= clone($oTemplateItem);
        }
        return DbWrapper::fetchDatas($oTemplateItem->_resultFields, $aCloneData, $fecthMode);
	}
	
	public function FindAllColorNameByColorGroupID($fecthMode='getassoc')
	{
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
	    $oColorGroupName = DB_DataObject::factory($this->aConf['table']['rvs_color_group_name']);
	    $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color']);
	    $oColor->joinAdd($oColorGroupName);
    
	    $oColor->orderBy("color_group_id");
        $oColor->selectAdd(); 
        $oColor->selectAdd("
            color_group_id
            , color_name"
        );
        $oColor->find();

	    $aCloneData = array();
	    while ($oColor->fetch()) {
	        $aCloneData[]= clone($oColor);
	    }
	    DB_DataObject::debugLevel();
	    return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);
	}
    
	/**
	 * Select color group data by color id
	 * @author Parinya Chaipetch
	 * 
	 * @param string $colorId
	 * @param string $fecthMode
	 * @access public
	 * @return array
	 */
	function findColorGroupByColorId($colorId=null, $fecthMode='getassoc')
	{
	    SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
	    $oColorGroup = DB_DataObject::factory($this->aConf['table']['rvs_color_group']);
	    
	    if (!is_null($colorId)) {
	        $oColorGroup->color_id = $colorId;
	    }
	    $oColorGroup->find();
	    
	    $aCloneData = array();
        while ($oColorGroup->fetch()) {
            $aCloneData[]= clone($oColorGroup);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColorGroup->_resultFields, $aCloneData, $fecthMode);
	}
	
	/**
	 * Find Data from table rvs_color, rvs_color_group and  rvs_color_group_name By color_id, color_group_id 
	 *
	 * Resulting SQL
	 * 		SELECT 
	 * 				*
	 * 		FROM
	 * 				rvs_color co
	 * 				 , rvs_color_group cg
	 * 				 , rvs_color_group_name cn
	 * 		 WHERE
	 * 				co.color_id = cn.default_color_id
	 * 				AND cg.color_group_id = cn.color_group_id
	 * 				AND cg.color_id = {$colorId}
	 * 
	 * @author duangdao.k
	 * @param string $colorId
	 * @param string $fecthMode
	 * @return object
	 */
	public function findColorDataByColorId($colorId = null, $fecthMode='getassoc')
	{
	    //SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
	    $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color']);
	    
	    if (!is_null($colorId)) {
	        $query = sprintf('
				SELECT 
                     *
				FROM
                       %s co
                       , %s cg
                       , %s cn
				WHERE
               			 co.color_id = cn.default_color_id
                AND 
                		cg.color_group_id = cn.color_group_id
                AND
                		 cg.color_id = %s
                '
                , $this->aConf['table']['rvs_color']
                , $this->aConf['table']['rvs_color_group']
                , $this->aConf['table']['rvs_color_group_name']
                , RvsLibs_String::quoteSmart($colorId)
              );
              $oColor->query($query);
        }
        $aCloneData = array();
        while ($oColor->fetch()) {
            $aCloneData[]= clone($oColor);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);
	}
	
	/**
	 * find color by color group id
	 * @author pharadol
	 * @param <string> $colorGroupId
	 * @param <string> $fecthMode
	 * @return <array>
	 * form file ImportTemplateMgr.php
	 /*
        $query = "    
                        SELECT 
                                    *
                        FROM
                                    {$this->conf['table']['rvs_color']} co 
                                    , {$this->conf['table']['rvs_color_group_name']} cn
                        WHERE
                                    co.color_id = cn.default_color_id";
        if ($colorGroupId) {
        $query .= " AND cn.color_group_id = '$colorGroupId'";
        }
        $query .= " ORDER BY color_group_id
                    ";
        $aColorGroup =  $this->dbh->getAssoc($query);
       */
	public function findColorByColorGroupId($colorGroupId = null, $fecthMode = 'getassoc')
	{
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
	    $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color']);
	    if (!is_null($colorGroupId)) {
	    $query = sprintf('    
                        SELECT 
                                    *
                        FROM
                                    %s co 
                                    , %s cn
                        WHERE
                                    co.color_id = cn.default_color_id
                                    '
                                    , $this->aConf['table']['rvs_color']
                                    , $this->aConf['table']['rvs_color_group_name'] 
	               
	                               );
        if ($colorGroupId) {
        $query .= sprintf(' AND cn.color_group_id = %s
                            '
                            , RvsLibs_String::quoteSmart($colorGroupId)
                                  );
        }
        $query .= sprintf(' ORDER BY color_group_id
                                ');
	    $oColor->query($query);
        }
        $aCloneData = array();
        while ($oColor->fetch()) {
            $aCloneData[]= clone($oColor);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);
    }
    
    /**
     * Find color group id
	 * @author pharadol
     * @param <string> $colorGroupId
     * @param <string> $fecthMode
     * @return <array>
     * form file ImportTemplateMgr.php
     
        $query = "
                        SELECT *
                        FROM 
                                    {$this->conf['table']['rvs_color']} co 
                                    , {$this->conf['table']['rvs_color_group']} cg
                                    , {$this->conf['table']['rvs_color_group_name']} cn
                        WHERE 
                                    cg.color_group_id = '" . $input->color_group_id . "'
                        AND 
                                    co.color_id = cg.color_id
                        AND
                                    cg.color_group_id = cn.color_group_id
                        ORDER BY co.color_id
                    ";                
        $aColor =  $this->dbh->getAssoc($query);
        */
    function findColorGroupId($colorGroupId = null, $fecthMode = 'getassoc')
    {
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
	    $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color']);
	    if (!is_null($colorGroupId)) {
            $query = sprintf('
                        SELECT 
                                     *
                        FROM 
                                    %s  co 
                                    , %s  cg
                                    , %s cn
                        WHERE 
                                    cg.color_group_id = %s
                        AND 
                                    co.color_id = cg.color_id
                        AND
                                    cg.color_group_id = cn.color_group_id
                        ORDER BY co.color_id
                    '
                    ,  $this->aConf['table']['rvs_color']
                    ,  $this->aConf['table']['rvs_color_group']
                    ,  $this->aConf['table']['rvs_color_group_name']
                    ,  RvsLibs_String::quoteSmart($colorGroupId)
                        );      
                $oColor->query($query);
	    }       
        $aCloneData = array();
        while ($oColor->fetch()) {
            $aCloneData[]= clone($oColor);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);   

       /*$query = "
                        SELECT
                                    *
                        FROM
                                    {$this->conf['table']['rvs_color']}
                        WHERE
                                    color_name = '" . RvsLibs_String::trim(ucfirst($colorName)) . "'
                    ";
          $res2 = $this->dbh->getRow($query);
        */    
        
    }
    /**
     * find AllColor Data By ColorName in table rvs_color
     * 
     *  SELECT
     *        *
     *  FROM
     *       rvs_color
     *  WHERE
     *        color_name = {trim(ucfirst($colorName))}           
     * 
	 * @author Pornthip Phothong
     * @param  <string> $colorName
     * @param  <string> $fecthMode
     * @return array obj
     * form UploadTemplateMgr.php
     */
    public function findAllColorDataByColorName($colorName=null, $fecthMode = 'getassoc')
    {
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
        $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color']);
        if (!is_null($colorName)) {
            $query = sprintf('
                        SELECT
                                    *
                        FROM
                                    %s
                        WHERE
                                    color_name LIKE %s
                    '
                    , $this->aConf['table']['rvs_color']
                    , RvsLibs_String::quoteSmart($colorName)
                    );
                    $oColor->query($query);
        }
        $aCloneData = array();
        while ($oColor->fetch()) {
            $aCloneData[]= clone($oColor);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);
    }   
    
    /**
     * find validate template colorid By color group id
	 * @author pharadol
     * @param <string> $colorGroupId
     * @param <string> $fecthMode
     * @return array
     * form file ImportTemplateMgr.php
     */
    public function findvalidateTemplateColorIdByColorGroupId($colorGroupId = null, $fecthMode = 'getassoc')
    {
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
        $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color_group_name']);
        if (!is_null($colorGroupId)) {
            $query = sprintf('
                            SELECT 
                                        * 
                            FROM 
                                       %s
                            WHERE 
                                        color_group_id = %s
                            '
                            ,   $this->aConf['table']['rvs_color_group_name']
                            ,  RvsLibs_String::quoteSmart($colorGroupId)
                            );
                               $oColor->query($query);
       }  
        $aCloneData = array();
        while ($oColor->fetch()) {
            $aCloneData[]= clone($oColor);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);
    }
    
    public function findColorByColorId($colorId = null, $fecthMode = 'getassoc')
    {
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
        $oColor = DB_DataObject::factory($this->aConf['table']['rvs_color']);
        if (!is_null($colorId)) {
            $oColor->color_id = $colorId;
        }
        $oColor->find();
        $aCloneData = array();
        while ($oColor->fetch()) {
            $aCloneData[]= clone($oColor);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColor->_resultFields, $aCloneData, $fecthMode);
    }
    
    public function findColorGroupNameByColorGroupId($colorGroupId = null, $fecthMode = 'getassoc')
    {
        SGL::logMessage(null, PEAR_LOG_DEBUG);
        DB_DataObject::debugLevel();
        $oColorGroupName = DB_DataObject::factory($this->aConf['table']['rvs_color_group_name']);
        if (!is_null($colorGroupId)) {
            $oColorGroupName->color_group_id = $colorGroupId;
        }
        $oColorGroupName->find();
        $aCloneData = array();
        while ($oColorGroupName->fetch()) {
            $aCloneData[]= clone($oColorGroupName);
        }
        DB_DataObject::debugLevel();
        return DbWrapper::fetchDatas($oColorGroupName->_resultFields, $aCloneData, $fecthMode);
    }
    
    public function backupsql($projectId, $usrId)
   {
       SGL::logMessage(null, PEAR_LOG_DEBUG);
       $aSQLData = array();
       $aColor = array();
       $aColorId = array();
       $aTemplateItem = array();
       $aColorGroupId = array();
       /// Get Project info id By project_id
        $oProjectInfoId = DaoFactory::Project()->findProjectInfoDataByProjectId($projectId, 'getDataObject');
        foreach ($oProjectInfoId as $key => $val) {
        	if (empty($val->template_item_id)) {
        		continue;
        	}
            $aTemplateItem = DaoFactory::Template()->findTemplateItemByTemplateItemId($val->template_item_id, 'getDataObject');
            if (count($aTemplateItem) > 0 && !empty($aTemplateItem[0]->color_id)) {
                $aColor = $this->findColorByColorId($aTemplateItem[0]->color_id, 'getDataObject');
                foreach ($aColor as $oColorVal) {
                    $aColorId[] = $oColorVal->color_id;
                    $aSQLData[] = DbWrapper::buildSQLFormat($oColorVal);
                }
            }
        }
       /// Backup table rvs_color_group
       if (count($aColorId) > 0) {
	       foreach ($aColorId as $colorId) {
	           $oColorGroup = $this->findColorGroupByColorId($colorId, 'getDataObject');
	           foreach ($oColorGroup as $colorGroupVal) {    
	               $aColorGroupId[] = $colorGroupVal->color_group_id;           
	               $aSQLData[] = DbWrapper::buildSQLFormat($colorGroupVal);
	           }
	       }
       }
       /// Backup table rvs_color_group_name
       if (count($aColorGroupId) > 0) {
	       foreach ($aColorGroupId as $colorGroupId) {
	           $oColorGroupName = $this->findColorGroupNameByColorGroupId($colorGroupId, 'getDataObject');
	           foreach ($oColorGroupName as $colorGroupNameVal) {               
	               $aSQLData[] = DbWrapper::buildSQLFormat($colorGroupNameVal);
	           }
	       }    
       }   
       return $aSQLData;
   }
    
   public function deleteProjectOfUserId($projectId, $usrId, $aProjectPageId = array()) {
       SGL::logMessage(null, PEAR_LOG_DEBUG);
   }
}
?>