ͨ´ïOA¹«¹²´úÂë php³£Óüì²âº¯Êý

¡¡¡¡check_type.php(ʹÓÃÀàÐͼìÑ麯Êý£©

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡<?php

¡¡¡¡/*********************/

¡¡¡¡/* */

¡¡¡¡/* Version : 5.1.0 */

¡¡¡¡/* Author : RM */

¡¡¡¡/* Comment : 071223 */

¡¡¡¡/* */

¡¡¡¡/*********************/

¡¡¡¡function is_number( $str )

¡¡¡¡{

¡¡¡¡if ( substr( $str, 0, 1 ) == "-" )

¡¡¡¡{

¡¡¡¡$str = substr( $str, 1 );

¡¡¡¡}

¡¡¡¡$length = strlen( $str );

¡¡¡¡$i = 0;

¡¡¡¡for ( ; $i < $length; ++$i )

¡¡¡¡{

¡¡¡¡$ascii_value = ord( substr( $str, $i, 1 ) );

¡¡¡¡if ( 48 <= $ascii_value && $ascii_value <= 57 )

¡¡¡¡{

¡¡¡¡continue;

¡¡¡¡}

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( $str != "0" )

¡¡¡¡{

¡¡¡¡$str = intval( $str );

¡¡¡¡if ( $str == 0 )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function is_decimal( $str )

¡¡¡¡{

¡¡¡¡if ( substr( $str, 0, 1 ) == "-" )

¡¡¡¡{

¡¡¡¡$str = substr( $str, 1 );

¡¡¡¡}

¡¡¡¡$length = strlen( $str );

¡¡¡¡$i = 0;

¡¡¡¡for ( ; $i < $length; ++$i )

¡¡¡¡{

¡¡¡¡$ascii_value = ord( substr( $str, $i, 1 ) );

¡¡¡¡if ( 0 < $i && $ascii_value == 46 || 48 <= $ascii_value && $ascii_value <= 57 )

¡¡¡¡{

¡¡¡¡continue;

¡¡¡¡}

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function is_money( $str )

¡¡¡¡{

¡¡¡¡$dot_pos = strpos( $str, "." );

¡¡¡¡if ( !$dot_pos )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$str1 = substr( $str, 0, $dot_pos );

¡¡¡¡if ( 14 < strlen( $str1 ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( !is_number( $str1 ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$str2 = substr( $str, $dot_pos + 1, strlen( $str ) - $dot_pos );

¡¡¡¡if ( strlen( $str2 ) != 2 )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( !is_number( $str2 ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function is_money_len( $str, $int_len, $dot_len )

¡¡¡¡{

¡¡¡¡$dot_pos = strpos( $str, "." );

¡¡¡¡if ( !$dot_pos )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$str1 = substr( $str, 0, $dot_pos );

¡¡¡¡if ( $int_len < strlen( $str1 ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( !is_number( $str1 ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$str2 = substr( $str, $dot_pos + 1, strlen( $str ) - $dot_pos );

¡¡¡¡if ( strlen( $str2 ) != $dot_len )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( !is_number( $str2 ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function is_date( $str )

¡¡¡¡{

¡¡¡¡$YEAR = "";

¡¡¡¡$MONTH = "";

¡¡¡¡$DAY = "";

¡¡¡¡$len = strlen( $str );

¡¡¡¡$offset = 0;

¡¡¡¡$i = strpos( $str, "-", $offset );

¡¡¡¡$YEAR = substr( $str, $offset, $i - $offset );

¡¡¡¡$offset = $i + 1;

¡¡¡¡if ( $len < $offset )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( $i )

¡¡¡¡{

¡¡¡¡$i = strpos( $str, "-", $offset );

¡¡¡¡$MONTH = substr( $str, $offset, $i - $offset );

¡¡¡¡$offset = $i + 1;

¡¡¡¡if ( $len < $offset )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( $i )

¡¡¡¡{

¡¡¡¡$DAY = substr( $str, $offset, $len - $offset );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡if ( $YEAR == "" || $MONTH == "" || $DAY == "" )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( !checkdate( intval( $MONTH ), intval( $DAY ), intval( $YEAR ) ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function is_time( $str )

¡¡¡¡{

¡¡¡¡$TEMP = "";

¡¡¡¡$HOUR = "";

¡¡¡¡$MIN = "";

¡¡¡¡$SEC = "";

¡¡¡¡$TEMP = strtok( $str, ":" );

¡¡¡¡$HOUR = $TEMP;

¡¡¡¡if ( $HOUR == "" || 24 <= $HOUR || $HOUR < 0 || !is_number( $HOUR ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$TEMP = strtok( ":" );

¡¡¡¡$MIN = $TEMP;

¡¡¡¡if ( $MIN == "" || 60 <= $MIN || $MIN < 0 || !is_number( $MIN ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$TEMP = strtok( ":" );

¡¡¡¡$SEC = $TEMP;

¡¡¡¡if ( $SEC == "" || 60 <= $SEC || $SEC < 0 || !is_number( $SEC ) )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function is_date_time( $DATE_TIME_STR )

¡¡¡¡{

¡¡¡¡if ( $DATE_TIME_STR == NULL || strlen( $DATE_TIME_STR ) == 0 )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$DATE_TIME_ARRY = explode( " ", $DATE_TIME_STR );

¡¡¡¡if ( is_date( $DATE_TIME_ARRY[0] ) && is_time( $DATE_TIME_ARRY[1] ) )

¡¡¡¡{

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡?>

¡¡¡¡auth.phpµÇ¼ÑéÖ¤

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡<?php

¡¡¡¡/*********************/

¡¡¡¡/* */

¡¡¡¡/* Version : 5.1.0 */

¡¡¡¡/* Author : RM */

¡¡¡¡/* Comment : 071223 */

¡¡¡¡/* */

¡¡¡¡/*********************/

¡¡¡¡if ( $USER_ID == "" || $PASSWORD == "" )

¡¡¡¡{

¡¡¡¡echo "201#|#Óû§Ãû»òÃÜÂëΪ¿Õ";

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡if ( $USER_ID != "OfficeTask" )

¡¡¡¡{

¡¡¡¡echo "205#|#Óû§Ãû´íÎó";

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡include_once( "../inc/conn.php" );

¡¡¡¡include_once( "../inc/utility.php" );

¡¡¡¡ob_end_clean( );

¡¡¡¡$query = "select * from EXT_USER where USER_ID='".$USER_ID."'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$PWD = $ROW['PASSWORD'];

¡¡¡¡$USE_FLAG = $ROW['USE_FLAG'];

¡¡¡¡$AUTH_MODULE = $ROW['AUTH_MODULE'];

¡¡¡¡$POSTFIX = $ROW['POSTFIX'];

¡¡¡¡if ( md5( $PWD ) != $PASSWORD )

¡¡¡¡{

¡¡¡¡echo "203#|#ÃÜÂë´íÎó";

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡if ( $USE_FLAG == "0" )

¡¡¡¡{

¡¡¡¡echo "204#|#ÕʺÅÒÑÍ£ÓÃ";

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡echo "202#|#".$USER_ID;

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡?>

¡¡¡¡utility_all¹«Óú¯Êý

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡<?php

¡¡¡¡/*********************/

¡¡¡¡/* */

¡¡¡¡/* Version : 5.1.0 */

¡¡¡¡/* Author : RM */

¡¡¡¡/* Comment : 071223 */

¡¡¡¡/* */

¡¡¡¡/*********************/

¡¡¡¡function format_date( $STRING1 )

¡¡¡¡{

¡¡¡¡$STRING1 = str_replace( "-0", "-", $STRING1 );

¡¡¡¡$STR = strtok( $STRING1, "-" );

¡¡¡¡$STRING2 = $STR."Äê";

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$STRING2 .= $STR."ÔÂ";

¡¡¡¡$STR = strtok( " " );

¡¡¡¡$STRING2 .= $STR."ÈÕ";

¡¡¡¡return $STRING2;

¡¡¡¡}

¡¡¡¡function format_date_short1( $STRING1 )

¡¡¡¡{

¡¡¡¡$STRING1 = str_replace( "-0", "-", $STRING1 );

¡¡¡¡$STR = strtok( $STRING1, "-" );

¡¡¡¡$STRING2 = $STR."Äê";

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$STRING2 .= $STR."ÔÂ";

¡¡¡¡return $STRING2;

¡¡¡¡}

¡¡¡¡function format_date_short2( $STRING1 )

¡¡¡¡{

¡¡¡¡$STRING1 = str_replace( "-0", "-", $STRING1 );

¡¡¡¡$STR = strtok( $STRING1, "-" );

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$STRING2 .= $STR."ÔÂ";

¡¡¡¡$STR = strtok( " " );

¡¡¡¡$STRING2 .= $STR."ÈÕ";

¡¡¡¡return $STRING2;

¡¡¡¡}

¡¡¡¡function format_date_short3( $STRING1 )

¡¡¡¡{

¡¡¡¡$STRING1 = str_replace( "-0", "-", $STRING1 );

¡¡¡¡$STR = strtok( $STRING1, "-" );

¡¡¡¡$STRING2 .= $STR."Äê";

¡¡¡¡return $STRING2;

¡¡¡¡}

¡¡¡¡function format_date_number( $STRING1 )

¡¡¡¡{

¡¡¡¡$STRING1 = str_replace( "-0", "-", $STRING1 );

¡¡¡¡$STR = strtok( $STRING1, "-" );

¡¡¡¡$STRING2 = $STR;

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$STRING2 .= strlen( $STR ) == 1 ? "0".$STR : $STR;

¡¡¡¡$STR = strtok( " " );

¡¡¡¡$STRING2 .= strlen( $STR ) == 1 ? "0".$STR : $STR;

¡¡¡¡return $STRING2;

¡¡¡¡}

¡¡¡¡function get_week( $STRING )

¡¡¡¡{

¡¡¡¡switch ( date( "w", strtotime( $STRING ) ) )

¡¡¡¡{

¡¡¡¡case 0 :

¡¡¡¡return "ÈÕ";

¡¡¡¡case 1 :

¡¡¡¡return "Ò»";

¡¡¡¡case 2 :

¡¡¡¡return "¶þ";

¡¡¡¡case 3 :

¡¡¡¡return "Èý";

¡¡¡¡case 4 :

¡¡¡¡return "ËÄ";

¡¡¡¡case 5 :

¡¡¡¡return "Îå";

¡¡¡¡case 6 :

¡¡¡¡return "Áù";

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function format_money( $STR )

¡¡¡¡{

¡¡¡¡if ( $STR == "" )

¡¡¡¡{

¡¡¡¡return "";

¡¡¡¡}

¡¡¡¡if ( $STR == ".00" )

¡¡¡¡{

¡¡¡¡return "0.00";

¡¡¡¡}

¡¡¡¡$TOK = strtok( $STR, "." );

¡¡¡¡if ( strcmp( $STR, $TOK ) == "0" )

¡¡¡¡{

¡¡¡¡$STR .= ".00";

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$TOK = strtok( "." );

¡¡¡¡$I = 1;

¡¡¡¡for ( ; $I <= 2 - strlen( $TOK ); ++$I )

¡¡¡¡{

¡¡¡¡$STR .= "0";

¡¡¡¡}

¡¡¡¡}

¡¡¡¡if ( substr( $STR, 0, 1 ) == "." )

¡¡¡¡{

¡¡¡¡$STR = "0".$STR;

¡¡¡¡}

¡¡¡¡return $STR;

¡¡¡¡}

¡¡¡¡function compare_date( $DATE1, $DATE2 )

¡¡¡¡{

¡¡¡¡$STR = strtok( $DATE1, "-" );

¡¡¡¡$YEAR1 = $STR;

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$MON1 = $STR;

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$DAY1 = $STR;

¡¡¡¡$STR = strtok( $DATE2, "-" );

¡¡¡¡$YEAR2 = $STR;

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$MON2 = $STR;

¡¡¡¡$STR = strtok( "-" );

¡¡¡¡$DAY2 = $STR;

¡¡¡¡if ( $YEAR2 < $YEAR1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( $YEAR1 < $YEAR2 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡if ( $MON2 < $MON1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( $MON1 < $MON2 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡if ( $DAY2 < $DAY1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( $DAY1 < $DAY2 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡return 0;

¡¡¡¡}

¡¡¡¡function compare_time( $TIME1, $TIME2 )

¡¡¡¡{

¡¡¡¡$STR = strtok( $TIME1, ":" );

¡¡¡¡$HOUR1 = $STR;

¡¡¡¡$STR = strtok( ":" );

¡¡¡¡$MIN1 = $STR;

¡¡¡¡$STR = strtok( ":" );

¡¡¡¡$SEC1 = $STR;

¡¡¡¡$STR = strtok( $TIME2, ":" );

¡¡¡¡$HOUR2 = $STR;

¡¡¡¡$STR = strtok( ":" );

¡¡¡¡$MIN2 = $STR;

¡¡¡¡$STR = strtok( ":" );

¡¡¡¡$SEC2 = $STR;

¡¡¡¡if ( $HOUR2 < $HOUR1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( $HOUR1 < $HOUR2 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡if ( $MIN2 < $MIN1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( $MIN1 < $MIN2 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡if ( $SEC2 < $SEC1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( $SEC1 < $SEC2 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡return 0;

¡¡¡¡}

¡¡¡¡function compare_date_time( $DATE_TIME1, $DATE_TIME2 )

¡¡¡¡{

¡¡¡¡if ( $DATE_TIME1 == NULL || strlen( $DATE_TIME1 ) == 0 || $DATE_TIME2 == NULL || strlen( $DATE_TIME2 ) == 0 )

¡¡¡¡{

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡$DATE_TIME1_ARRY = explode( " ", $DATE_TIME1 );

¡¡¡¡$DATE_TIME2_ARRY = explode( " ", $DATE_TIME2 );

¡¡¡¡if ( compare_date( $DATE_TIME1_ARRY[0], $DATE_TIME2_ARRY[0] ) == 1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( compare_date( $DATE_TIME1_ARRY[0], $DATE_TIME2_ARRY[0] ) == 0 )

¡¡¡¡{

¡¡¡¡if ( compare_time( $DATE_TIME1_ARRY[1], $DATE_TIME2_ARRY[1] ) == 1 )

¡¡¡¡{

¡¡¡¡return 1;

¡¡¡¡}

¡¡¡¡if ( compare_time( $DATE_TIME1_ARRY[1], $DATE_TIME2_ARRY[1] ) == 0 )

¡¡¡¡{

¡¡¡¡return 0;

¡¡¡¡}

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡return -1;

¡¡¡¡}

¡¡¡¡function is_chinese( &$str, $location )

¡¡¡¡{

¡¡¡¡$ch = TRUE;

¡¡¡¡$i = $location;

¡¡¡¡while ( 160 < ord( $str[$i] ) && 0 <= $i )

¡¡¡¡{

¡¡¡¡$ch = !$ch;

¡¡¡¡--$i;

¡¡¡¡}

¡¡¡¡if ( $i != $location )

¡¡¡¡{

¡¡¡¡$f_str = $ch ? 1 : -1;

¡¡¡¡return $f_str;

¡¡¡¡}

¡¡¡¡$f_str = FALSE;

¡¡¡¡return $f_str;

¡¡¡¡}

¡¡¡¡function csubstr( &$str, $start = 0, $long = 0, $ltor = TRUE, $cn_len = 2 )

¡¡¡¡{

¡¡¡¡if ( $long == 0 )

¡¡¡¡{

¡¡¡¡$long = strlen( $str );

¡¡¡¡}

¡¡¡¡if ( !$ltor )

¡¡¡¡{

¡¡¡¡$str = cstrrev( $str );

¡¡¡¡}

¡¡¡¡if ( $cn_len == 1 )

¡¡¡¡{

¡¡¡¡$i = 0;

¡¡¡¡$fs = 0;

¡¡¡¡for ( ; $i < $start; ++$fs )

¡¡¡¡{

¡¡¡¡$i += ord( $str[$fs] ) <= 160 ? 1 : 0.5;

¡¡¡¡}

¡¡¡¡$i = 0;

¡¡¡¡$fe = $fs;

¡¡¡¡for ( ; $i < $long; ++$fe )

¡¡¡¡{

¡¡¡¡$i += ord( $str[$fe] ) <= 160 ? 1 : 0.5;

¡¡¡¡}

¡¡¡¡$long = $fe - $fs;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$fs = is_chinese( &$str, $start ) == 1 ? $start - 1 : $start;

¡¡¡¡$fe = $long + $start - 1;

¡¡¡¡$end = is_chinese( &$str, $fe ) == -1 ? $fe - 1 : $fe;

¡¡¡¡$long = $end - $fs + 1;

¡¡¡¡}

¡¡¡¡$f_str = substr( $str, $fs, $long );

¡¡¡¡if ( !$ltor )

¡¡¡¡{

¡¡¡¡$f_str = cstrrev( $f_str );

¡¡¡¡}

¡¡¡¡return $f_str;

¡¡¡¡}

¡¡¡¡function is_ip( $IP )

¡¡¡¡{

¡¡¡¡$IP_ARRAY = explode( ".", $IP );

¡¡¡¡$IP_ARRAY_NUM = sizeof( $IP_ARRAY );

¡¡¡¡if ( $IP_ARRAY_NUM != 4 )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡$I = 0;

¡¡¡¡for ( ; $I < $IP_ARRAY_NUM; ++$I )

¡¡¡¡{

¡¡¡¡if ( !is_numeric( $IP_ARRAY[$I] ) && $IP_ARRAY[$I] < 0 || 255 < $IP_ARRAY[$I] )

¡¡¡¡{

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡if ( !( $I == 3 ) && !( $IP_ARRAY[$I] == 255 ) )

¡¡¡¡{

¡¡¡¡continue;

¡¡¡¡}

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡function check_ip( $USER_IP, $TYPE, $USER_ID )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡$query = "SELECT PARA_VALUE from SYS_PARA where PARA_NAME='IP_UNLIMITED_USER'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$IP_UNLIMITED_USER = $ROW['PARA_VALUE'];

¡¡¡¡}

¡¡¡¡if ( find_id( $IP_UNLIMITED_USER, $USER_ID ) )

¡¡¡¡{

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡$query = "select * from IP_RULE where TYPE='".$TYPE."'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡$RULE_COUNT = 0;

¡¡¡¡$FLAG = 0;

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡++$RULE_COUNT;

¡¡¡¡$BEGIN_IP = $ROW['BEGIN_IP'];

¡¡¡¡$END_IP = $ROW['END_IP'];

¡¡¡¡if ( !( ip2long( $BEGIN_IP ) <= ip2long( $USER_IP ) ) && !( ip2long( $USER_IP ) <= ip2long( $END_IP ) ) )

¡¡¡¡{

¡¡¡¡continue;

¡¡¡¡}

¡¡¡¡$FLAG = 1;

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if ( $RULE_COUNT == 0 || $FLAG == 1 )

¡¡¡¡{

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡function maskstr( $STR, $FIRST, $LAST )

¡¡¡¡{

¡¡¡¡if ( is_numeric( $FIRST ) )

¡¡¡¡{

¡¡¡¡}

¡¡¡¡if ( !is_numeric( $LAST ) )

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡if ( strlen( $STR ) <= $FIRST + $LAST )

¡¡¡¡{

¡¡¡¡return $STR;

¡¡¡¡}

¡¡¡¡$RETURN_STR = substr( $STR, 0, $FIRST );

¡¡¡¡$I = 0;

¡¡¡¡for ( ; $I < strlen( substr( $STR, $FIRST, 0 - $LAST ) ); ++$I )

¡¡¡¡{

¡¡¡¡$RETURN_STR .= "*";

¡¡¡¡}

¡¡¡¡$RETURN_STR .= substr( $STR, 0 - $LAST );

¡¡¡¡return $RETURN_STR;

¡¡¡¡}

¡¡¡¡function add_log( $TYPE, $REMARK, $OPERATOR )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡$CUR_TIME = date( "Y-m-d H:i:s", time( ) );

¡¡¡¡$USER_IP = get_client_ip( );

¡¡¡¡if ( $TYPE == 1 )

¡¡¡¡{

¡¡¡¡$query = "update USER set LAST_VISIT_IP='".$USER_IP."' where USER_ID='{$OPERATOR}'";

¡¡¡¡exequery( $connection, $query );

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡if ( $TYPE == 3 || $TYPE == 4 || $TYPE == 5 )

¡¡¡¡{

¡¡¡¡include_once( "inc/itask/itask.php" );

¡¡¡¡global $DEPT_PARENT;

¡¡¡¡if ( $TYPE == 3 || $TYPE == 4 )

¡¡¡¡{

¡¡¡¡$result = itask( array(

¡¡¡¡"LOG_".$TYPE." ".$REMARK.",".$DEPT_PARENT

¡¡¡¡) );

¡¡¡¡}

¡¡¡¡$query = "SELECT DEPT_ID,DEPT_NAME from DEPARTMENT where DEPT_ID='".$REMARK."'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$DEPT_ID = $ROW['DEPT_ID'];

¡¡¡¡$DEPT_NAME = $ROW['DEPT_NAME'];

¡¡¡¡}

¡¡¡¡$REMARK = "{$DEPT_NAME},DEPT_ID={$DEPT_ID},DEPT_PARENT={$DEPT_PARENT}";

¡¡¡¡if ( $result === FALSE )

¡¡¡¡{

¡¡¡¡message( "´íÎó", itask_last_error( ) );

¡¡¡¡button_back( );

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else if ( $TYPE == 6 || $TYPE == 7 || $TYPE == 8 || $TYPE == 11 )

¡¡¡¡{

¡¡¡¡include_once( "inc/itask/itask.php" );

¡¡¡¡global $DEPT_ID;

¡¡¡¡global $NOT_LOGIN;

¡¡¡¡if ( $TYPE == 6 || $TYPE == 7 )

¡¡¡¡{

¡¡¡¡$result = itask( array(

¡¡¡¡"LOG_".$TYPE." ".$REMARK.",".$DEPT_ID.",".$NOT_LOGIN

¡¡¡¡) );

¡¡¡¡}

¡¡¡¡$query = "SELECT USER_ID,USER_NAME,DEPT_ID from USER where find_in_set(USER_ID,'".$REMARK."')";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡$REMARK = "";

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$USER_ID = $ROW['USER_ID'];

¡¡¡¡$USER_NAME = $ROW['USER_NAME'];

¡¡¡¡$DEPT_ID = $ROW['DEPT_ID'];

¡¡¡¡$query = "SELECT DEPT_NAME from DEPARTMENT where DEPT_ID='".$DEPT_ID."'";

¡¡¡¡$cursor1 = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor1 ) )

¡¡¡¡{

¡¡¡¡$DEPT_NAME = $ROW['DEPT_NAME'];

¡¡¡¡}

¡¡¡¡$REMARK .= "[".$DEPT_NAME."]{$USER_NAME},USER_ID={$USER_ID}<br>";

¡¡¡¡}

¡¡¡¡if ( $result === FALSE )

¡¡¡¡{

¡¡¡¡message( "´íÎó", itask_last_error( ) );

¡¡¡¡button_back( );

¡¡¡¡exit( );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡$REMARK = str_replace( "'", "\\'", $REMARK );

¡¡¡¡$REMARK = str_replace( "\\\\'", "\\'", $REMARK );

¡¡¡¡$query = "insert into SYS_LOG (USER_ID,TIME,IP,TYPE,REMARK) values ('".$OPERATOR."','{$CUR_TIME}','{$USER_IP}','{$TYPE}','{$REMARK}')";

¡¡¡¡exequery( $connection, $query );

¡¡¡¡if ( 21 < $TYPE && !find_id( "40,41,", $TYPE ) || get_code_name( $TYPE, "SYS_LOG" ) == "" )

¡¡¡¡{

¡¡¡¡$query1 = "INSERT INTO `SYS_CODE` ( `CODE_NO` , `CODE_NAME` , `CODE_ORDER` , `PARENT_NO` , `CODE_FLAG` ) VALUES ('".$TYPE."', 'δ֪ÀàÐÍ', '99', 'SYS_LOG', '1');";

¡¡¡¡exequery( $connection, $query1 );

¡¡¡¡}

¡¡¡¡return $query;

¡¡¡¡}

¡¡¡¡function affair_sms( )

¡¡¡¡{

¡¡¡¡include_once( "inc/utility_sms1.php" );

¡¡¡¡global $connection;

¡¡¡¡global $LOGIN_USER_ID;

¡¡¡¡$CUR_DATE = date( "Y-m-d", time( ) );

¡¡¡¡$CUR_TIME = date( "Y-m-d H:i:s", time( ) );

¡¡¡¡$query = "SELECT * from AFFAIR where USER_ID='".$LOGIN_USER_ID."' and BEGIN_TIME <='{$CUR_TIME}' and (LAST_REMIND<'{$CUR_DATE}' or LAST_REMIND='0000-00-00')";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$AFF_ID = $ROW['AFF_ID'];

¡¡¡¡$USER_ID = $ROW['USER_ID'];

¡¡¡¡$TYPE = $ROW['TYPE'];

¡¡¡¡$REMIND_DATE = $ROW['REMIND_DATE'];

¡¡¡¡$REMIND_TIME = $ROW['REMIND_TIME'];

¡¡¡¡$CONTENT = $ROW['CONTENT'];

¡¡¡¡$SEND_TIME = date( "Y-m-d", time( ) )." ".$REMIND_TIME;

¡¡¡¡$SMS_CONTENT = "ÈÕ³£ÊÂÎñÌáÐÑ£º".csubstr( &$CONTENT, 0, 100 );

¡¡¡¡$FLAG = 0;

¡¡¡¡if ( $TYPE == "2" )

¡¡¡¡{

¡¡¡¡$FLAG = 1;

¡¡¡¡}

¡¡¡¡else if ( $TYPE == "3" && date( "w", time( ) ) == $REMIND_DATE )

¡¡¡¡{

¡¡¡¡$FLAG = 1;

¡¡¡¡}

¡¡¡¡else if ( $TYPE == "4" && date( "j", time( ) ) == $REMIND_DATE )

¡¡¡¡{

¡¡¡¡$FLAG = 1;

¡¡¡¡}

¡¡¡¡else if ( $TYPE == "5" )

¡¡¡¡{

¡¡¡¡$REMIND_ARR = explode( "-", $REMIND_DATE );

¡¡¡¡$REMIND_DATE_MON = $REMIND_ARR[0];

¡¡¡¡$REMIND_DATE_DAY = $REMIND_ARR[1];

¡¡¡¡if ( date( "n", time( ) ) == $REMIND_DATE_MON && date( "j", time( ) ) == $REMIND_DATE_DAY )

¡¡¡¡{

¡¡¡¡$FLAG = 1;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡if ( $FLAG == 1 )

¡¡¡¡{

¡¡¡¡send_sms( $SEND_TIME, $LOGIN_USER_ID, $LOGIN_USER_ID, 5, $SMS_CONTENT, "1:calendar/affair/note.php?AFF_ID=".$AFF_ID );

¡¡¡¡$query = "update AFFAIR set LAST_REMIND='".$CUR_DATE."' where AFF_ID='{$AFF_ID}'";

¡¡¡¡exequery( $connection, $query );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function get_code_name( $CODE_NO, $PARENT_NO )

¡¡¡¡{

¡¡¡¡if ( $CODE_NO == "" || $PARENT_NO == "" )

¡¡¡¡{

¡¡¡¡return "";

¡¡¡¡}

¡¡¡¡global $connection;

¡¡¡¡$query = "SELECT CODE_NAME from SYS_CODE where PARENT_NO='".$PARENT_NO."' and find_in_set(CODE_NO,'{$CODE_NO}')";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$CODE_NAME .= $ROW['CODE_NAME']."£¬";

¡¡¡¡}

¡¡¡¡return substr( $CODE_NAME, 0, -2 );

¡¡¡¡}

¡¡¡¡function code_list( $PARENT_NO, $SELECTED = "", $TYPE = "D", $FIELD_NAME = "" )

¡¡¡¡{

¡¡¡¡if ( $PARENT_NO == "" )

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡global $connection;

¡¡¡¡$query = "select CODE_NO,CODE_NAME from SYS_CODE where PARENT_NO='".$PARENT_NO."' order by CODE_ORDER";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$CODE_NO = $ROW['CODE_NO'];

¡¡¡¡$CODE_NAME = $ROW['CODE_NAME'];

¡¡¡¡if ( $TYPE == "D" )

¡¡¡¡{

¡¡¡¡$OPTION_STR .= "<option value=\"".$CODE_NO."\"";

¡¡¡¡if ( $CODE_NO == $SELECTED )

¡¡¡¡{

¡¡¡¡$OPTION_STR .= " selected";

¡¡¡¡}

¡¡¡¡$OPTION_STR .= ">".$CODE_NAME."</option>\n";

¡¡¡¡}

¡¡¡¡else if ( $TYPE == "R" )

¡¡¡¡{

¡¡¡¡$OPTION_STR .= "<input type=\"radio\" name=\"".$FIELD_NAME."\" id=\"".$FIELD_NAME."_".$CODE_NO."\" value=\"".$CODE_NO."\"";

¡¡¡¡if ( $CODE_NO == $SELECTED )

¡¡¡¡{

¡¡¡¡$OPTION_STR .= " checked";

¡¡¡¡}

¡¡¡¡$OPTION_STR .= "><label for=\"".$FIELD_NAME."_".$CODE_NO."\">".$CODE_NAME."</label>\n";

¡¡¡¡}

¡¡¡¡else if ( $TYPE == "C" )

¡¡¡¡{

¡¡¡¡$OPTION_STR .= "<input type=\"checkbox\" name=\"".$FIELD_NAME."_".$CODE_NO."\" id=\"".$FIELD_NAME."_".$CODE_NO."\" value=\"".$CODE_NO."\"";

¡¡¡¡if ( find_id( $SELECTED, $CODE_NO ) )

¡¡¡¡{

¡¡¡¡$OPTION_STR .= " checked";

¡¡¡¡}

¡¡¡¡$OPTION_STR .= "><label for=\"".$FIELD_NAME."_".$CODE_NO."\">".$CODE_NAME."</label>\n";

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return $OPTION_STR;

¡¡¡¡}

¡¡¡¡function get_code_array( $PARENT_NO, $REVERSE = FALSE )

¡¡¡¡{

¡¡¡¡$CODE_ARRAY = array( );

¡¡¡¡if ( $PARENT_NO == "" )

¡¡¡¡{

¡¡¡¡return $CODE_ARRAY;

¡¡¡¡}

¡¡¡¡global $connection;

¡¡¡¡$query = "select CODE_NO,CODE_NAME from SYS_CODE where PARENT_NO='".$PARENT_NO."' order by CODE_ORDER";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$CODE_NO = $ROW['CODE_NO'];

¡¡¡¡$CODE_NAME = $ROW['CODE_NAME'];

¡¡¡¡if ( !$REVERSE )

¡¡¡¡{

¡¡¡¡$CODE_ARRAY[$CODE_NO] = $CODE_NAME;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$CODE_ARRAY[$CODE_NAME] = $CODE_NO;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return $CODE_ARRAY;

¡¡¡¡}

¡¡¡¡function sms_type_url( $SMS_TYPE, $CONTENT )

¡¡¡¡{

¡¡¡¡switch ( $SMS_TYPE )

¡¡¡¡{

¡¡¡¡case "0" :

¡¡¡¡$URL = "/general/sms/receive/";

¡¡¡¡return $URL;

¡¡¡¡case "1" :

¡¡¡¡$URL = "/general/notify/show/";

¡¡¡¡return $URL;

¡¡¡¡case "2" :

¡¡¡¡$URL = "/general/email/inbox/?BOX_ID=0";

¡¡¡¡return $URL;

¡¡¡¡case "3" :

¡¡¡¡$URL = "/general/netmeeting/";

¡¡¡¡return $URL;

¡¡¡¡case "4" :

¡¡¡¡$URL = "/general/salary/report/";

¡¡¡¡return $URL;

¡¡¡¡case "5" :

¡¡¡¡$URL = "/general/calendar/";

¡¡¡¡return $URL;

¡¡¡¡case "6" :

¡¡¡¡if ( strstr( $CONTENT, "Ìá½»" ) && strstr( $CONTENT, "ÉêÇë" ) && strstr( $CONTENT, "ÇëÅúʾ" ) )

¡¡¡¡{

¡¡¡¡$URL = "/general/attendance/manage/";

¡¡¡¡return $URL;

¡¡¡¡}

¡¡¡¡$URL = "/general/attendance/personal/";

¡¡¡¡return $URL;

¡¡¡¡case "7" :

¡¡¡¡$URL = "/general/workflow/list";

¡¡¡¡return $URL;

¡¡¡¡case "8" :

¡¡¡¡$URL = "/general/meeting/manage/";

¡¡¡¡return $URL;

¡¡¡¡case "9" :

¡¡¡¡if ( strstr( $CONTENT, "Ìá½»" ) )

¡¡¡¡{

¡¡¡¡if ( strstr( $CONTENT, "ÉêÇë" ) )

¡¡¡¡{

¡¡¡¡}

¡¡¡¡}

¡¡¡¡if ( strstr( $CONTENT, "ÇëÅúʾ" ) || strstr( $CONTENT, "²¿ÃÅÁìµ¼" ) && strstr( $CONTENT, "Åú×¼ÁË" ) )

¡¡¡¡{

¡¡¡¡$URL = "/general/vehicle/checkup/";

¡¡¡¡return $URL;

¡¡¡¡}

¡¡¡¡if ( strstr( $CONTENT, "²¿ÃÅÉóÅú" ) )

¡¡¡¡{

¡¡¡¡$URL = "/general/vehicle/dept_manage/";

¡¡¡¡return $URL;

¡¡¡¡}

¡¡¡¡$URL = "/general/vehicle/";

¡¡¡¡return $URL;

¡¡¡¡case "10" :

¡¡¡¡$URL = "/general/mobile_sms/";

¡¡¡¡return $URL;

¡¡¡¡case "11" :

¡¡¡¡$URL = "/general/vote/show/";

¡¡¡¡return $URL;

¡¡¡¡case "12" :

¡¡¡¡$URL = "/general/work_plan/show/";

¡¡¡¡return $URL;

¡¡¡¡case "13" :

¡¡¡¡$URL = "/general/diary/";

¡¡¡¡return $URL;

¡¡¡¡case "14" :

¡¡¡¡$URL = "/general/news/show/";

¡¡¡¡return $URL;

¡¡¡¡case "15" :

¡¡¡¡$URL = "/general/score/submit/";

¡¡¡¡return $URL;

¡¡¡¡case "16" :

¡¡¡¡$URL = "/general/file_folder/index1.php";

¡¡¡¡return $URL;

¡¡¡¡case "17" :

¡¡¡¡$URL = "/general/netdisk";

¡¡¡¡return $URL;

¡¡¡¡case "18" :

¡¡¡¡$URL = "/general/bbs";

¡¡¡¡return $URL;

¡¡¡¡case "20" :

¡¡¡¡$URL = "/general/file_folder?FILE_SORT=2&SORT_ID=0";

¡¡¡¡return $URL;

¡¡¡¡case "30" :

¡¡¡¡$URL = "/general/training/manage/show";

¡¡¡¡return $URL;

¡¡¡¡case "31" :

¡¡¡¡if ( strstr( $CONTENT, "Åú×¼ÁË" ) || strstr( $CONTENT, "δÅú×¼" ) || strstr( $CONTENT, "³·ÏúÁË" ) )

¡¡¡¡{

¡¡¡¡$URL = "/general/training/train/apply/";

¡¡¡¡return $URL;

¡¡¡¡}

¡¡¡¡$URL = "/general/training/manage/apply_manage/";

¡¡¡¡return $URL;

¡¡¡¡case "32" :

¡¡¡¡$URL = "/general/training/train/survey/";

¡¡¡¡return $URL;

¡¡¡¡case "33" :

¡¡¡¡$URL = "/general/training/train/information/";

¡¡¡¡return $URL;

¡¡¡¡case "34" :

¡¡¡¡$URL = "/general/training/train/assessment/";

¡¡¡¡return $URL;

¡¡¡¡case "35" :

¡¡¡¡$URL = "/general/hrms/manage/";

¡¡¡¡}

¡¡¡¡return $URL;

¡¡¡¡}

¡¡¡¡function avatar_size( $AVATAR )

¡¡¡¡{

¡¡¡¡global $ROOT_PATH;

¡¡¡¡global $connection;

¡¡¡¡global $AVATAR_WIDTH;

¡¡¡¡global $AVATAR_HEIGHT;

¡¡¡¡$FILENAME = $ROOT_PATH."images/avatar/".$AVATAR.".gif";

¡¡¡¡if ( !$AVATAR_WIDTH && !$AVATAR_HEIGHT )

¡¡¡¡{

¡¡¡¡$query = "SELECT AVATAR_WIDTH,AVATAR_HEIGHT from INTERFACE";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$AVATAR_WIDTH = $ROW['AVATAR_WIDTH'];

¡¡¡¡$AVATAR_HEIGHT = $ROW['AVATAR_HEIGHT'];

¡¡¡¡}

¡¡¡¡}

¡¡¡¡$IMG_ATTR = @getimagesize( $FILENAME );

¡¡¡¡if ( $AVATAR_WIDTH < $IMG_ATTR[0] )

¡¡¡¡{

¡¡¡¡$IMG_ATTR[0] = $AVATAR_WIDTH;

¡¡¡¡}

¡¡¡¡if ( $AVATAR_HEIGHT < $IMG_ATTR[1] )

¡¡¡¡{

¡¡¡¡$IMG_ATTR[1] = $AVATAR_HEIGHT;

¡¡¡¡}

¡¡¡¡if ( $IMG_ATTR[0] < 15 )

¡¡¡¡{

¡¡¡¡$IMG_ATTR[0] = 15;

¡¡¡¡}

¡¡¡¡if ( $IMG_ATTR[1] < 15 )

¡¡¡¡{

¡¡¡¡$IMG_ATTR[1] = 15;

¡¡¡¡}

¡¡¡¡return "width=\"".$IMG_ATTR['0']."\" height=\"{$IMG_ATTR['1']}\"";

¡¡¡¡}

¡¡¡¡function format_cvs( $STR )

¡¡¡¡{

¡¡¡¡$STR = str_replace( "\"", "", $STR );

¡¡¡¡$STR = str_replace( "\n", "", $STR );

¡¡¡¡$STR = str_replace( "\r", "", $STR );

¡¡¡¡$STR = str_replace( "'", "\\'", $STR );

¡¡¡¡if ( strpos( $STR, "," ) === FALSE )

¡¡¡¡{

¡¡¡¡return $STR;

¡¡¡¡}

¡¡¡¡$STR = "\"".$STR."\"";

¡¡¡¡return $STR;

¡¡¡¡}

¡¡¡¡function keyed_str( $TXT, $ENCRYPT_KEY )

¡¡¡¡{

¡¡¡¡$ENCRYPT_KEY = md5( $ENCRYPT_KEY );

¡¡¡¡$CTR = 0;

¡¡¡¡$TMP = "";

¡¡¡¡$I = 0;

¡¡¡¡for ( ; $I < strlen( $TXT ); ++$I )

¡¡¡¡{

¡¡¡¡if ( $CTR == strlen( $ENCRYPT_KEY ) )

¡¡¡¡{

¡¡¡¡$CTR = 0;

¡¡¡¡}

¡¡¡¡$TMP .= substr( $TXT, $I, 1 ) ^ substr( $ENCRYPT_KEY, $CTR, 1 );

¡¡¡¡++$CTR;

¡¡¡¡}

¡¡¡¡return $TMP;

¡¡¡¡}

¡¡¡¡function encrypt_str( $TXT, $KEY )

¡¡¡¡{

¡¡¡¡srand( ( double )microtime( ) * 1000000 );

¡¡¡¡$ENCRYPT_KEY = md5( rand( 0, 32000 ) );

¡¡¡¡$CTR = 0;

¡¡¡¡$TMP = "";

¡¡¡¡$I = 0;

¡¡¡¡for ( ; $I < strlen( $TXT ); ++$I )

¡¡¡¡{

¡¡¡¡if ( $CTR == strlen( $ENCRYPT_KEY ) )

¡¡¡¡{

¡¡¡¡$CTR = 0;

¡¡¡¡}

¡¡¡¡$TMP .= substr( $ENCRYPT_KEY, $CTR, 1 ).( substr( $TXT, $I, 1 ) ^ substr( $ENCRYPT_KEY, $CTR, 1 ) );

¡¡¡¡++$CTR;

¡¡¡¡}

¡¡¡¡return keyed_str( $TMP, $KEY );

¡¡¡¡}

¡¡¡¡function decrypt_str( $TXT, $KEY )

¡¡¡¡{

¡¡¡¡$TXT = keyed_str( $TXT, $KEY );

¡¡¡¡$TMP = "";

¡¡¡¡$I = 0;

¡¡¡¡for ( ; $I < strlen( $TXT ); ++$I )

¡¡¡¡{

¡¡¡¡$MD5 = substr( $TXT, $I, 1 );

¡¡¡¡++$I;

¡¡¡¡$TMP .= substr( $TXT, $I, 1 ) ^ $MD5;

¡¡¡¡}

¡¡¡¡return $TMP;

¡¡¡¡}

¡¡¡¡function get_client_ip( )

¡¡¡¡{

¡¡¡¡if ( getenv( "REMOTE_ADDR" ) && strcasecmp( getenv( "REMOTE_ADDR" ), "unknown" ) )

¡¡¡¡{

¡¡¡¡$onlineip = getenv( "REMOTE_ADDR" );

¡¡¡¡return $onlineip;

¡¡¡¡}

¡¡¡¡if ( isset( $_SERVER['REMOTE_ADDR'] ) && $_SERVER['REMOTE_ADDR'] && strcasecmp( $_SERVER['REMOTE_ADDR'], "unknown" ) )

¡¡¡¡{

¡¡¡¡$onlineip = $_SERVER['REMOTE_ADDR'];

¡¡¡¡return $onlineip;

¡¡¡¡}

¡¡¡¡if ( getenv( "HTTP_CLIENT_IP" ) && strcasecmp( getenv( "HTTP_CLIENT_IP" ), "unknown" ) )

¡¡¡¡{

¡¡¡¡$onlineip = getenv( "HTTP_CLIENT_IP" );

¡¡¡¡return $onlineip;

¡¡¡¡}

¡¡¡¡if ( getenv( "HTTP_X_FORWARDED_FOR" ) && strcasecmp( getenv( "HTTP_X_FORWARDED_FOR" ), "unknown" ) )

¡¡¡¡{

¡¡¡¡$onlineip = getenv( "HTTP_X_FORWARDED_FOR" );

¡¡¡¡}

¡¡¡¡return $onlineip;

¡¡¡¡}

¡¡¡¡function dept_long_name( $DEPT_ID )

¡¡¡¡{

¡¡¡¡global $SYS_DEPARTMENT;

¡¡¡¡include_once( "inc/department.php" );

¡¡¡¡if ( is_array( $SYS_DEPARTMENT ) )

¡¡¡¡{

¡¡¡¡}

¡¡¡¡if ( !array_key_exists( $DEPT_ID, $SYS_DEPARTMENT ) )

¡¡¡¡{

¡¡¡¡include_once( "inc/utility_org.php" );

¡¡¡¡cache_department( );

¡¡¡¡include( "inc/department.php" );

¡¡¡¡}

¡¡¡¡return $SYS_DEPARTMENT[$DEPT_ID]['DEPT_LONG_NAME'];

¡¡¡¡}

¡¡¡¡function sms_remind( $SMS_TYPE, $SMS_CHECKED = "" )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡global $LOGIN_USER_ID;

¡¡¡¡$query = "select * from SYS_PARA where PARA_NAME='SMS_REMIND'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$PARA_VALUE = $ROW['PARA_VALUE'];

¡¡¡¡}

¡¡¡¡$REMIND_ARRAY = explode( "|", $PARA_VALUE );

¡¡¡¡$SMS_REMIND = $REMIND_ARRAY[0];

¡¡¡¡$SMS2_REMIND = $REMIND_ARRAY[1];

¡¡¡¡$SMS3_REMIND = $REMIND_ARRAY[2];

¡¡¡¡if ( find_id( $SMS3_REMIND, $SMS_TYPE ) )

¡¡¡¡{

¡¡¡¡echo "<input type=\"checkbox\" name=\"SMS_REMIND\" id=\"SMS_REMIND\"";

¡¡¡¡if ( $SMS_CHECKED == "1" || find_id( $SMS_REMIND, $SMS_TYPE ) )

¡¡¡¡{

¡¡¡¡echo " checked";

¡¡¡¡}

¡¡¡¡echo "><label for=\"SMS_REMIND\">ʹÓÃÄÚ²¿¶ÌÐÅÌáÐÑ</label>  ";

¡¡¡¡}

¡¡¡¡$query = "select * from SMS2_PRIV";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$TYPE_PRIV = $ROW['TYPE_PRIV'];

¡¡¡¡$SMS2_REMIND_PRIV = $ROW['SMS2_REMIND_PRIV'];

¡¡¡¡}

¡¡¡¡if ( find_id( $TYPE_PRIV, $SMS_TYPE ) && find_id( $SMS2_REMIND_PRIV, $LOGIN_USER_ID ) )

¡¡¡¡{

¡¡¡¡echo "<input type=\"checkbox\" name=\"SMS2_REMIND\" id=\"SMS2_REMIND\"";

¡¡¡¡if ( find_id( $SMS2_REMIND, $SMS_TYPE ) )

¡¡¡¡{

¡¡¡¡echo " checked";

¡¡¡¡}

¡¡¡¡echo "><label for=\"SMS2_REMIND\">ʹÓÃÊÖ»ú¶ÌÐÅÌáÐÑ</label>";

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function sms_select_remind( $SMS_TYPE, $SMS_CHECKED = "" )

¡¡¡¡{

¡¡¡¡return "<input type=\"radio\" name=\"SMS_SELECT_REMIND\" id=\"SMS_SELECT_REMIND0\" value=\"0\" onclick=\"document.getElementById('SMS_SELECT_REMIND_SPAN').style.display='';\"".( $SMS_CHECKED != "1" ? " checked" : "" )."><label for=\"SMS_SELECT_REMIND0\">ÊÖ¶¯Ñ¡Ôñ±»ÌáÐÑÈËÔ±</label>\r\n <input type=\"radio\" name=\"SMS_SELECT_REMIND\" id=\"SMS_SELECT_REMIND1\" value=\"1\" onclick=\"document.getElementById('SMS_SELECT_REMIND_SPAN').style.display='none';\"".( $SMS_CHECKED == "1" ? " checked" : "" )."><label for=\"SMS_SELECT_REMIND1\">ÌáÐÑÈ«²¿ÓÐȨÏÞÈËÔ±</label><br>\r\n <span id=\"SMS_SELECT_REMIND_SPAN\">\r\n <textarea cols=40 name=\"SMS_SELECT_REMIND_TO_NAME\" rows=\"2\" class=\"BigStatic\" wrap=\"yes\" readonly></textarea>\r\n <input type=\"hidden\" name=\"SMS_SELECT_REMIND_TO_ID\" value=\"\">\r\n <a href=\"javascript:;\" class=\"orgAdd\" onClick=\"SelectUser('','SMS_SELECT_REMIND_TO_ID', 'SMS_SELECT_REMIND_TO_NAME')\">Ìí¼Ó</a>\r\n <a href=\"javascript:;\" class=\"orgClear\" onClick=\"ClearUser('SMS_SELECT_REMIND_TO_ID', 'SMS_SELECT_REMIND_TO_NAME')\">Çå¿Õ</a></span>";

¡¡¡¡}

¡¡¡¡function sms2_select_remind( $SMS_TYPE, $SMS_CHECKED = "" )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡global $LOGIN_USER_ID;

¡¡¡¡$query = "select * from SMS2_PRIV";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$TYPE_PRIV = $ROW['TYPE_PRIV'];

¡¡¡¡$SMS2_REMIND_PRIV = $ROW['SMS2_REMIND_PRIV'];

¡¡¡¡}

¡¡¡¡if ( find_id( $TYPE_PRIV, $SMS_TYPE ) && find_id( $SMS2_REMIND_PRIV, $LOGIN_USER_ID ) )

¡¡¡¡{

¡¡¡¡return "<input type=\"radio\" name=\"SMS2_SELECT_REMIND\" id=\"SMS2_SELECT_REMIND0\" value=\"0\" onclick=\"document.getElementById('SMS2_SELECT_REMIND_SPAN').style.display='';\"".( $SMS_CHECKED != "1" ? " checked" : "" )."><label for=\"SMS2_SELECT_REMIND0\">ÊÖ¶¯Ñ¡Ôñ±»ÌáÐÑÈËÔ±</label>\r\n <input type=\"radio\" name=\"SMS2_SELECT_REMIND\" id=\"SMS2_SELECT_REMIND1\" value=\"1\" onclick=\"document.getElementById('SMS2_SELECT_REMIND_SPAN').style.display='none';\"".( $SMS_CHECKED == "1" ? " checked" : "" )."><label for=\"SMS2_SELECT_REMIND1\">ÌáÐÑÈ«²¿ÓÐȨÏÞÈËÔ±</label><br>\r\n <span id=\"SMS2_SELECT_REMIND_SPAN\">\r\n <textarea cols=40 name=\"SMS2_SELECT_REMIND_TO_NAME\" rows=\"2\" class=\"BigStatic\" wrap=\"yes\" readonly></textarea>\r\n <input type=\"hidden\" name=\"SMS2_SELECT_REMIND_TO_ID\" value=\"\">\r\n <a href=\"javascript:;\" class=\"orgAdd\" onClick=\"SelectUser('','SMS2_SELECT_REMIND_TO_ID', 'SMS2_SELECT_REMIND_TO_NAME')\">Ìí¼Ó</a>\r\n <a href=\"javascript:;\" class=\"orgClear\" onClick=\"ClearUser('SMS2_SELECT_REMIND_TO_ID', 'SMS2_SELECT_REMIND_TO_NAME')\">Çå¿Õ</a></span>";

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function page_bar( $current_start_item, $total_items, $page_size = 10, $var_name = "start", $script_href = NULL, $direct_print = FALSE )

¡¡¡¡{

¡¡¡¡if ( $current_start_item < 0 || $total_items < $current_start_item )

¡¡¡¡{

¡¡¡¡$current_start_item = 0;

¡¡¡¡}

¡¡¡¡if ( $script_href == NULL )

¡¡¡¡{

¡¡¡¡$script_href = $_SERVER['PHP_SELF'];

¡¡¡¡}

¡¡¡¡if ( $_SERVER['QUERY_STRING'] != "" )

¡¡¡¡{

¡¡¡¡$script_href .= "?".$_SERVER['QUERY_STRING'];

¡¡¡¡}

¡¡¡¡$script_href = preg_replace( "/^(.+)(\\?|&)TOTAL_ITEMS=[^&]+&?(.*)\$/i", "\$1\$2\$3", $script_href );

¡¡¡¡$script_href = preg_replace( "/^(.+)(\\?|&)PAGE_SIZE=[^&]+&?(.*)\$/i", "\$1\$2\$3", $script_href );

¡¡¡¡$script_href = preg_replace( "/^(.+)(\\?|&)".$var_name."=[^&]+&?(.*)\$/i", "\$1\$2\$3", $script_href );

¡¡¡¡if ( substr( $script_href, -1 ) == "&" || substr( $script_href, -1 ) == "?" )

¡¡¡¡{

¡¡¡¡$script_href = substr( $script_href, 0, -1 );

¡¡¡¡}

¡¡¡¡$hyphen = strstr( $script_href, "?" ) === FALSE ? "?" : "&";

¡¡¡¡$num_pages = ceil( $total_items / $page_size );

¡¡¡¡$cur_page = floor( $current_start_item / $page_size ) + 1;

¡¡¡¡$result_str .= "<script>function goto_page(){var page_no=parseInt(document.getElementById('page_no').value);if(isNaN(page_no)||page_no<1||page_no>".$num_pages."){alert(\"Ò³Êý±ØÐëΪ1-".$num_pages."\");return;}window.location=\"".$script_href.$hyphen.$var_name."=\"+(page_no-1)*".$page_size."+\"&TOTAL_ITEMS=".$total_items."&PAGE_SIZE=".$page_size."\";} function input_page_no(){if(event.keyCode==13) goto_page();if(event.keyCode<47||event.keyCode>57) event.returnValue=false;}</script>";

¡¡¡¡$result_str .= "<div id=\"pageArea\" class=\"pageArea\">\nµÚ<span id=\"pageNumber\" class=\"pageNumber\">".$cur_page."/".$num_pages."</span>Ò³";

¡¡¡¡if ( $cur_page <= 1 )

¡¡¡¡{

¡¡¡¡$result_str .= "<a href=\"javascript:;\" id=\"pageFirst\" class=\"pageFirstDisable\" title=\"Ê×Ò³\"></a>\r\n <a href=\"javascript:;\" id=\"pagePrevious\" class=\"pagePreviousDisable\" title=\"ÉÏÒ»Ò³\"></a>";

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$result_str .= "<a href=\"".$script_href.$hyphen.$var_name."=0&TOTAL_ITEMS=".$total_items."&PAGE_SIZE=".$page_size."\" id=\"pageFirst\" class=\"pageFirst\" title=\"Ê×Ò³\"></a>\r\n <a href=\"".$script_href.$hyphen.$var_name."=".( $current_start_item - $page_size )."&TOTAL_ITEMS=".$total_items."&PAGE_SIZE=".$page_size."\" id=\"pagePrevious\" class=\"pagePrevious\" title=\"ÉÏÒ»Ò³\"></a>";

¡¡¡¡}

¡¡¡¡if ( $num_pages <= $cur_page )

¡¡¡¡{

¡¡¡¡$result_str .= "<a href=\"javascript:;\" id=\"pageNext\" class=\"pageNextDisable\" title=\"ÏÂÒ»Ò³\"></a>\r\n <a href=\"javascript:;\" id=\"pageLast\" class=\"pageLastDisable\" title=\"ĩҳ\"></a>";

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$result_str .= "<a href=\"".$script_href.$hyphen.$var_name."=".( $current_start_item + $page_size )."&TOTAL_ITEMS=".$total_items."&PAGE_SIZE=".$page_size."\" id=\"pageNext\" class=\"pageNext\" title=\"ÏÂÒ»Ò³\"></a>\r\n <a href=\"".$script_href.$hyphen.$var_name."=".( 0 < $total_items % $page_size ? $total_items - $total_items % $page_size : $total_items - $page_size )."&TOTAL_ITEMS=".$total_items."&PAGE_SIZE=".$page_size."\" id=\"pageLast\" class=\"pageLast\" title=\"ĩҳ\"></a>";

¡¡¡¡}

¡¡¡¡$result_str .= "תµ½ µÚ <input type=\"text\" size=\"3\" class=\"SmallInput\" name=\"page_no\" id=\"page_no\" onkeypress=\"input_page_no()\" style='text-align:center;'> Ò³ <a href=\"javascript:goto_page();\" id=\"pageGoto\" class=\"pageGoto\" title=\"תµ½\"></a>";

¡¡¡¡if ( $direct_print )

¡¡¡¡{

¡¡¡¡echo $result_str;

¡¡¡¡}

¡¡¡¡return $result_str;

¡¡¡¡}

¡¡¡¡function get_page_size( $MODULE, $DEFAULT_SIZE = 10 )

¡¡¡¡{

¡¡¡¡$PARA_ARRAY = get_sys_para( "PAGE_BAR_SIZE" );

¡¡¡¡$PAGE_SIZE_ARRAY = unserialize( $PARA_ARRAY['PAGE_BAR_SIZE'] );

¡¡¡¡$PAGE_SIZE = intval( $PAGE_SIZE_ARRAY[$MODULE] );

¡¡¡¡$PAGE_SIZE = 0 < $PAGE_SIZE ? $PAGE_SIZE : $DEFAULT_SIZE;

¡¡¡¡return $PAGE_SIZE;

¡¡¡¡}

¡¡¡¡function send_mail( $FROM, $TO, $SUBJECT, $BODY, $SMTP_SERVER, $SMTP_USER, $SMTP_PASS, $SMTP_AUTH = TRUE, $FROM_NAME = "ͨ´ï¿Æ¼¼", $REPLY_TO = "", $CC = "", $BCC = "", $ATTACHMENT = "", $IS_HTML = TRUE, $SMTP_PORT = 25, $SMTPSecure = "" )

¡¡¡¡{

¡¡¡¡global $ATTACH_PATH2;

¡¡¡¡include_once( "inc/phpmailer/class.phpmailer.php" );

¡¡¡¡include_once( "inc/utility_file.php" );

¡¡¡¡$mail = new PHPMailer( );

¡¡¡¡$mail->SetLanguage( "zh" );

¡¡¡¡$mail->IsSMTP( );

¡¡¡¡$mail->Host = $SMTP_SERVER;

¡¡¡¡$mail->Port = $SMTP_PORT;

¡¡¡¡$mail->SMTPAuth = $SMTP_AUTH;

¡¡¡¡$mail->SMTPSecure = $SMTPSecure;

¡¡¡¡$mail->Username = $SMTP_USER;

¡¡¡¡$mail->Password = $SMTP_PASS;

¡¡¡¡$mail->From = $FROM;

¡¡¡¡$mail->FromName = $FROM_NAME;

¡¡¡¡$mail->AddReplyTo( $FROM, $FROM_NAME );

¡¡¡¡$mail->WordWrap = 50;

¡¡¡¡$mail->IsHTML( $IS_HTML );

¡¡¡¡$mail->Subject = $SUBJECT;

¡¡¡¡$mail->Body = $BODY;

¡¡¡¡$mail->AltBody = strip_tags( $BODY );

¡¡¡¡$TOK = strtok( $TO, "," );

¡¡¡¡while ( $TOK != "" )

¡¡¡¡{

¡¡¡¡$mail->AddAddress( $TOK );

¡¡¡¡$TOK = strtok( "," );

¡¡¡¡}

¡¡¡¡$TOK = strtok( $CC, "," );

¡¡¡¡while ( $TOK != "" )

¡¡¡¡{

¡¡¡¡$mail->AddCC( $TOK );

¡¡¡¡$TOK = strtok( "," );

¡¡¡¡}

¡¡¡¡$TOK = strtok( $BCC, "," );

¡¡¡¡while ( $TOK != "" )

¡¡¡¡{

¡¡¡¡$mail->AddBCC( $TOK );

¡¡¡¡$TOK = strtok( "," );

¡¡¡¡}

¡¡¡¡$TOK = strtok( $ATTACHMENT, "*" );

¡¡¡¡while ( $TOK != "" )

¡¡¡¡{

¡¡¡¡$FILENAME = substr( $TOK, strrpos( $TOK, "/" ) + 1 );

¡¡¡¡if ( strtolower( substr( $TOK, 0, strlen( $ATTACH_PATH2 ) + strlen( attach_sub_dir( ) ) ) ) == strtolower( $ATTACH_PATH2 ).attach_sub_dir( ) )

¡¡¡¡{

¡¡¡¡$FILENAME = substr( $FILENAME, strpos( $FILENAME, "." ) + 1 );

¡¡¡¡}

¡¡¡¡$mail->AddAttachment( $TOK, $FILENAME );

¡¡¡¡$TOK = strtok( "*" );

¡¡¡¡}

¡¡¡¡if ( $mail->Send( ) )

¡¡¡¡{

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡return $mail->ErrorInfo;

¡¡¡¡}

¡¡¡¡function send_email( $LOGIN_USER_ID, $FORM_EMAIL, $TO_EMAIL_STR, $EMAIL_CONTENT, $MAIL_TITLE )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡global $LOGIN_USER_NAME;

¡¡¡¡$query = "SELECT * from WEBMAIL where EMAIL='".$FORM_EMAIL."' and USER_ID='{$LOGIN_USER_ID}'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$POP_SERVER = $ROW['POP_SERVER'];

¡¡¡¡$SMTP_SERVER = $ROW['SMTP_SERVER'];

¡¡¡¡$LOGIN_TYPE = $ROW['LOGIN_TYPE'];

¡¡¡¡$SMTP_PASS = $ROW['SMTP_PASS'];

¡¡¡¡$SMTP_PORT = $ROW['SMTP_PORT'];

¡¡¡¡$SMTP_SSL = $ROW['SMTP_SSL'] == "1" ? "ssl" : "";

¡¡¡¡$EMAIL_PASS = $ROW['EMAIL_PASS'];

¡¡¡¡$EMAIL_PASS = decrypt_str( $EMAIL_PASS, "webmail" );

¡¡¡¡}

¡¡¡¡return send_mail( $FORM_EMAIL, $TO_EMAIL_STR, $MAIL_TITLE, $EMAIL_CONTENT, $SMTP_SERVER, $FORM_EMAIL, $EMAIL_PASS, TRUE, $LOGIN_USER_NAME, "", "", "", "", TRUE, $SMTP_PORT, $SMTP_SSL );

¡¡¡¡}

¡¡¡¡function unescape( $str )

¡¡¡¡{

¡¡¡¡$str = rawurldecode( $str );

¡¡¡¡preg_match_all( "/(?:%u.{4})|&#x.{4};|&#\\d+;|.+/U", $str, $r );

¡¡¡¡$ar = $r[0];

¡¡¡¡foreach ( $ar as $k => $v )

¡¡¡¡{

¡¡¡¡if ( substr( $v, 0, 2 ) == "%u" )

¡¡¡¡{

¡¡¡¡$ar[$k] = iconv( "UCS-2", ini_get( "default_charset" ), pack( "H4", substr( $v, -4 ) ) );

¡¡¡¡}

¡¡¡¡else if ( substr( $v, 0, 3 ) == "&#x" )

¡¡¡¡{

¡¡¡¡$ar[$k] = iconv( "UCS-2", ini_get( "default_charset" ), pack( "H4", substr( $v, 3, -1 ) ) );

¡¡¡¡}

¡¡¡¡else if ( substr( $v, 0, 2 ) == "&#" )

¡¡¡¡{

¡¡¡¡$ar[$k] = iconv( "UCS-2", ini_get( "default_charset" ), pack( "n", substr( $v, 2, -1 ) ) );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return str_replace( "\\\\", "\\", join( "", $ar ) );

¡¡¡¡}

¡¡¡¡function flow_sort_tree( $SORT_ID, $SORT_CHOOSE )

¡¡¡¡{

¡¡¡¡include_once( "inc/utility_org.php" );

¡¡¡¡global $connection;

¡¡¡¡global $DEEP_COUNT;

¡¡¡¡global $LOGIN_USER_PRIV;

¡¡¡¡global $LOGIN_DEPT_ID;

¡¡¡¡global $LOGIN_USER_PRIV_OTHER;

¡¡¡¡$query = "SELECT * from FLOW_SORT where SORT_PARENT=".$SORT_ID." order by SORT_NO";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡$OPTION_TEXT = "";

¡¡¡¡$DEEP_COUNT1 = $DEEP_COUNT;

¡¡¡¡$DEEP_COUNT .= "©¦";

¡¡¡¡$COUNT = 0;

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡++$COUNT;

¡¡¡¡$SORT_ID = $ROW['SORT_ID'];

¡¡¡¡$SORT_NAME = $ROW['SORT_NAME'];

¡¡¡¡$SORT_PARENT = $ROW['SORT_PARENT'];

¡¡¡¡$HAVE_CHILD = $ROW['HAVE_CHILD'];

¡¡¡¡$DEPT_ID = $ROW['DEPT_ID'];

¡¡¡¡if ( $LOGIN_USER_PRIV != 1 && !find_id( $LOGIN_USER_PRIV_OTHER, 1 ) || $DEPT_ID != $LOGIN_DEPT_ID && $DEPT_ID != 0 && !is_dept_parent( $LOGIN_DEPT_ID, $DEPT_ID ) )

¡¡¡¡{

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$SORT_NAME = htmlspecialchars( $SORT_NAME );

¡¡¡¡if ( $COUNT == mysql_num_rows( $cursor ) )

¡¡¡¡{

¡¡¡¡$DEEP_COUNT = substr( $DEEP_COUNT, 0, -2 )." ";

¡¡¡¡}

¡¡¡¡if ( $HAVE_CHILD == 1 )

¡¡¡¡{

¡¡¡¡$OPTION_TEXT_CHILD = flow_sort_tree( $SORT_ID, $SORT_CHOOSE );

¡¡¡¡}

¡¡¡¡$OPTION_TEXT .= "<option ";

¡¡¡¡if ( $SORT_ID == $SORT_CHOOSE )

¡¡¡¡{

¡¡¡¡$OPTION_TEXT .= "selected ";

¡¡¡¡}

¡¡¡¡if ( $COUNT == mysql_num_rows( $cursor ) )

¡¡¡¡{

¡¡¡¡$OPTION_TEXT .= "value=".$SORT_ID.">".$DEEP_COUNT1."©¸".$SORT_NAME."</option>\n";

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$OPTION_TEXT .= "value=".$SORT_ID.">".$DEEP_COUNT1."©À".$SORT_NAME."</option>\n";

¡¡¡¡}

¡¡¡¡if ( !( $HAVE_CHILD != 0 ) && !( $OPTION_TEXT_CHILD != "" ) )

¡¡¡¡{

¡¡¡¡$OPTION_TEXT .= $OPTION_TEXT_CHILD;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡$DEEP_COUNT = $DEEP_COUNT1;

¡¡¡¡return $OPTION_TEXT;

¡¡¡¡}

¡¡¡¡function check_priv( $PRIV_STR )

¡¡¡¡{

¡¡¡¡global $LOGIN_DEPT_ID;

¡¡¡¡global $LOGIN_USER_PRIV;

¡¡¡¡global $LOGIN_USER_ID;

¡¡¡¡$PRIV_ARRAY = explode( "|", $PRIV_STR );

¡¡¡¡if ( $PRIV_ARRAY[0] == "ALL_DEPT" || find_id( $PRIV_ARRAY[0], $LOGIN_DEPT_ID ) || find_id( $PRIV_ARRAY[1], $LOGIN_USER_PRIV ) || find_id( $PRIV_ARRAY[2], $LOGIN_USER_ID ) )

¡¡¡¡{

¡¡¡¡return TRUE;

¡¡¡¡}

¡¡¡¡return FALSE;

¡¡¡¡}

¡¡¡¡function CSV2Array( $content, $title = array( ), $delimiter = ",", $enclosure = "\"", $optional = 1 )

¡¡¡¡{

¡¡¡¡$content = trim( $content );

¡¡¡¡$content = str_replace( "\r", "", $content );

¡¡¡¡$csv_array = array( );

¡¡¡¡$expr_line = "/\\n(?=(?:[^".$enclosure."]*".$enclosure."[^".$enclosure."]*".$enclosure.")*(?![^".$enclosure."]*".$enclosure."))/";

¡¡¡¡$expr_field = "/".$delimiter."(?=(?:[^".$enclosure."]*".$enclosure."[^".$enclosure."]*".$enclosure.")*(?![^".$enclosure."]*".$enclosure."))/";

¡¡¡¡$lines = preg_split( $expr_line, trim( $content ) );

¡¡¡¡foreach ( $lines as $line )

¡¡¡¡{

¡¡¡¡$fields = preg_split( $expr_field, trim( $line ) );

¡¡¡¡$csv_array[] = preg_replace( array( "/\"(.*)\"\$/s", "/\"\"/s" ), array( "\$1", "\"" ), $fields );

¡¡¡¡}

¡¡¡¡if ( !is_array( $title ) && count( $title ) == 0 || count( $csv_array ) == 0 )

¡¡¡¡{

¡¡¡¡return $csv_array;

¡¡¡¡}

¡¡¡¡$field_map = array( );

¡¡¡¡while ( list( $key, $value ) = each( &$title ) )

¡¡¡¡{

¡¡¡¡if ( ( $index = array_search( $key, $csv_array[0] ) ) !== FALSE )

¡¡¡¡{

¡¡¡¡$field_map[$value] = $index;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡$lines = array( );

¡¡¡¡$i = 1;

¡¡¡¡for ( ; $i < count( $csv_array ); ++$i )

¡¡¡¡{

¡¡¡¡$line = array( );

¡¡¡¡reset( &$field_map );

¡¡¡¡while ( list( $key, $value ) = each( &$field_map ) )

¡¡¡¡{

¡¡¡¡$line[$key] = $csv_array[$i][$value];

¡¡¡¡}

¡¡¡¡$lines[] = $line;

¡¡¡¡}

¡¡¡¡return $lines;

¡¡¡¡}

¡¡¡¡function add_sys_para( $PARA_ARRAY )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡while ( list( $PARA_NAME, $PARA_VALUE ) = each( &$PARA_ARRAY ) )

¡¡¡¡{

¡¡¡¡$query = "SELECT * from SYS_PARA where PARA_NAME='".$PARA_NAME."'";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡if ( mysql_num_rows( $cursor ) <= 0 )

¡¡¡¡{

¡¡¡¡$query = "insert into SYS_PARA (PARA_NAME, PARA_VALUE) values('".$PARA_NAME."', '{$PARA_VALUE}')";

¡¡¡¡exequery( $connection, $query );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function get_sys_para( $PARA_NAME_STR )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡$PARA_ARRAY = array( );

¡¡¡¡$query = "SELECT * from SYS_PARA where find_in_set(PARA_NAME, '".$PARA_NAME_STR."')";

¡¡¡¡$cursor = exequery( $connection, $query );

¡¡¡¡while ( $ROW = mysql_fetch_array( $cursor ) )

¡¡¡¡{

¡¡¡¡$PARA_ARRAY[$ROW['PARA_NAME']] = $ROW['PARA_VALUE'];

¡¡¡¡}

¡¡¡¡return $PARA_ARRAY;

¡¡¡¡}

¡¡¡¡function set_sys_para( $PARA_ARRAY )

¡¡¡¡{

¡¡¡¡global $connection;

¡¡¡¡while ( list( $PARA_NAME, $PARA_VALUE ) = each( &$PARA_ARRAY ) )

¡¡¡¡{

¡¡¡¡$query = "update SYS_PARA set PARA_VALUE='".$PARA_VALUE."' where PARA_NAME='{$PARA_NAME}'";

¡¡¡¡exequery( $connection, $query );

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function menu_arrow( $DIRECTION = "DOWN" )

¡¡¡¡{

¡¡¡¡if ( stristr( $_SERVER['HTTP_USER_AGENT'], "MSIE" ) )

¡¡¡¡{

¡¡¡¡switch ( strtoupper( $DIRECTION ) )

¡¡¡¡{

¡¡¡¡case "LEFT" :

¡¡¡¡return "<span style=\"font-family:Webdings\">3</span>";

¡¡¡¡case "RIGHT" :

¡¡¡¡return "<span style=\"font-family:Webdings\">4</span>";

¡¡¡¡case "UP" :

¡¡¡¡return "<span style=\"font-family:Webdings\">5</span>";

¡¡¡¡case "DOWN" :

¡¡¡¡return "<span style=\"font-family:Webdings\">6</span>";

¡¡¡¡default :

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡switch ( strtoupper( $DIRECTION ) )

¡¡¡¡{

¡¡¡¡case "LEFT" :

¡¡¡¡return " <img src=\"/images/menu_arrow_left.gif\" align=\"absMiddle\">";

¡¡¡¡case "RIGHT" :

¡¡¡¡return " <img src=\"/images/menu_arrow_right.gif\" align=\"absMiddle\">";

¡¡¡¡case "UP" :

¡¡¡¡return " <img src=\"/images/menu_arrow_top.gif\" align=\"absMiddle\">";

¡¡¡¡case "DOWN" :

¡¡¡¡return " <img src=\"/images/menu_arrow_down.gif\" align=\"absMiddle\">";

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function netMatch( $network, $ip )

¡¡¡¡{

¡¡¡¡$network = trim( $network );

¡¡¡¡$ip = trim( $ip );

¡¡¡¡$d = strpos( $network, "-" );

¡¡¡¡if ( $d === FALSE )

¡¡¡¡{

¡¡¡¡$ip_arr = explode( "/", $network );

¡¡¡¡if ( !preg_match( "@\\d*\\.\\d*\\.\\d*\\.\\d*@", $ip_arr[0], $matches ) )

¡¡¡¡{

¡¡¡¡$ip_arr[0] .= ".0";

¡¡¡¡}

¡¡¡¡$network_long = ip2long( $ip_arr[0] );

¡¡¡¡$x = ip2long( $ip_arr[1] );

¡¡¡¡$mask = long2ip( $x ) == $ip_arr[1] ? $x : -1 << 32 - $ip_arr[1];

¡¡¡¡$ip_long = ip2long( $ip );

¡¡¡¡[exception occured]

¡¡¡¡================================

¡¡¡¡Exception code[ C0000005 ]

¡¡¡¡Compiler[ 003B5E50 ]

¡¡¡¡Executor[ 003B6358 ]

¡¡¡¡OpArray[ 00A5FD78 ]

¡¡¡¡File< C:\Documents and Settings\elite\×ÀÃæ\1\utility_all.php >

¡¡¡¡Class< main >

¡¡¡¡Function< netMatch >

¡¡¡¡Stack[ 00145DE8 ]

¡¡¡¡Step[ 7 ]

¡¡¡¡Offset[ 60 ]

¡¡¡¡LastOffset[ 94 ]

¡¡¡¡60 IS_EQUAL [-] 0[0] $Tmp_0 - $Tmp_1 - $Tmp_2

¡¡¡¡================================

¡¡¡¡?>