<?php
/**
 * 五十九秒网络购物cms 文章导航条实体类
 * ============================================================================
 * 版权所有 2009-2012 五十九秒网络科技有限公司，并保留所有权利。
 * 网站地址: http://www.59miao.com；
 * ----------------------------------------------------------------------------
 * 这不是一个自由软件！您只能在不用于商业目的的前提下对程序代码进行修改和
 * 使用；不允许对程序代码以任何形式任何目的的再发布。
 * ============================================================================
 * $Author: longzhang
 * 
*/
if (!defined('IN_59MIAO'))
{
	exit('Access Defined');
}
class ArtilenavModel extends Model{
	public function __construct() {
		parent::__construct();
		$this->_fields = array('id','name','info');
		$this->_tables = array(DB_FREFIX.'artilenav');
		$this->_check = new ArtilenavCheck();
		list(
				$this->_R['id'],				
				$this->_R['name']
		) = $this->getRequest()->getParam(array(
				isset($_GET['id']) ? $_GET['id'] : null,				
				isset($_POST['name']) ? $_POST['name'] : null
		));
	}	
	public function findAll() {
		return parent::select(array('id','name','info'), 
											array('limit'=>$this->_limit, 'order'=>'id ASC'));
	}

	//用于前台页面显示
	public function findAllFront(){
		return parent::select(array('id','name'), 
											array('order'=>'id ASC'));
	}
	
	
	//查询所有数据
	public function findAllNoLimit() {
		return parent::select(array('id','name','info'), 
											array('order'=>'id ASC'));
	}
	public function findOne() {	
		$_where = array("id='{$this->_R['id']}'");
		if (!$this->_check->oneCheck($this, $_where)) $this->_check->error();
		return parent::select(array('id','name','info'),
											array('where'=>$_where, 'limit'=>'1'));
	}	
	public function total() {
		return parent::total();
	}	
	public function add(){
		$_where = array("name='{$this->_R['name']}'");
		if (!$this->_check->addCheck($this, $_where)) $this->_check->error();
		$_addData = $this->getRequest()->add($this->_fields);		
		return parent::add($_addData);
	}	
	public function update() {
		$_where = array("id='{$this->_R['id']}'");
		if (!$this->_check->oneCheck($this, $_where)) $this->_check->error();
		if (!$this->_check->updateCheck($this)) $this->_check->error();
		$_updateData = $this->getRequest()->update($this->_fields);
		return parent::update($_where, $_updateData);
	}	
	public function delete(){		
		//删除的时候判断子类有没有数据	如果有数据则不能删除，否则删除	
		$_where = array("b.id='{$this->_R['id']}'","a.pid=b.id");
		$this->_tables = array(DB_FREFIX.'artile as a', DB_FREFIX.'artilenav b');
		$rel = parent::select(array('a.id as id','a.pid as pid', 'b.id as nav_pid'), 
											array('where'=>$_where,'limit'=>1, 'order'=>'a.date DESC'));
		if(!Validate::isNullArray($rel)){
			return ;
		}	
		//如果没有数据执行删除操作		
		$this->_tables = array(DB_FREFIX.'artilenav');
		$_where = array("id='{$this->_R['id']}'");		
		return parent::delete($_where);
	}	
	public function isName(){
		$_where = array("name='{$this->_R['name']}'");
		$this->_check->ajax($this, $_where);
	}
}
?>