TEMPLATE_GLOBAL_TAGS = array ( 'upper', 'tofloat', 'sample_with_args', 'debug', 'url', 'url2', 'function_deny', 'isset', 'empty', 'make_date', 'inarray', 'getGlobals' , 'isInvoiceMoldShow' ); /** * 判断发票的审批权限 * @param number $sid 用户ID * @param string $mold 项目类型 * @return boolean */ function isInvoiceMoldShow($sid = 0, $mold = '') { if (! empty ( $sid ) && ! empty ( $mold )) { Doo::loadModel ( "invoiceManage" ); $invoiceManage = new invoiceManage (); $imList = $invoiceManage->getInvoiceByMold($mold); $list=array(); foreach ($imList['staffList'] as $k=>$v){ array_push($list, $v[0]); } $fileInvoice = file_get_contents ( "protected/config/invoice/invoice.ini" ); $fileInvoice = json_decode ( $fileInvoice, true ); $delIM=array(); if (isset($fileInvoice[$mold])) $delIM= explode( ',', $fileInvoice[$mold] ); foreach ($delIM as $key=>$value){ if (!empty($value)) array_push($list, $value); } $list = array_unique ( $list ); return inarray($sid,$list); } else return false; } function getGlobals($var) { if ($var == 'NEW') getReceiptCount (); elseif ($var == 'NEW2') getExeCount (); //echo $GLOBALS[$var].'/'.$var.'
'; return $GLOBALS [$var]; } function inarray($v1, $v2) { return in_array ( $v1, $v2 ); } function make_date() { return date ( "Y-m" ); } function upper($str) { return strtoupper ( $str ); } function tofloat($str) { return sprintf ( "%.2f", $str ); } function sample_with_args($str, $prefix) { return $str . ' with args: ' . $prefix; } function debug($var) { if (! empty ( $var )) { echo '
';
		print_r ( $var );
		echo '
'; } } // This will be called when a function NOT Registered is used in IF or ElseIF statment function function_deny($var = null) { echo 'Function denied in IF or ElseIF statement!'; exit (); } // Build URL based on route id function url($id, $param = null, $addRootUrl = false) { Doo::loadHelper ( 'DooUrlBuilder' ); // param pass in as string with format // 'param1=>this_is_my_value, param2=>something_here' if ($param != null) { $param = explode ( ', ', $param ); $param2 = null; foreach ( $param as $p ) { $splited = explode ( '=>', $p ); $param2 [$splited [0]] = $splited [1]; } return DooUrlBuilder::url ( $id, $param2, $addRootUrl ); } return DooUrlBuilder::url ( $id, null, $addRootUrl ); } // Build URL based on controller and method name function url2($controller, $method, $param = null, $addRootUrl = false) { Doo::loadHelper ( 'DooUrlBuilder' ); // param pass in as string with format // 'param1=>this_is_my_value, param2=>something_here' if ($param != null) { $param = explode ( ', ', $param ); $param2 = null; foreach ( $param as $p ) { $splited = explode ( '=>', $p ); $param2 [$splited [0]] = $splited [1]; } return DooUrlBuilder::url2 ( $controller, $method, $param2, $addRootUrl ); } return DooUrlBuilder::url2 ( $controller, $method, null, $addRootUrl ); } /** * 获得正在审批的费用单数量 */ function getReceiptCount() { $status = 2; $year = date ( 'Y' ); Doo::loadModel ( 'receipt' ); $receipt = new receipt (); $dateCondition = " and Year(date) =" . $year; $approvalCondition=' and (nowStaff like "%,'.$_COOKIE ["staff"].'%" or nowStaff like "%'.$_COOKIE ["staff"].',%" or nowStaff='.$_COOKIE ["staff"].' ) '; $receiptList = $receipt->find ( array ( 'where' => ' status=' . $status . $dateCondition . $approvalCondition, 'desc' => 'rid', 'asArray' => true ) ); $GLOBALS ['NEW'] = count ( $receiptList ); } /** * 获得执行费用的数量 */ function getExeCount() { Doo::loadModel ( 'receipt' ); $receipt = new receipt (); $receiptList = $receipt->find ( array ( 'where' => '(executeCopy like \'%["' . $_COOKIE ["staff"] . '%\' and executeStaff NOT LIKE \'%' . $_COOKIE ["staff"] . '%\' ) and (status=1 or status=6)', 'desc' => 'rid', 'asArray' => true ) ); $GLOBALS ['NEW2'] = count ( $receiptList ); } ?>