<?php
 /**
 *      [XCECP] (C) COLNET Inc.
 *      This is NOT a freeware, use is subject to license terms
 */
if(!defined("IN_QKWEB")){exit("Access Denied");}
function smarty_block_attachment($params, $content, $smarty, &$repeat)
{ 
	
  	if(!isset($params['name']) || $params['name']==""){
		$params['name'] = "item";
	}
	$dataindex = md5(__FUNCTION__ . md5(serialize($params)));
	if(!isset($smarty->block_data)){$smarty->block_data=array();}
	if(!isset($smarty->block_data[$dataindex])){
		$page = getgpc("page");
		$wheres = "";
		if(isset($params['limit']) && $params['limit']!=""){		
			if($params['limit']!=="false"){			
				$limit = $params['limit'];
				if(settype($limit,"integer")){
					$limit = $limit;
				}else{
					$limit = 10;
				}
			}else{
				$limit =false;
			}
		}else{
			$limit = 10;
		}
		$pageSize = $limit;
		$smarty->assign("limit",$limit);
		$limit = "limit $limit";
		$page = getgpc("page");
		if(!$page || !settype($page,"integer")){$page=1;}
		$offset = ($page-1)*$pageSize;
		$limit = "limit $offset,$pageSize";
		if($page && settype($page,"integer")){
			$offset = ($page-1)*$pageSize;
			$limit = "limit $offset,$pageSize";
		}
		if($params['limit']=="false"){
			$limit = "";
		}

		if(isset($params['id'])){
			if($params['id']!="" && settype($params['id'],"integer")){
				$id = $params['id'];
			}else{
				$id = 0;
			}
		}else{
			$id = false;
		}
		
		if($id){
			$wheres .= " and id='".$id."'";
		}
		if($id===0){
			$wheres .= " and id=0";
		}
		
		$allCount = $GLOBALS['db']->getOne("select count(id) from qk_attachment where 1=1 $wheres");
		
		$smarty->assign("allCount",$allCount);
		$sql = "select * from qk_attachment where 1=1 $wheres order by sortId asc,id desc $limit";
		//echo $sql;
		//exit($sql);
		$res = $GLOBALS['db']->getAll($sql);
		
		$i = 0;
		foreach($res as $k=>$v){
			if(substr($v['url'],0,7)!="http://"){
				$res[$i]['url'] = "/".$v['url'];
			}
			$i++;
		}
		$smarty->block_data[$dataindex]=$res;
	}
	if(is_array($smarty->block_data[$dataindex]) && $smarty->block_data[$dataindex]){
		$item = array_shift($smarty->block_data[$dataindex]);
		$smarty->assign($params['name'], $item);
		if(count($smarty->block_data[$dataindex])==0){
			$smarty->block_data[$dataindex] = false;
		}
		$repeat= true;
	}else{
		unset($smarty->block_data[$dataindex]);
		$repeat = false;
	}
	echo $content;
}

?>