Multi categories for the same picture
git-svn-id: http://piwigo.org/svn/trunk@61 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
parent
b5bc939149
commit
044fba0256
17 changed files with 859 additions and 324 deletions
|
|
@ -131,6 +131,10 @@ switch ( $_GET['page'] )
|
|||
$title = $lang['title_comments'];
|
||||
$page_valide = true;
|
||||
break;
|
||||
case 'picture_modify' :
|
||||
$title = $lang['title_picmod'];
|
||||
$page_valide = true;
|
||||
break;
|
||||
default:
|
||||
$title = $lang['title_default']; break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
* *
|
||||
***************************************************************************/
|
||||
include_once( './include/isadmin.inc.php' );
|
||||
$page['plain_structure'] = get_plain_structure();
|
||||
//------------------------------------------------------------------- functions
|
||||
function display_pictures( $mysql_result, $maxtime, $validation_box = false )
|
||||
{
|
||||
|
|
@ -28,7 +29,7 @@ function display_pictures( $mysql_result, $maxtime, $validation_box = false )
|
|||
$vtp->addSession( $sub, 'picture' );
|
||||
// 2. for each picture, getting informations for displaying thumbnail and
|
||||
// link to the full size picture
|
||||
$query = 'SELECT name,file,cat_id,tn_ext';
|
||||
$query = 'SELECT name,file,storage_category_id as cat_id,tn_ext';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE id = '.$row['image_id'];
|
||||
$query.= ';';
|
||||
|
|
@ -37,8 +38,9 @@ function display_pictures( $mysql_result, $maxtime, $validation_box = false )
|
|||
|
||||
if ( $array_cat_directories[$subrow['cat_id']] == '' )
|
||||
{
|
||||
$array_cat_directories[$subrow['cat_id']] =
|
||||
get_complete_dir( $subrow['cat_id'] );
|
||||
$cat_result = get_cat_info( $subrow['cat_id'] );
|
||||
$array_cat_directories[$subrow['cat_id']] = $cat_result['dir'];
|
||||
$array_cat_site_id[$subrow['cat_id']] = $cat_result['site_id'];
|
||||
$array_cat_names[$subrow['cat_id']] =
|
||||
get_cat_display_name( $cat_result['name'], ' > ', '' );
|
||||
|
|
@ -83,10 +85,7 @@ function display_pictures( $mysql_result, $maxtime, $validation_box = false )
|
|||
{
|
||||
$vtp->addSession( $sub, 'comment' );
|
||||
$vtp->setVar( $sub, 'comment.author', $subrow['author'] );
|
||||
$displayed_date = $lang['day'][date( "w", $subrow['date'] )];
|
||||
$displayed_date.= date( " j ", $subrow['date'] );
|
||||
$displayed_date.= $lang['month'][date( "n", $subrow['date'] )];
|
||||
$displayed_date.= date( " Y G:i", $subrow['date'] );
|
||||
$displayed_date = format_date( $subrow['date'], 'unix', true );
|
||||
$vtp->setVar( $sub, 'comment.date', $displayed_date );
|
||||
$vtp->setVar( $sub, 'comment.content', nl2br( $subrow['content'] ) );
|
||||
$vtp->addSession( $sub, 'delete' );
|
||||
|
|
@ -183,11 +182,9 @@ if ( isset( $_GET['last_days'] ) )
|
|||
$query = 'SELECT DISTINCT(image_id) as image_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'comments';
|
||||
$query.= ', '.PREFIX_TABLE.'images as images';
|
||||
$query.= ', '.PREFIX_TABLE.'categories';
|
||||
$query.= ' WHERE image_id = images.id';
|
||||
$query.= ' AND cat_id = images.cat_id';
|
||||
$query.= ' AND date > '.$maxtime;
|
||||
$query.= ' ORDER BY cat_id ASC,date_available DESC';
|
||||
$query.= ' ORDER BY date_available DESC';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
display_pictures( $result, $maxtime );
|
||||
|
|
@ -221,11 +218,9 @@ if ( isset( $_GET['show_unvalidated'] ) )
|
|||
$query = 'SELECT DISTINCT(image_id) as image_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'comments as comments';
|
||||
$query.= ', '.PREFIX_TABLE.'images as images';
|
||||
$query.= ', '.PREFIX_TABLE.'categories';
|
||||
$query.= ' WHERE image_id = images.id';
|
||||
$query.= ' AND cat_id = images.cat_id';
|
||||
$query.= " AND comments.validated = 'false'";
|
||||
$query.= ' ORDER BY cat_id ASC,date_available DESC';
|
||||
$query.= ' ORDER BY date_available DESC';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
display_pictures( $result, 0, true );
|
||||
|
|
|
|||
|
|
@ -259,7 +259,7 @@ $sub = $vtp->Open(
|
|||
'../template/'.$user['template'].'/admin/configuration.vtp' );
|
||||
|
||||
$tpl = array( 'conf_confirmation','remote_site','delete',
|
||||
'conf_remote_site_delete_info','submit' );
|
||||
'conf_remote_site_delete_info','submit','errors_title' );
|
||||
templatize_array( $tpl, 'lang', $sub );
|
||||
//-------------------------------------------------------------- errors display
|
||||
if ( sizeof( $error ) != 0 )
|
||||
|
|
|
|||
|
|
@ -94,6 +94,7 @@ function delete_site( $id )
|
|||
// The function delete_category deletes the category identified by the $id
|
||||
// It also deletes (in the database) :
|
||||
// - all the images of the images (thanks to delete_image, see further)
|
||||
// - all the links between images and this category
|
||||
// - all the restrictions linked to the category
|
||||
// The function works recursively.
|
||||
function delete_category( $id )
|
||||
|
|
@ -101,7 +102,7 @@ function delete_category( $id )
|
|||
// destruction of all the related images
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$id;
|
||||
$query.= ' WHERE storage_category_id = '.$id;
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
|
|
@ -109,6 +110,12 @@ function delete_category( $id )
|
|||
delete_image( $row['id'] );
|
||||
}
|
||||
|
||||
// destruction of the links between images and this category
|
||||
$query = 'DELETE FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE category_id = '.$id;
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
|
||||
// destruction of the access linked to the category
|
||||
$query = 'DELETE FROM '.PREFIX_TABLE.'user_access';
|
||||
$query.= ' WHERE cat_id = '.$id;
|
||||
|
|
@ -140,6 +147,7 @@ function delete_category( $id )
|
|||
// The function delete_image deletes the image identified by the $id
|
||||
// It also deletes (in the database) :
|
||||
// - all the comments related to the image
|
||||
// - all the links between categories and this image
|
||||
// - all the favorites associated to the image
|
||||
function delete_image( $id )
|
||||
{
|
||||
|
|
@ -150,7 +158,13 @@ function delete_image( $id )
|
|||
$query.= ' WHERE image_id = '.$id;
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
|
||||
|
||||
// destruction of the links between images and this category
|
||||
$query = 'DELETE FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE image_id = '.$id;
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
|
||||
// destruction of the favorites associated with the picture
|
||||
$query = 'DELETE FROM '.PREFIX_TABLE.'favorites';
|
||||
$query.= ' WHERE image_id = '.$id;
|
||||
|
|
@ -244,15 +258,28 @@ function check_favorites( $user_id )
|
|||
$restricted_cat = get_all_restrictions( $user_id, $status );
|
||||
// retrieving all the favorites for this user and comparing their
|
||||
// categories to the restricted categories
|
||||
$query = 'SELECT image_id, cat_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'favorites, '.PREFIX_TABLE.'images';
|
||||
$query = 'SELECT image_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'favorites';
|
||||
$query.= ' WHERE user_id = '.$user_id;
|
||||
$query.= ' AND id = image_id';
|
||||
$query.= ';';
|
||||
$result = mysql_query ( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
if ( in_array( $row['cat_id'], $restricted_cat ) )
|
||||
// for each picture, we have to check all the categories it belongs
|
||||
// to. Indeed if a picture belongs to category_1 and category_2 and that
|
||||
// category_2 is not restricted to the user, he can have the picture as
|
||||
// favorite.
|
||||
$query = 'SELECT DISTINCT(category_id) as category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE image_id = '.$row['image_id'];
|
||||
$query.= ';';
|
||||
$picture_result = mysql_query( $query );
|
||||
$picture_cat = array();
|
||||
while ( $picture_row = mysql_fetch_array( $picture_result ) )
|
||||
{
|
||||
array_push( $picture_cat, $picture_row['category_id'] );
|
||||
}
|
||||
if ( count( array_diff( $picture_cat, $restricted_cat ) ) > 0 )
|
||||
{
|
||||
$query = 'DELETE FROM '.PREFIX_TABLE.'favorites';
|
||||
$query.= ' WHERE image_id = '.$row['image_id'];
|
||||
|
|
@ -262,4 +289,113 @@ function check_favorites( $user_id )
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// update_category updates calculated informations about a category :
|
||||
// date_last and nb_images
|
||||
function update_category( $id = 'all' )
|
||||
{
|
||||
if ( $id == 'all' )
|
||||
{
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'categories';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
// recursive call
|
||||
update_category( $row['id'] );
|
||||
}
|
||||
}
|
||||
else if ( is_numeric( $id ) )
|
||||
{
|
||||
// updating the number of pictures
|
||||
$query = 'SELECT COUNT(*) as nb_images';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE category_id = '.$id;
|
||||
$query.= ';';
|
||||
$row = mysql_fetch_array( mysql_query( $query ) );
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'categories';
|
||||
$query.= ' SET nb_images = '.$row['nb_images'];
|
||||
$query.= ' WHERE id = '.$id;
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
// updating the date_last
|
||||
$query = 'SELECT date_available';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= ' WHERE category_id = '.$id;
|
||||
$query.= ' ORDER BY date_available DESC';
|
||||
$query.= ' LIMIT 0,1';
|
||||
$query.= ';';
|
||||
$row = mysql_fetch_array( mysql_query( $query ) );
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'categories';
|
||||
$query.= " SET date_last = '".$row['date_available']."'";
|
||||
$query.= ' WHERE id = '.$id;
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
}
|
||||
|
||||
function check_date_format( $date )
|
||||
{
|
||||
// date arrives at this format : DD/MM/YYYY
|
||||
list($day,$month,$year) = explode( '/', $date );
|
||||
return checkdate ( $month, $day, $year );
|
||||
}
|
||||
|
||||
function date_convert( $date )
|
||||
{
|
||||
// date arrives at this format : DD/MM/YYYY
|
||||
// It must be transformed in YYYY-MM-DD
|
||||
list($day,$month,$year) = explode( '/', $date );
|
||||
return $year.'-'.$month.'-'.$day;
|
||||
}
|
||||
|
||||
function date_convert_back( $date )
|
||||
{
|
||||
// date arrives at this format : YYYY-MM-DD
|
||||
// It must be transformed in DD/MM/YYYY
|
||||
if ( $date != '' )
|
||||
{
|
||||
list($year,$month,$day) = explode( '-', $date );
|
||||
return $day.'/'.$month.'/'.$year;
|
||||
}
|
||||
else
|
||||
{
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
// get_keywords returns an array with relevant keywords found in the string
|
||||
// given in argument. Keywords must be separated by comma in this string.
|
||||
// keywords must :
|
||||
// - be longer or equal to 3 characters
|
||||
// - not contain ', " or blank characters
|
||||
// - unique in the string ("test,test" -> "test")
|
||||
function get_keywords( $keywords_string )
|
||||
{
|
||||
$keywords = array();
|
||||
|
||||
$candidates = explode( ',', $keywords_string );
|
||||
foreach ( $candidates as $candidate ) {
|
||||
if ( strlen($candidate) >= 3 and !preg_match( '/(\'|"|\s)/', $candidate ) )
|
||||
array_push( $keywords, $candidate );
|
||||
}
|
||||
|
||||
return array_unique( $keywords );
|
||||
}
|
||||
|
||||
function display_categories( $categories, $indent )
|
||||
{
|
||||
global $vtp,$sub;
|
||||
|
||||
foreach ( $categories as $category ) {
|
||||
$vtp->addSession( $sub, 'associate_cat' );
|
||||
$vtp->setVar( $sub, 'associate_cat.value', $category['id'] );
|
||||
$content = $indent.'- '.$category['name'];
|
||||
$vtp->setVar( $sub, 'associate_cat.content', $content );
|
||||
$vtp->closeSession( $sub, 'associate_cat' );
|
||||
display_categories( $category['subcats'], $indent.str_repeat(' ',3) );
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -19,64 +19,15 @@
|
|||
|
||||
include_once( './include/isadmin.inc.php' );
|
||||
include_once( '../template/'.$user['template'].'/htmlfunctions.inc.php' );
|
||||
//------------------------------------------------------------------- functions
|
||||
function check_date_format( $date )
|
||||
{
|
||||
// date arrives at this format : DD/MM/YYYY
|
||||
list($day,$month,$year) = explode( '/', $date );
|
||||
return checkdate ( $month, $day, $year );
|
||||
}
|
||||
|
||||
function date_convert( $date )
|
||||
{
|
||||
// date arrives at this format : DD/MM/YYYY
|
||||
// It must be transformed in YYYY-MM-DD
|
||||
list($day,$month,$year) = explode( '/', $date );
|
||||
return $year.'-'.$month.'-'.$day;
|
||||
}
|
||||
|
||||
function date_convert_back( $date )
|
||||
{
|
||||
// date arrives at this format : YYYY-MM-DD
|
||||
// It must be transformed in DD/MM/YYYY
|
||||
if ( $date != '' )
|
||||
{
|
||||
list($year,$month,$day) = explode( '-', $date );
|
||||
return $day.'/'.$month.'/'.$year;
|
||||
}
|
||||
else
|
||||
{
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
// get_keywords returns an array with relevant keywords found in the string
|
||||
// given in argument. Keywords must be separated by comma in this string.
|
||||
// keywords must :
|
||||
// - be longer or equal to 3 characters
|
||||
// - not contain ', " or blank characters
|
||||
// - unique in the string ("test,test" -> "test")
|
||||
function get_keywords( $keywords_string )
|
||||
{
|
||||
$keywords = array();
|
||||
|
||||
$candidates = explode( ',', $keywords_string );
|
||||
foreach ( $candidates as $candidate ) {
|
||||
if ( strlen($candidate) >= 3 and !preg_match( '/(\'|"|\s)/', $candidate ) )
|
||||
array_push( $keywords, $candidate );
|
||||
}
|
||||
|
||||
return array_unique( $keywords );
|
||||
}
|
||||
//-------------------------------------------------------------- initialization
|
||||
check_cat_id( $_GET['cat_id'] );
|
||||
|
||||
if ( isset( $page['cat'] ) )
|
||||
{
|
||||
//--------------------------------------------------- update individual options
|
||||
$query = 'SELECT id,file';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$page['cat'];
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= ' WHERE category_id = '.$page['cat'];
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
$i = 1;
|
||||
|
|
@ -121,53 +72,77 @@ if ( isset( $page['cat'] ) )
|
|||
$query.= 'NULL';
|
||||
else
|
||||
{
|
||||
$query.= '"';
|
||||
$query.= "'";
|
||||
foreach ( $keywords_array as $i => $keyword ) {
|
||||
if ( $i > 0 ) $query.= ',';
|
||||
$query.= $keyword;
|
||||
}
|
||||
$query.= '"';
|
||||
$query.= "'";
|
||||
}
|
||||
|
||||
$query.= ' WHERE id = '.$row['id'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
// add link to another category
|
||||
if ( $_POST['check-'.$row['id']] == 1 )
|
||||
{
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' (image_id,category_id) VALUES';
|
||||
$query.= ' ('.$row['id'].','.$_POST['associate'].')';
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
}
|
||||
update_category( $_POST['associate'] );
|
||||
//------------------------------------------------------ update general options
|
||||
if ( $_POST['use_common_author'] == 1 )
|
||||
{
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'images';
|
||||
if ( $_POST['author_cat'] == '' )
|
||||
$query = 'SELECT image_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE category_id = '.$page['cat'];
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
$query.= ' SET author = NULL';
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'images';
|
||||
if ( $_POST['author_cat'] == '' )
|
||||
{
|
||||
$query.= ' SET author = NULL';
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= ' SET author = ';
|
||||
$query.= "'".htmlentities( $_POST['author_cat'], ENT_QUOTES )."'";
|
||||
}
|
||||
$query.= ' WHERE id = '.$row['image_id'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= ' SET author = ';
|
||||
$query.= "'".htmlentities( $_POST['author_cat'], ENT_QUOTES )."'";
|
||||
}
|
||||
$query.= ' WHERE cat_id = '.$page['cat'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
if ( $_POST['use_common_date_creation'] == 1 )
|
||||
{
|
||||
if ( check_date_format( $_POST['date_creation_cat'] ) )
|
||||
{
|
||||
$date = date_convert( $_POST['date_creation_cat'] );
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'images';
|
||||
if ( $_POST['date_creation_cat'] == '' )
|
||||
$query = 'SELECT image_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE category_id = '.$page['cat'];
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
$query.= ' SET date_creation = NULL';
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'images';
|
||||
if ( $_POST['date_creation_cat'] == '' )
|
||||
{
|
||||
$query.= ' SET date_creation = NULL';
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= " SET date_creation = '".$date."'";
|
||||
}
|
||||
$query.= ' WHERE id = '.$row['image_id'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= " SET date_creation = '".$date."'";
|
||||
}
|
||||
$query.= ' WHERE cat_id = '.$page['cat'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -178,7 +153,8 @@ if ( isset( $page['cat'] ) )
|
|||
{
|
||||
$query = 'SELECT id,keywords';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$page['cat'];
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= ' WHERE category_id = '.$page['cat'];
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
|
|
@ -241,11 +217,9 @@ if ( isset( $page['cat'] ) )
|
|||
floor( $_GET['num'] / $page['nb_image_page'] ) * $page['nb_image_page'];
|
||||
}
|
||||
// retrieving category information
|
||||
$page['plain_structure'] = get_plain_structure();
|
||||
$result = get_cat_info( $page['cat'] );
|
||||
$cat['local_dir'] = $result['local_dir'];
|
||||
$cat['dir'] = $result['dir'];
|
||||
$cat['name'] = $result['name'];
|
||||
$cat['site_id'] = $result['site_id'];
|
||||
$cat['nb_images'] = $result['nb_images'];
|
||||
//----------------------------------------------------- template initialization
|
||||
$sub = $vtp->Open('../template/'.$user['template'].'/admin/infos_image.vtp');
|
||||
|
|
@ -254,8 +228,9 @@ if ( isset( $page['cat'] ) )
|
|||
'infoimage_title','infoimage_comment',
|
||||
'infoimage_creation_date','keywords',
|
||||
'infoimage_addtoall','infoimage_removefromall',
|
||||
'infoimage_keyword_separation' );
|
||||
'infoimage_keyword_separation','infoimage_associate' );
|
||||
templatize_array( $tpl, 'lang', $sub );
|
||||
$vtp->setGlobalVar( $sub, 'user_template', $user['template'] );
|
||||
//------------------------------------------------------------------------ form
|
||||
$url = './admin.php?page=infos_images&cat_id='.$page['cat'];
|
||||
$url.= '&start='.$page['start'];
|
||||
|
|
@ -266,9 +241,13 @@ if ( isset( $page['cat'] ) )
|
|||
$cat_name = get_cat_display_name( $cat['name'], ' - ', 'font-style:italic;');
|
||||
$vtp->setVar( $sub, 'cat_name', $cat_name );
|
||||
|
||||
$array_cat_directories = array();
|
||||
|
||||
$query = 'SELECT id,file,comment,author,tn_ext,name,date_creation,keywords';
|
||||
$query.= ',storage_category_id,category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$page['cat'];
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= ' WHERE category_id = '.$page['cat'];
|
||||
$query.= $conf['order_by'];
|
||||
$query.= ' LIMIT '.$page['start'].','.$page['nb_image_page'];
|
||||
$query.= ';';
|
||||
|
|
@ -287,13 +266,15 @@ if ( isset( $page['cat'] ) )
|
|||
$file = get_filename_wo_extension( $row['file'] );
|
||||
$vtp->setVar( $sub, 'picture.default_name', $file );
|
||||
// creating url to thumbnail
|
||||
if ( $cat['site_id'] == 1 )
|
||||
{
|
||||
$thumbnail_url = '../galleries/'.$cat['local_dir'].'/';
|
||||
}
|
||||
else
|
||||
if ( $array_cat_directories[$row['storage_category_id']] == '' )
|
||||
{
|
||||
$thumbnail_url = $cat['dir'];
|
||||
$array_cat_directories[$row['storage_category_id']] =
|
||||
get_complete_dir( $row['storage_category_id'] );
|
||||
}
|
||||
$thumbnail_url = $array_cat_directories[$row['storage_category_id']];
|
||||
if ( preg_match( '/^\.\/galleries/', $thumbnail_url ) )
|
||||
{
|
||||
$thumbnail_url = '.'.$thumbnail_url;
|
||||
}
|
||||
$thumbnail_url.= 'thumbnail/';
|
||||
$thumbnail_url.= $conf['prefix_thumbnail'].$file.".".$row['tn_ext'];
|
||||
|
|
@ -302,6 +283,8 @@ if ( isset( $page['cat'] ) )
|
|||
$vtp->setVar( $sub, 'picture.url', add_session_id( $url ) );
|
||||
$vtp->closeSession( $sub, 'picture' );
|
||||
}
|
||||
$structure = create_structure( '', array() );
|
||||
display_categories( $structure, ' ' );
|
||||
}
|
||||
//----------------------------------------------------------- sending html code
|
||||
$vtp->Parse( $handle , 'sub', $sub );
|
||||
|
|
|
|||
270
admin/picture_modify.php
Normal file
270
admin/picture_modify.php
Normal file
|
|
@ -0,0 +1,270 @@
|
|||
<?php
|
||||
/***************************************************************************
|
||||
* picture_modify.php *
|
||||
* ------------------ *
|
||||
* application : PhpWebGallery 1.3 <http://phpwebgallery.net> *
|
||||
* author : Pierrick LE GALL <pierrick@z0rglub.com> *
|
||||
* *
|
||||
* $Id$
|
||||
* *
|
||||
***************************************************************************/
|
||||
|
||||
/***************************************************************************
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; *
|
||||
* *
|
||||
***************************************************************************/
|
||||
|
||||
include_once( './include/isadmin.inc.php' );
|
||||
//----------------------------------------- categories structure initialization
|
||||
$page['plain_structure'] = get_plain_structure();
|
||||
//--------------------------------------------------------- update informations
|
||||
$errors = array();
|
||||
// first, we verify whether there is a mistake on the given creation date
|
||||
if ( isset( $_POST['creation_date'] ) and $_POST['creation_date'] != '' )
|
||||
{
|
||||
if ( !check_date_format( $_POST['creation_date'] ) )
|
||||
array_push( $errors, $lang['err_date'] );
|
||||
}
|
||||
if ( isset( $_POST['submit'] ) )
|
||||
{
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'images';
|
||||
|
||||
$query.= ' SET name = ';
|
||||
if ( $_POST['name'] == '' )
|
||||
$query.= 'NULL';
|
||||
else
|
||||
$query.= "'".htmlentities( $_POST['name'], ENT_QUOTES )."'";
|
||||
|
||||
$query.= ', author = ';
|
||||
if ( $_POST['author'] == '' )
|
||||
$query.= 'NULL';
|
||||
else
|
||||
$query.= "'".htmlentities($_POST['author'],ENT_QUOTES)."'";
|
||||
|
||||
$query.= ', comment = ';
|
||||
if ( $_POST['comment'] == '' )
|
||||
$query.= 'NULL';
|
||||
else
|
||||
$query.= "'".htmlentities($_POST['comment'],ENT_QUOTES)."'";
|
||||
|
||||
$query.= ', date_creation = ';
|
||||
if ( check_date_format( $_POST['creation_date'] ) )
|
||||
$query.= "'".date_convert( $_POST['creation_date'] )."'";
|
||||
else if ( $_POST['creation_date'] == '' )
|
||||
$query.= 'NULL';
|
||||
|
||||
$query.= ', keywords = ';
|
||||
$keywords_array = get_keywords( $_POST['keywords'] );
|
||||
if ( count( $keywords_array ) == 0 )
|
||||
$query.= 'NULL';
|
||||
else
|
||||
{
|
||||
$query.= "'";
|
||||
foreach ( $keywords_array as $i => $keyword ) {
|
||||
if ( $i > 0 ) $query.= ',';
|
||||
$query.= $keyword;
|
||||
}
|
||||
$query.= "'";
|
||||
}
|
||||
|
||||
$query.= ' WHERE id = '.$_GET['image_id'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
// associate with a new category ?
|
||||
if ( $_POST['associate'] != '-1' )
|
||||
{
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' (category_id,image_id) VALUES ';
|
||||
$query.= '('.$_POST['associate'].','.$_GET['image_id'].')';
|
||||
$query.= ';';
|
||||
mysql_query( $query);
|
||||
update_category( $_POST['associate'] );
|
||||
}
|
||||
// dissociate any category ?
|
||||
// retrieving all the linked categories
|
||||
$query = 'SELECT DISTINCT(category_id) as category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE image_id = '.$_GET['image_id'];
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
if ( $_POST['dissociate-'.$row['category_id']] == 1 )
|
||||
{
|
||||
$query = 'DELETE FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' WHERE image_id = '.$_GET['image_id'];
|
||||
$query.= ' AND category_id = '.$row['category_id'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
update_category( $row['category_id'] );
|
||||
}
|
||||
}
|
||||
}
|
||||
//----------------------------------------------------- template initialization
|
||||
$sub = $vtp->Open(
|
||||
'../template/'.$user['template'].'/admin/picture_modify.vtp' );
|
||||
|
||||
$tpl = array( 'submit','errors_title','picmod_update','picmod_back',
|
||||
'default','file','size','filesize','registration_date',
|
||||
'author','creation_date','keywords','comment', 'upload_name',
|
||||
'dissociate','categories','infoimage_associate',
|
||||
'cat_image_info' );
|
||||
templatize_array( $tpl, 'lang', $sub );
|
||||
$vtp->setGlobalVar( $sub, 'user_template', $user['template'] );
|
||||
//-------------------------------------------------------------- errors display
|
||||
if ( count( $errors ) != 0 )
|
||||
{
|
||||
$vtp->addSession( $sub, 'errors' );
|
||||
foreach ( $errors as $error ) {
|
||||
$vtp->addSession( $sub, 'li' );
|
||||
$vtp->setVar( $sub, 'li.content', $error );
|
||||
$vtp->closeSession( $sub, 'li' );
|
||||
}
|
||||
$vtp->closeSession( $sub, 'errors' );
|
||||
}
|
||||
//-------------------------------------------- displaying informations and form
|
||||
$action = './admin.php?'.$_SERVER['QUERY_STRING'];
|
||||
$vtp->setVar( $sub, 'form_action', $action );
|
||||
// retrieving direct information about picture
|
||||
$query = 'SELECT file,date_available,date_creation,tn_ext,name,filesize';
|
||||
$query.= ',width,height,author,comment,keywords,storage_category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE id = '.$_GET['image_id'];
|
||||
$query.= ';';
|
||||
$row = mysql_fetch_array( mysql_query( $query ) );
|
||||
// picture title
|
||||
if ( $row['name'] == '' )
|
||||
{
|
||||
$title = str_replace( '_',' ',get_filename_wo_extension($row['file']) );
|
||||
}
|
||||
else
|
||||
{
|
||||
$title = $row['name'];
|
||||
}
|
||||
$vtp->setVar( $sub, 'title', $title );
|
||||
$vtp->setVar( $sub, 'f_file', $row['file'] );
|
||||
$vtp->setVar( $sub, 'f_size', $row['width'].' * '.$row['height'] );
|
||||
$vtp->setVar( $sub, 'f_filesize', $row['filesize'].' KB' );
|
||||
$vtp->setVar( $sub, 'f_registration_date',format_date($row['date_available']));
|
||||
$default_name = str_replace( '_',' ',get_filename_wo_extension($row['file']) );
|
||||
$vtp->setVar( $sub, 'default_name', $default_name );
|
||||
// if this form is displayed after an unsucceeded submit, we have to display
|
||||
// the values filled by the user (wright or wrong).
|
||||
if ( count( $errors ) > 0 )
|
||||
{
|
||||
$name = $_POST['name'];
|
||||
$author = $_POST['author'];
|
||||
$creation_date = $_POST['creation_date'];
|
||||
$keywords = $_POST['keywords'];
|
||||
$comment = $_POST['comment'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$name = $row['name'];
|
||||
$author = $row['author'];
|
||||
$creation_date = date_convert_back( $row['date_creation'] );
|
||||
$keywords = $row['keywords'];
|
||||
$comment = $row['comment'];
|
||||
}
|
||||
$vtp->setVar( $sub, 'f_name', $name );
|
||||
$vtp->setVar( $sub, 'f_author', $author );
|
||||
$vtp->setVar( $sub, 'f_creation_date', $creation_date );
|
||||
$vtp->setVar( $sub, 'f_keywords', $keywords );
|
||||
$vtp->setVar( $sub, 'f_comment', $comment );
|
||||
// retrieving directory where picture is stored (for displaying the
|
||||
// thumbnail)
|
||||
$thumbnail_url = get_complete_dir( $row['storage_category_id'] );
|
||||
$result = get_cat_info( $row['storage_category_id'] );
|
||||
$cat_name = get_cat_display_name( $result['name'], ' > ', '' );
|
||||
$vtp->setVar( $sub, 'dir', $cat_name );
|
||||
if ( $result['site_id'] == 1 ) $thumbnail_url = '.'.$thumbnail_url;
|
||||
$file_wo_ext = get_filename_wo_extension( $row['file'] );
|
||||
$thumbnail_url.= '/thumbnail/';
|
||||
$thumbnail_url.= $conf['prefix_thumbnail'].$file_wo_ext.'.'.$row['tn_ext'];
|
||||
$vtp->setVar( $sub, 'thumbnail_url', $thumbnail_url );
|
||||
// storage category is linked by default
|
||||
$vtp->addSession( $sub, 'linked_category' );
|
||||
$vtp->setVar( $sub, 'linked_category.name', $cat_name );
|
||||
$url = '../picture.php?image_id='.$_GET['image_id'];
|
||||
$url.= '&cat='.$row['storage_category_id'];
|
||||
$vtp->setVar( $sub, 'linked_category.url',add_session_id( $url));
|
||||
$url = './admin.php?page=infos_images&cat_id='.$row['storage_category_id'];
|
||||
$vtp->setVar( $sub, 'linked_category.infos_images_link',add_session_id( $url));
|
||||
if ( $result['status'] == 'private' )
|
||||
{
|
||||
$private_string = '<span style="color:red;font-weight:bold;">';
|
||||
$private_string.= $lang['private'].'</span>';
|
||||
$vtp->setVar( $sub, 'linked_category.private', $private_string );
|
||||
}
|
||||
if ( !$result['visible'] )
|
||||
{
|
||||
$invisible_string = '<span style="color:red;">';
|
||||
$invisible_string.= $lang['cat_invisible'].'</span>';
|
||||
$vtp->setVar( $sub, 'linked_category.invisible', $invisible_string );
|
||||
}
|
||||
$vtp->closeSession( $sub, 'linked_category' );
|
||||
// retrieving all the linked categories
|
||||
$query = 'SELECT DISTINCT(category_id) as category_id,status,visible';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'image_category';
|
||||
$query.= ','.PREFIX_TABLE.'categories';
|
||||
$query.= ' WHERE image_id = '.$_GET['image_id'];
|
||||
$query.= ' AND category_id != '.$row['storage_category_id'];
|
||||
$query.= ' AND category_id = id';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
$vtp->addSession( $sub, 'linked_category' );
|
||||
|
||||
$vtp->addSession( $sub, 'checkbox' );
|
||||
$vtp->setVar( $sub, 'checkbox.id', $row['category_id'] );
|
||||
$vtp->closeSession( $sub, 'checkbox' );
|
||||
|
||||
$cat_infos = get_cat_info( $row['category_id'] );
|
||||
$cat_name = get_cat_display_name( $cat_infos['name'], ' > ', '' );
|
||||
$vtp->setVar( $sub, 'linked_category.name', $cat_name );
|
||||
|
||||
$url = '../picture.php?image_id='.$_GET['image_id'];
|
||||
$url.= '&cat='.$row['category_id'];
|
||||
$vtp->setVar( $sub, 'linked_category.url',add_session_id( $url));
|
||||
|
||||
$url = './admin.php?page=infos_images&cat_id='.$row['category_id'];
|
||||
$vtp->setVar( $sub, 'linked_category.infos_images_link',
|
||||
add_session_id( $url));
|
||||
|
||||
if ( $row['status'] == 'private' )
|
||||
{
|
||||
$private_string = '<span style="color:red;font-weight:bold;">';
|
||||
$private_string.= $lang['private'].'</span>';
|
||||
$vtp->setVar( $sub, 'linked_category.private', $private_string );
|
||||
}
|
||||
|
||||
if ( !get_boolean( $row['visible'] ) )
|
||||
{
|
||||
$invisible_string = '<span style="color:red;">';
|
||||
$invisible_string.= $lang['cat_invisible'].'</span>';
|
||||
$vtp->setVar( $sub, 'linked_category.invisible', $invisible_string );
|
||||
}
|
||||
|
||||
$vtp->closeSession( $sub, 'linked_category' );
|
||||
}
|
||||
// if there are linked category other than the storage category, we show
|
||||
// propose the dissociate text
|
||||
if ( mysql_num_rows( $result ) > 0 )
|
||||
{
|
||||
$vtp->addSession( $sub, 'dissociate' );
|
||||
$vtp->closeSession( $sub, 'dissociate' );
|
||||
}
|
||||
// associate to another category ?
|
||||
$vtp->addSession( $sub, 'associate_cat' );
|
||||
$vtp->setVar( $sub, 'associate_cat.value', '-1' );
|
||||
$vtp->setVar( $sub, 'associate_cat.content', '' );
|
||||
$vtp->closeSession( $sub, 'associate_cat' );
|
||||
$structure = create_structure( '', array() );
|
||||
display_categories( $structure, ' ' );
|
||||
//----------------------------------------------------------- sending html code
|
||||
$vtp->Parse( $handle , 'sub', $sub );
|
||||
?>
|
||||
167
admin/update.php
167
admin/update.php
|
|
@ -30,24 +30,24 @@ function insert_local_category( $cat_id )
|
|||
|
||||
if ( is_numeric( $cat_id ) )
|
||||
{
|
||||
$cat_directory.= '/'.get_local_dir( $cat_id );
|
||||
$result = get_cat_info( $cat_id );
|
||||
$cat_directory.= '/'.$result['local_dir'];
|
||||
// 1. display the category name to update
|
||||
$src = '../template/'.$user['template'].'/admin/images/puce.gif';
|
||||
$output = '<img src="'.$src.'" alt=">" />';
|
||||
$output.= '<span style="font-weight:bold;">'.$result['name'][0].'</span>';
|
||||
$output.= ' [ '.$result['last_dir'].' ]';
|
||||
$output.= ' [ '.$result['dir'].' ]';
|
||||
$output.= '<div class="retrait">';
|
||||
|
||||
|
||||
// 2. we search pictures of the category only if the update is for all
|
||||
// or a cat_id is specified
|
||||
if ( isset( $page['cat'] ) or $_GET['update'] == 'all' )
|
||||
{
|
||||
$output.= insert_local_image( $cat_directory, $cat_id );
|
||||
update_cat_info( $cat_id );
|
||||
update_category( $cat_id );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 3. we have to remove the categories of the database not present anymore
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'categories';
|
||||
|
|
@ -65,17 +65,10 @@ function insert_local_category( $cat_id )
|
|||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
// retrieving the directory
|
||||
$rep = '../galleries';
|
||||
$resultat = get_cat_info( $row['id'] );
|
||||
$rep.= '/'.$resultat['local_dir'];
|
||||
|
||||
$rep = '../galleries/'.get_local_dir( $row['id'] );
|
||||
// is the directory present ?
|
||||
if ( !is_dir( $rep ) )
|
||||
{
|
||||
delete_category( $row['id'] );
|
||||
}
|
||||
if ( !is_dir( $rep ) ) delete_category( $row['id'] );
|
||||
}
|
||||
|
||||
// 4. retrieving the sub-directories
|
||||
$sub_rep = array();
|
||||
$i = 0;
|
||||
|
|
@ -93,7 +86,6 @@ function insert_local_category( $cat_id )
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
for ( $i = 0; $i < sizeof( $sub_rep ); $i++ )
|
||||
{
|
||||
// 5. Is the category already existing ? we create a subcat if not
|
||||
|
|
@ -119,14 +111,8 @@ function insert_local_category( $cat_id )
|
|||
$query = 'INSERT INTO '.PREFIX_TABLE.'categories';
|
||||
$query.= ' (dir,site_id,id_uppercat) VALUES';
|
||||
$query.= " ('".$sub_rep[$i]."','".$site_id."'";
|
||||
if ( !is_numeric( $cat_id ) )
|
||||
{
|
||||
$query.= ',NULL';
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= ",'".$cat_id."'";
|
||||
}
|
||||
if ( !is_numeric( $cat_id ) ) $query.= ',NULL';
|
||||
else $query.= ",'".$cat_id."'";
|
||||
$query.= ');';
|
||||
mysql_query( $query );
|
||||
$category_id = mysql_insert_id();
|
||||
|
|
@ -158,7 +144,7 @@ function insert_local_image( $rep, $category_id )
|
|||
// - don't have the associated thumbnail available anymore
|
||||
$query = 'SELECT id,file,tn_ext';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$category_id;
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
|
|
@ -199,7 +185,7 @@ function insert_local_image( $rep, $category_id )
|
|||
// is the picture waiting for validation by an administrator ?
|
||||
$query = 'SELECT id,validated,infos';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'waiting';
|
||||
$query.= ' WHERE cat_id = '.$category_id;
|
||||
$query.= ' WHERE category_id = '.$category_id;
|
||||
$query.= " AND file = '".$file."'";
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
|
|
@ -211,7 +197,7 @@ function insert_local_image( $rep, $category_id )
|
|||
// is the picture already in the database ?
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$category_id;
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= " AND file = '".$file."'";
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
|
|
@ -266,7 +252,8 @@ function insert_local_image( $rep, $category_id )
|
|||
// inserting the pictures found in the directory
|
||||
foreach ( $pictures as $picture ) {
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'images';
|
||||
$query.= ' (file,cat_id,date_available,tn_ext,filesize,width,height';
|
||||
$query.= ' (file,storage_category_id,date_available,tn_ext';
|
||||
$query.= ',filesize,width,height';
|
||||
$query.= ',name,author,comment,date_creation)';
|
||||
$query.= ' VALUES ';
|
||||
$query.= "('".$picture['file']."','".$category_id."'";
|
||||
|
|
@ -285,7 +272,20 @@ function insert_local_image( $rep, $category_id )
|
|||
$query.= ');';
|
||||
mysql_query( $query );
|
||||
$count_new++;
|
||||
|
||||
// retrieving the id of newly inserted picture
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= " AND file = '".$picture['file']."'";
|
||||
$query.= ';';
|
||||
list( $image_id ) = mysql_fetch_array( mysql_query( $query ) );
|
||||
// adding the link between this picture and its storage category
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' (image_id,category_id) VALUES ';
|
||||
$query.= ' ('.$image_id.','.$category_id.')';
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
|
||||
$output.= $picture['file'];
|
||||
$output.= ' <span style="font-weight:bold;">';
|
||||
$output.= $lang['update_research_added'].'</span>';
|
||||
|
|
@ -294,35 +294,6 @@ function insert_local_image( $rep, $category_id )
|
|||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
// The function "update_cat_info" updates the information about the last
|
||||
// online image and the number of images in the category
|
||||
function update_cat_info( $category_id )
|
||||
{
|
||||
$query = 'SELECT date_available';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$category_id;
|
||||
$query.= ' ORDER BY date_available DESC';
|
||||
$query.= ' LIMIT 0,1';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
$row = mysql_fetch_array( $result );
|
||||
$date_last = $row['date_available'];
|
||||
|
||||
$query = 'SELECT COUNT(*) as nb_images';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$category_id;
|
||||
$result = mysql_query( $query );
|
||||
$row = mysql_fetch_array( $result );
|
||||
$nb_images = $row['nb_images'];
|
||||
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'categories';
|
||||
$query.= " SET date_last = '".$date_last."'";
|
||||
$query.= ', nb_images = '.$nb_images;
|
||||
$query.= ' where id = '.$category_id;
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
|
||||
// remote_images verifies if a file named "listing.xml" is present is the
|
||||
// admin directory. If it is the case, creation of a remote picture storage
|
||||
|
|
@ -341,16 +312,16 @@ function remote_images()
|
|||
$vtp->setVar( $sub, 'remote_update.url', $url );
|
||||
|
||||
// 2. is the site already existing ?
|
||||
$query = 'select id';
|
||||
$query.= ' from '.PREFIX_TABLE.'sites';
|
||||
$query.= " where galleries_url = '".$url."'";
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'sites';
|
||||
$query.= " WHERE galleries_url = '".$url."'";
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
if ( mysql_num_rows($result ) == 0 )
|
||||
{
|
||||
// we have to register this site in the database
|
||||
$query = 'insert into '.PREFIX_TABLE.'sites';
|
||||
$query.= " (galleries_url) values ('".$url."')";
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'sites';
|
||||
$query.= " (galleries_url) VALUES ('".$url."')";
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
$site_id = mysql_insert_id();
|
||||
|
|
@ -390,25 +361,25 @@ function insert_remote_category( $xml_dir, $site_id, $id_uppercat, $level )
|
|||
$output.= '<span style="font-weight:bold;">'.$name.'</span>';
|
||||
$output.= '<div class="retrait">';
|
||||
|
||||
$query = 'select id';
|
||||
$query.= ' from '.PREFIX_TABLE.'categories';
|
||||
$query.= ' where site_id = '.$site_id;
|
||||
$query.= " and dir = '".$name."'";
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'categories';
|
||||
$query.= ' WHERE site_id = '.$site_id;
|
||||
$query.= " AND dir = '".$name."'";
|
||||
if ( $id_uppercat == 'NULL' )
|
||||
{
|
||||
$query.= ' and id_uppercat is NULL';
|
||||
$query.= ' AND id_uppercat IS NULL';
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= ' and id_uppercat = '.$id_uppercat;
|
||||
$query.= ' AND id_uppercat = '.$id_uppercat;
|
||||
}
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
if ( mysql_num_rows( $result ) == 0 )
|
||||
{
|
||||
// we have to create the category
|
||||
$query = 'insert into '.PREFIX_TABLE.'categories';
|
||||
$query.= " (dir,site_id,id_uppercat) values ('".$name."',".$site_id;
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'categories';
|
||||
$query.= " (dir,site_id,id_uppercat) VALUES ('".$name."',".$site_id;
|
||||
if ( !is_numeric( $id_uppercat ) )
|
||||
{
|
||||
$query.= ',NULL';
|
||||
|
|
@ -428,23 +399,23 @@ function insert_remote_category( $xml_dir, $site_id, $id_uppercat, $level )
|
|||
$category_id = $row['id'];
|
||||
}
|
||||
$output.= insert_remote_image( $list_dirs[$i], $category_id );
|
||||
update_cat_info( $category_id );
|
||||
update_category( $category_id );
|
||||
$output.= insert_remote_category( $list_dirs[$i], $site_id,
|
||||
$category_id, $level+1 );
|
||||
$output.= '</div>';
|
||||
}
|
||||
// we have to remove the categories of the database not present in the xml
|
||||
// file (ie deleted from the picture storage server)
|
||||
$query = 'select dir,id';
|
||||
$query.= ' from '.PREFIX_TABLE.'categories';
|
||||
$query.= ' where site_id = '.$site_id;
|
||||
$query = 'SELECT dir,id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'categories';
|
||||
$query.= ' WHERE site_id = '.$site_id;
|
||||
if ( !is_numeric( $id_uppercat ) )
|
||||
{
|
||||
$query.= ' and id_uppercat is NULL';
|
||||
$query.= ' AND id_uppercat IS NULL';
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= ' and id_uppercat = '.$id_uppercat;
|
||||
$query.= ' AND id_uppercat = '.$id_uppercat;
|
||||
}
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
|
|
@ -484,18 +455,19 @@ function insert_remote_image( $xml_dir, $category_id )
|
|||
$pictures[$j] = $file;
|
||||
|
||||
// is the picture already existing in the database ?
|
||||
$query = 'select id,tn_ext';
|
||||
$query.= ' from '.PREFIX_TABLE.'images';
|
||||
$query.= ' where cat_id = '.$category_id;
|
||||
$query.= " and file = '".$file."'";
|
||||
$query = 'SELECT id,tn_ext';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= " AND file = '".$file."'";
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
$query = '';
|
||||
if ( mysql_num_rows( $result ) == 0 )
|
||||
{
|
||||
$query = 'insert into '.PREFIX_TABLE.'images';
|
||||
$query.= ' (file,cat_id,date_available,tn_ext,filesize,width,height)';
|
||||
$query.= ' values (';
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'images';
|
||||
$query.= ' (file,storage_category_id,date_available,tn_ext';
|
||||
$query.= ',filesize,width,height)';
|
||||
$query.= ' VALUES (';
|
||||
$query.= "'".$file."'";
|
||||
$query.= ",'".$category_id."'";
|
||||
$query.= ",'".$date."'";
|
||||
|
|
@ -505,6 +477,19 @@ function insert_remote_image( $xml_dir, $category_id )
|
|||
$query.= ",'".$height."'";
|
||||
$query.= ')';
|
||||
$query.= ';';
|
||||
// retrieving the id of newly inserted picture
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= " AND file = '".$file."'";
|
||||
$query.= ';';
|
||||
list( $image_id ) = mysql_fetch_array( mysql_query( $query ) );
|
||||
// adding the link between this picture and its storage category
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'image_category';
|
||||
$query.= ' (image_id,category_id) VALUES ';
|
||||
$query.= ' ('.$image_id.','.$category_id.')';
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
|
||||
$output.= $file;
|
||||
$output.= ' <span style="font-weight:bold;">';
|
||||
|
|
@ -519,11 +504,11 @@ function insert_remote_image( $xml_dir, $category_id )
|
|||
$row = mysql_fetch_array( $result );
|
||||
if ( $row['tn_ext'] != $tn_ext )
|
||||
{
|
||||
$query = 'update '.PREFIX_TABLE.'images';
|
||||
$query.= ' set';
|
||||
$query = 'UPDATE '.PREFIX_TABLE.'images';
|
||||
$query.= ' SET';
|
||||
$query.= " tn_ext = '".$tn_ext."'";
|
||||
$query.= ' where cat_id = '.$category_id;
|
||||
$query.= " and file = '".$file."'";
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= " AND file = '".$file."'";
|
||||
$query.= ';';
|
||||
}
|
||||
}
|
||||
|
|
@ -535,9 +520,9 @@ function insert_remote_image( $xml_dir, $category_id )
|
|||
}
|
||||
// we have to remove the pictures of the database not present in the xml file
|
||||
// (ie deleted from the picture storage server)
|
||||
$query = 'select id,file';
|
||||
$query.= ' from '.PREFIX_TABLE.'images';
|
||||
$query.= ' where cat_id = '.$category_id;
|
||||
$query = 'SELECT id,file';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE storage_category_id = '.$category_id;
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
|
|
@ -557,6 +542,8 @@ $tpl = array( 'update_default_title', 'update_only_cat', 'update_all',
|
|||
'remote_site', 'update_part_research' );
|
||||
templatize_array( $tpl, 'lang', $sub );
|
||||
$vtp->setGlobalVar( $sub, 'user_template', $user['template'] );
|
||||
//-------------------------------------------------------- categories structure
|
||||
$page['plain_structure'] = get_plain_structure();
|
||||
//-------------------------------------------- introduction : choices of update
|
||||
// Display choice if "update" var is not specified
|
||||
check_cat_id( $_GET['update'] );
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ include_once( './include/isadmin.inc.php' );
|
|||
//--------------------------------------------------------------------- updates
|
||||
if ( isset( $_POST['submit'] ) )
|
||||
{
|
||||
$query = 'SELECT id,cat_id,file,tn_ext';
|
||||
$query = 'SELECT id,storage_category_id,file,tn_ext';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'waiting';
|
||||
$query.= " WHERE validated = 'false'";
|
||||
$query.= ';';
|
||||
|
|
@ -39,6 +39,8 @@ if ( isset( $_POST['submit'] ) )
|
|||
$query.= ' WHERE id = '.$row['id'];
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
// linking logically the picture to its storage category
|
||||
$query = 'INSERT INTO';
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -49,14 +51,14 @@ if ( isset( $_POST['submit'] ) )
|
|||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
// deletion of the associated files
|
||||
$cat = get_cat_info( $row['cat_id'] );
|
||||
unlink( '.'.$cat['dir'].$row['file'] );
|
||||
$dir = get_complete_dir( $row['storage_category_id'] );
|
||||
unlink( '.'.$dir.$row['file'] );
|
||||
if ( $row['tn_ext'] != '' )
|
||||
{
|
||||
$thumbnail = $conf['prefix_thumbnail'];
|
||||
$thumbnail.= get_filename_wo_extension( $row['file'] );
|
||||
$thumbnail.= '.'.$row['tn_ext'];
|
||||
$url = '.'.$cat['dir'].'thumbnail/'.$thumbnail;
|
||||
$url = '.'.$dir.'thumbnail/'.$thumbnail;
|
||||
unlink( $url );
|
||||
}
|
||||
}
|
||||
|
|
@ -70,10 +72,11 @@ $tpl = array( 'category','date','author','thumbnail','file','delete',
|
|||
templatize_array( $tpl, 'lang', $sub );
|
||||
//---------------------------------------------------------------- form display
|
||||
$cat_names = array();
|
||||
$query = 'SELECT id,cat_id,file,username,mail_address,date,tn_ext';
|
||||
$query = 'SELECT id,storage_category_id,file,username,mail_address';
|
||||
$query.= ',date,tn_ext';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'waiting';
|
||||
$query.= " WHERE validated = 'false'";
|
||||
$query.= ' ORDER BY cat_id';
|
||||
$query.= ' ORDER BY storage_category_id';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
$i = 0;
|
||||
|
|
@ -85,26 +88,24 @@ while ( $row = mysql_fetch_array( $result ) )
|
|||
{
|
||||
$vtp->setVar( $sub, 'picture.class', 'row2' );
|
||||
}
|
||||
if ( !isset( $cat_names[$row['cat_id']] ) )
|
||||
if ( !isset( $cat_names[$row['storage_category_id']] ) )
|
||||
{
|
||||
$cat = get_cat_info( $row['cat_id'] );
|
||||
$cat_names[$row['cat_id']] = array();
|
||||
$cat_names[$row['cat_id']]['dir'] = '.'.$cat['dir'];
|
||||
$cat_names[$row['cat_id']]['display_name'] =
|
||||
$cat = get_cat_info( $row['storage_category_id'] );
|
||||
$cat_names[$row['storage_category_id']] = array();
|
||||
$cat_names[$row['storage_category_id']]['dir'] =
|
||||
'.'.get_complete_dir( $row['storage_category_id'] );
|
||||
$cat_names[$row['storage_category_id']]['display_name'] =
|
||||
get_cat_display_name( $cat['name'], ' > ', 'font-weight:bold;' );
|
||||
}
|
||||
// category name
|
||||
$vtp->setVar( $sub, 'picture.cat_name',
|
||||
$cat_names[$row['cat_id']]['display_name'] );
|
||||
$cat_names[$row['storage_category_id']]['display_name'] );
|
||||
// date displayed like this (in English ) :
|
||||
// Sunday 15 June 2003 21:29
|
||||
$date = $lang['day'][date( 'w', $row['date'] )]; // Sunday
|
||||
$date.= date( ' j ', $row['date'] ); // 15
|
||||
$date.= $lang['month'][date( 'n', $row['date'] )]; // June
|
||||
$date.= date( ' Y G:i', $row['date'] ); // 2003 21:29
|
||||
$date = format_date( $row['date'], 'unix', true );
|
||||
$vtp->setVar( $sub, 'picture.date', $date );
|
||||
// file preview link
|
||||
$url = $cat_names[$row['cat_id']]['dir'].$row['file'];
|
||||
$url = $cat_names[$row['storage_category_id']]['dir'].$row['file'];
|
||||
$vtp->setVar( $sub, 'picture.preview_url', $url );
|
||||
// file name
|
||||
$vtp->setVar( $sub, 'picture.file', $row['file'] );
|
||||
|
|
@ -115,7 +116,8 @@ while ( $row = mysql_fetch_array( $result ) )
|
|||
$thumbnail = $conf['prefix_thumbnail'];
|
||||
$thumbnail.= get_filename_wo_extension( $row['file'] );
|
||||
$thumbnail.= '.'.$row['tn_ext'];
|
||||
$url = $cat_names[$row['cat_id']]['dir'].'thumbnail/'.$thumbnail;
|
||||
$url = $cat_names[$row['storage_category_id']]['dir'];
|
||||
$url.= 'thumbnail/'.$thumbnail;
|
||||
$vtp->setVar( $sub, 'thumbnail.preview_url', $url );
|
||||
$vtp->setVar( $sub, 'thumbnail.file', $thumbnail );
|
||||
$vtp->closeSession( $sub, 'thumbnail' );
|
||||
|
|
|
|||
49
category.php
49
category.php
|
|
@ -231,22 +231,16 @@ else
|
|||
//------------------------------------------------------------------ thumbnails
|
||||
if ( isset( $page['cat'] ) and $page['cat_nb_images'] != 0 )
|
||||
{
|
||||
if ( is_numeric( $page['cat'] ) )
|
||||
{
|
||||
$cat_directory = $page['cat_dir'];
|
||||
}
|
||||
else if ( $page['cat'] == 'search' or $page['cat'] == 'fav' )
|
||||
{
|
||||
$array_cat_directories = array();
|
||||
}
|
||||
$array_cat_directories = array();
|
||||
|
||||
$query = 'SELECT id,file,date_available,tn_ext,name,filesize,cat_id';
|
||||
$query = 'SELECT id,file,date_available,tn_ext,name,filesize';
|
||||
$query.= ',storage_category_id,category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= $page['where'];
|
||||
$query.= $conf['order_by'];
|
||||
$query.= ' LIMIT '.$page['start'].','.$page['nb_image_page'];
|
||||
$query.= ';';
|
||||
echo $query;
|
||||
$result = mysql_query( $query );
|
||||
|
||||
$vtp->addSession( $handle, 'thumbnails' );
|
||||
|
|
@ -257,25 +251,18 @@ if ( isset( $page['cat'] ) and $page['cat_nb_images'] != 0 )
|
|||
$line_number = 1;
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
if ( !is_numeric( $page['cat'] ) )
|
||||
if ( $array_cat_directories[$row['storage_category_id']] == '' )
|
||||
{
|
||||
if ( $array_cat_directories[$row['cat_id']] == '' )
|
||||
{
|
||||
$cat_result = get_cat_info( $row['cat_id'] );
|
||||
$array_cat_directories[$row['cat_id']] = $cat_result['dir'];
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$row['cat_id']];
|
||||
$array_cat_directories[$row['storage_category_id']] =
|
||||
get_complete_dir( $row['storage_category_id'] );
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$row['storage_category_id']];
|
||||
|
||||
$file = get_filename_wo_extension( $row['file'] );
|
||||
// name of the picture
|
||||
if ( $row['name'] != '' )
|
||||
{
|
||||
$name = $row['name'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$name = str_replace( '_', ' ', $file );
|
||||
}
|
||||
if ( $row['name'] != '' ) $name = $row['name'];
|
||||
else $name = str_replace( '_', ' ', $file );
|
||||
|
||||
if ( $page['cat'] == 'search' )
|
||||
{
|
||||
$name = replace_search( $name, $_GET['search'] );
|
||||
|
|
@ -358,16 +345,16 @@ elseif ( ( isset( $page['cat'] )
|
|||
$cell_number = 1;
|
||||
$i = 0;
|
||||
foreach ( $subcats as $subcat_id => $non_empty_id ) {
|
||||
$subcat_infos = get_cat_info( $subcat_id );
|
||||
$non_empty_infos = get_cat_info( $non_empty_id );
|
||||
$subcat_infos = get_cat_info( $subcat_id );
|
||||
|
||||
$name ='[ <span style="font-weight:bold;">';
|
||||
$name.= $subcat_infos['name'][0];
|
||||
$name.= '</span> ]';
|
||||
|
||||
$query = 'SELECT file,tn_ext';
|
||||
|
||||
$query = 'SELECT file,tn_ext,storage_category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' WHERE cat_id = '.$non_empty_id;
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= ' WHERE category_id = '.$non_empty_id;
|
||||
$query.= ' ORDER BY RAND()';
|
||||
$query.= ' LIMIT 0,1';
|
||||
$query.= ';';
|
||||
|
|
@ -377,7 +364,7 @@ elseif ( ( isset( $page['cat'] )
|
|||
$file = get_filename_wo_extension( $image_row['file'] );
|
||||
|
||||
// creating links for thumbnail and associated category
|
||||
$thumbnail_link = $non_empty_infos['dir'];
|
||||
$thumbnail_link = get_complete_dir( $image_row['storage_category_id'] );
|
||||
$thumbnail_link.= 'thumbnail/'.$conf['prefix_thumbnail'];
|
||||
$thumbnail_link.= $file.'.'.$image_row['tn_ext'];
|
||||
|
||||
|
|
|
|||
|
|
@ -349,4 +349,30 @@ function templatize_array( $array, $global_array_name, $handle )
|
|||
$vtp->setGlobalVar( $handle, $value, ${$global_array_name}[$value] );
|
||||
}
|
||||
}
|
||||
|
||||
function format_date( $date, $type = 'us', $show_time = false )
|
||||
{
|
||||
global $lang;
|
||||
|
||||
switch ( $type )
|
||||
{
|
||||
case 'us' :
|
||||
list( $year,$month,$day ) = explode( '-', $date );
|
||||
$unixdate = mktime(0,0,0,$month,$day,$year);
|
||||
break;
|
||||
case 'unix' :
|
||||
$unixdate = $date;
|
||||
break;
|
||||
}
|
||||
$formated_date = $lang['day'][date( "w", $unixdate )];
|
||||
$formated_date.= date( " j ", $unixdate );
|
||||
$formated_date.= $lang['month'][date( "n", $unixdate )];
|
||||
$formated_date.= date( ' Y', $unixdate );
|
||||
if ( $show_time )
|
||||
{
|
||||
$formated_date.= date( ' G:i', $unixdate );
|
||||
}
|
||||
|
||||
return $formated_date;
|
||||
}
|
||||
?>
|
||||
|
|
@ -94,7 +94,7 @@ function check_cat_id( $cat )
|
|||
function get_plain_structure()
|
||||
{
|
||||
$infos = array( 'name','id','date_last','nb_images','dir','id_uppercat',
|
||||
'rank');
|
||||
'rank','site_id');
|
||||
|
||||
$query = 'SELECT ';
|
||||
foreach ( $infos as $i => $info ) {
|
||||
|
|
@ -270,7 +270,7 @@ function count_images( $categories )
|
|||
// variables :
|
||||
// $cat['comment']
|
||||
// $cat['dir']
|
||||
// $cat['last_dir']
|
||||
// $cat['dir']
|
||||
// $cat['name'] is an array :
|
||||
// - $cat['name'][0] is the lowest cat name
|
||||
// and
|
||||
|
|
@ -280,11 +280,12 @@ function count_images( $categories )
|
|||
// $cat['site_id']
|
||||
function get_cat_info( $id )
|
||||
{
|
||||
global $page;
|
||||
|
||||
$cat = array();
|
||||
$cat['name'] = array();
|
||||
|
||||
$query = 'SELECT nb_images,id_uppercat,comment,site_id,galleries_url,dir';
|
||||
$query.= ',date_last,uploadable';
|
||||
$query.= ',date_last,uploadable,status,visible';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'categories AS a';
|
||||
$query.= ', '.PREFIX_TABLE.'sites AS b';
|
||||
$query.= ' WHERE a.id = '.$id;
|
||||
|
|
@ -294,42 +295,64 @@ function get_cat_info( $id )
|
|||
$cat['id_uppercat'] = $row['id_uppercat'];
|
||||
$cat['comment'] = nl2br( $row['comment'] );
|
||||
$cat['nb_images'] = $row['nb_images'];
|
||||
$cat['last_dir'] = $row['dir'];
|
||||
$cat['dir'] = $row['dir'];
|
||||
$cat['date_last'] = $row['date_last'];
|
||||
$cat['uploadable'] = get_boolean( $row['uploadable'] );
|
||||
$galleries_url = $row['galleries_url'];
|
||||
$cat['status'] = $row['status'];
|
||||
$cat['visible'] = get_boolean( $row['visible'] );
|
||||
|
||||
$cat['dir'] = "";
|
||||
$i = 0;
|
||||
$is_root = false;
|
||||
$row['id_uppercat'] = $id;
|
||||
while ( !$is_root )
|
||||
$cat['name'] = array();
|
||||
array_push( $cat['name'], $page['plain_structure'][$id]['name'] );
|
||||
while ( $page['plain_structure'][$id]['id_uppercat'] != '' )
|
||||
{
|
||||
$query = 'SELECT name,dir,id_uppercat';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'categories';
|
||||
$query.= ' WHERE id = '.$row['id_uppercat'].';';
|
||||
$row = mysql_fetch_array( mysql_query( $query ) );
|
||||
$cat['dir'] = $row['dir'].'/'.$cat['dir'];
|
||||
if ( $row['name'] == "" )
|
||||
{
|
||||
$cat['name'][$i] = str_replace( "_", " ", $row['dir'] );
|
||||
}
|
||||
else
|
||||
{
|
||||
$cat['name'][$i] = $row['name'];
|
||||
}
|
||||
if ( $row['id_uppercat'] == "" )
|
||||
{
|
||||
$is_root = true;
|
||||
}
|
||||
$i++;
|
||||
$id = $page['plain_structure'][$id]['id_uppercat'];
|
||||
array_push( $cat['name'], $page['plain_structure'][$id]['name'] );
|
||||
}
|
||||
$cat['local_dir'] = substr( $cat['dir'], 0 , strlen( $cat['dir'] ) - 1 );
|
||||
$cat['dir'] = $galleries_url.$cat['dir'];
|
||||
|
||||
return $cat;
|
||||
}
|
||||
|
||||
|
||||
// get_complete_dir returns the concatenation of get_site_url and
|
||||
// get_local_dir
|
||||
// Example : "pets > rex > 1_year_old" is on the the same site as the
|
||||
// PhpWebGallery files and this category has 22 for identifier
|
||||
// get_complete_dir(22) returns "./galleries/pets/rex/1_year_old/"
|
||||
function get_complete_dir( $category_id )
|
||||
{
|
||||
return get_site_url( $category_id ).get_local_dir( $category_id );
|
||||
}
|
||||
|
||||
// get_local_dir returns an array with complete path without the site url
|
||||
// Example : "pets > rex > 1_year_old" is on the the same site as the
|
||||
// PhpWebGallery files and this category has 22 for identifier
|
||||
// get_local_dir(22) returns "pets/rex/1_year_old/"
|
||||
function get_local_dir( $category_id )
|
||||
{
|
||||
global $page;
|
||||
|
||||
// creating the local path : "root_cat/sub_cat/sub_sub_cat/"
|
||||
$dir = $page['plain_structure'][$category_id]['dir'].'/';
|
||||
while ( $page['plain_structure'][$category_id]['id_uppercat'] != '' )
|
||||
{
|
||||
$category_id = $page['plain_structure'][$category_id]['id_uppercat'];
|
||||
$dir = $page['plain_structure'][$category_id]['dir'].'/'.$dir;
|
||||
}
|
||||
return $dir;
|
||||
}
|
||||
|
||||
// retrieving the site url : "http://domain.com/gallery/" or
|
||||
// simply "./galleries/"
|
||||
function get_site_url( $category_id )
|
||||
{
|
||||
global $page;
|
||||
|
||||
$query = 'SELECT galleries_url';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'sites';
|
||||
$query.= ' WHERE id = '.$page['plain_structure'][$category_id]['site_id'];
|
||||
$query.= ';';
|
||||
$row = mysql_fetch_array( mysql_query( $query ) );
|
||||
return $row['galleries_url'];
|
||||
}
|
||||
|
||||
// The function get_cat_display_name returns a string containing the list
|
||||
// of upper categories to the root category from the lowest category shown
|
||||
// example : "anniversaires - fete mere 2002 - animaux - erika"
|
||||
|
|
@ -401,7 +424,7 @@ function initialize_category( $calling_page = 'category' )
|
|||
$page['cat_site_id'] = $result['site_id'];
|
||||
$page['cat_uploadable'] = $result['uploadable'];
|
||||
$page['title'] = get_cat_display_name( $page['cat_name'], ' - ', '' );
|
||||
$page['where'] = ' WHERE cat_id = '.$page['cat'];
|
||||
$page['where'] = ' WHERE category_id = '.$page['cat'];
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -411,7 +434,7 @@ function initialize_category( $calling_page = 'category' )
|
|||
// we must not show pictures of a forbidden category
|
||||
$restricted_cats = get_all_restrictions( $user['id'],$user['status'] );
|
||||
foreach ( $restricted_cats as $restricted_cat ) {
|
||||
$where_append.= ' AND cat_id != '.$restricted_cat;
|
||||
$where_append.= ' AND category_id != '.$restricted_cat;
|
||||
}
|
||||
}
|
||||
// search result
|
||||
|
|
@ -499,7 +522,7 @@ function initialize_category( $calling_page = 'category' )
|
|||
else if ( $page['cat'] == 'most_visited' )
|
||||
{
|
||||
$page['title'] = $conf['top_number'].' '.$lang['most_visited_cat'];
|
||||
$page['where'] = ' WHERE cat_id != -1'.$where_append;
|
||||
$page['where'] = ' WHERE category_id != -1'.$where_append;
|
||||
$conf['order_by'] = ' ORDER BY hit DESC, file ASC';
|
||||
$page['cat_nb_images'] = $conf['top_number'];
|
||||
if ( $page['start'] + $user['nb_image_page'] >= $conf['top_number'] )
|
||||
|
|
|
|||
|
|
@ -29,6 +29,8 @@ $lang['IP'] = 'IP';
|
|||
$lang['close'] = 'fermer';
|
||||
$lang['open'] = 'ouvrir';
|
||||
$lang['keywords'] = 'mots-clefs';
|
||||
$lang['errors_title'] = 'Erreurs';
|
||||
$lang['default'] = 'défaut';
|
||||
// end version 1.3
|
||||
|
||||
// page diapo
|
||||
|
|
@ -264,6 +266,7 @@ if ( $isadmin )
|
|||
$lang['title_cat_perm'] = 'Modifier les permissions pour la catégorie';
|
||||
$lang['title_group_perm'] = 'Modifier les permissions pour le groupe';
|
||||
$lang['title_comments'] = 'Commentaires des visiteurs';
|
||||
$lang['title_picmod'] = 'Modifier les informations d\'une image';
|
||||
// end version 1.3
|
||||
$lang['title_categories'] = 'Gestion des catégories';
|
||||
$lang['title_edit_cat'] = 'Editer une catégorie';
|
||||
|
|
@ -511,6 +514,7 @@ if ( $isadmin )
|
|||
$lang['infoimage_keyword_separation'] = '(séparer avec des ",")';
|
||||
$lang['infoimage_addtoall'] = 'ajouter à tous';
|
||||
$lang['infoimage_removefromall'] = 'retirer à tous';
|
||||
$lang['infoimage_associate'] = 'Associer à la catégorie';
|
||||
// end version 1.3
|
||||
$lang['infoimage_general'] = 'Options générale pour la catégorie';
|
||||
$lang['infoimage_useforall'] = 'utiliser pour toutes les images ?';
|
||||
|
|
|
|||
79
picture.php
79
picture.php
|
|
@ -23,6 +23,7 @@ include_once( './include/init.inc.php' );
|
|||
//-------------------------------------------------- access authorization check
|
||||
check_cat_id( $_GET['cat'] );
|
||||
check_login_authorization();
|
||||
$page['plain_structure'] = get_plain_structure();
|
||||
if ( isset( $page['cat'] ) and is_numeric( $page['cat'] ) )
|
||||
{
|
||||
check_restrictions( $page['cat'] );
|
||||
|
|
@ -38,8 +39,10 @@ initialize_category( 'picture' );
|
|||
$cat_directory = $page['cat_dir']; // by default
|
||||
//------------------------------------- main picture information initialization
|
||||
$query = 'SELECT id,date_available,comment,hit,keywords';
|
||||
$query.= ',author,name,file,date_creation,filesize,width,height,cat_id';
|
||||
$query.= ',author,name,file,date_creation,filesize,width,height';
|
||||
$query.= ',storage_category_id,category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= $page['where'];
|
||||
$query.= ' AND id = '.$_GET['image_id'];
|
||||
$query.= $conf['order_by'];
|
||||
|
|
@ -57,11 +60,13 @@ $page['date_creation'] = $row['date_creation'];
|
|||
$page['filesize'] = $row['filesize'];
|
||||
$page['width'] = $row['width'];
|
||||
$page['height'] = $row['height'];
|
||||
$page['cat_id'] = $row['cat_id'];
|
||||
$page['category_id'] = $row['category_id'];
|
||||
$page['keywords'] = $row['keywords'];
|
||||
$page['storage_category_id'] = $row['storage_category_id'];
|
||||
// retrieving the number of the picture in its category (in order)
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= $page['where'];
|
||||
$query.= $conf['order_by'];
|
||||
$query.= ';';
|
||||
|
|
@ -123,6 +128,7 @@ if ( isset( $_GET['add_fav'] ) )
|
|||
}
|
||||
$query = 'SELECT id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= $page['where'];
|
||||
$query.= $conf['order_by'];
|
||||
$query.= ' LIMIT '.$page['num'].',1';
|
||||
|
|
@ -205,8 +211,9 @@ else
|
|||
if ( $page['num'] >= 1 )
|
||||
{
|
||||
$prev = $page['num'] - 1;
|
||||
$query = 'SELECT id,name,file,tn_ext,cat_id';
|
||||
$query = 'SELECT id,name,file,tn_ext,storage_category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= $page['where'];
|
||||
$query.= $conf['order_by'];
|
||||
$query.= ' LIMIT '.$prev.',1';
|
||||
|
|
@ -214,20 +221,17 @@ if ( $page['num'] >= 1 )
|
|||
$result = mysql_query( $query );
|
||||
$row = mysql_fetch_array( $result );
|
||||
|
||||
if ( !is_numeric( $page['cat'] ) )
|
||||
if ( $array_cat_directories[$row['storage_category_id']] == '' )
|
||||
{
|
||||
if ( $array_cat_directories[$row['cat_id']] == '' )
|
||||
{
|
||||
$cat_result = get_cat_info( $row['cat_id'] );
|
||||
$array_cat_directories[$row['cat_id']] = $cat_result['dir'];
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$row['cat_id']];
|
||||
$array_cat_directories[$row['storage_category_id']] =
|
||||
get_complete_dir( $row['storage_category_id'] );
|
||||
}
|
||||
|
||||
$file = substr ( $row['file'], 0, strrpos ( $row['file'], '.' ) );
|
||||
$cat_directory = $array_cat_directories[$row['storage_category_id']];
|
||||
|
||||
$file = substr( $row['file'], 0, strrpos ( $row['file'], '.' ) );
|
||||
$lien_thumbnail = $cat_directory.'/thumbnail/';
|
||||
$lien_thumbnail.= $conf['prefix_thumbnail'].$file.".".$row['tn_ext'];
|
||||
|
||||
|
||||
$prev_title = $lang['previous_image'].' : ';
|
||||
$alt_thumbnaill = '';
|
||||
if ( $row['name'] != '' ) $alt_thumbnail = $row['name'];
|
||||
|
|
@ -261,14 +265,16 @@ if ( is_numeric( $page['cat'] ) )
|
|||
}
|
||||
else
|
||||
{
|
||||
$cat_result = get_cat_info( $page['cat_id'] );
|
||||
if ( $array_cat_directories[$page['cat_id']] == "" )
|
||||
{
|
||||
$array_cat_directories[$page['cat_id']] = $cat_result['dir'];
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$page['cat_id']];
|
||||
$intitule_cat = $page['title'];
|
||||
}
|
||||
|
||||
if ( $array_cat_directories[$page['storage_category_id']] == '' )
|
||||
{
|
||||
$array_cat_directories[$page['storage_category_id']] =
|
||||
get_complete_dir( $page['storage_category_id'] );
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$page['storage_category_id']];
|
||||
|
||||
$n = $page['num'] + 1;
|
||||
$intitule_titre = replace_space( $intitule_cat." - " ).$n.'/'.
|
||||
$intitule_titre.= $page['cat_nb_images']."<br />";
|
||||
|
|
@ -347,9 +353,8 @@ if ( $page['date_creation'] != "" )
|
|||
{
|
||||
$vtp->addSession( $handle, 'info_line' );
|
||||
$vtp->setVar( $handle, 'info_line.name', $lang['creation_date'].' : ' );
|
||||
list( $year,$month,$day ) = explode( '-', $page['date_creation'] );
|
||||
$vtp->setVar( $handle, 'info_line.content',
|
||||
$day.'/'.$month.'/'.$year );
|
||||
format_date( $page['date_creation'] ) );
|
||||
$vtp->closeSession( $handle, 'info_line' );
|
||||
}
|
||||
// date of availability
|
||||
|
|
@ -357,7 +362,7 @@ $vtp->addSession( $handle, 'info_line' );
|
|||
$vtp->setVar( $handle, 'info_line.name', $lang['registration_date'].' : ' );
|
||||
list( $year,$month,$day ) = explode( '-', $page['date_available'] );
|
||||
$vtp->setVar( $handle, 'info_line.content',
|
||||
$day.'/'.$month.'/'.$year );
|
||||
format_date( $page['date_available'] ) );
|
||||
$vtp->closeSession( $handle, 'info_line' );
|
||||
// size in pixels
|
||||
$vtp->addSession( $handle, 'info_line' );
|
||||
|
|
@ -455,34 +460,31 @@ if ( $page['cat'] == 'fav' )
|
|||
if ( $user['status'] == "admin" and is_numeric( $page['cat'] ) )
|
||||
{
|
||||
$vtp->addSession( $handle, 'modification' );
|
||||
$url = './admin/admin.php?page=infos_images&cat_id='.$page['cat'];
|
||||
$url.= '&num='.$page['num'];
|
||||
$vtp->setVar( $handle, 'modification.link',
|
||||
add_session_id( $url )."#".$page['id'] );
|
||||
$url = './admin/admin.php?page=picture_modify&cat_id='.$page['cat'];
|
||||
$url.= '&image_id='.$page['id'];
|
||||
$vtp->setVar( $handle, 'modification.link', add_session_id( $url ) );
|
||||
$vtp->setVar( $handle, 'modification.name', $lang['link_info_image'] );
|
||||
}
|
||||
//---------------------------------------------- next picture thumbnail display
|
||||
if ( $page['num'] < $page['cat_nb_images']-1 )
|
||||
{
|
||||
$next = $page['num'] + 1;
|
||||
$query = 'SELECT id,name,file,tn_ext,cat_id';
|
||||
$query = 'SELECT id,name,file,tn_ext,storage_category_id';
|
||||
$query.= ' FROM '.PREFIX_TABLE.'images';
|
||||
$query.= ' LEFT JOIN '.PREFIX_TABLE.'image_category ON id = image_id';
|
||||
$query.= $page['where'];
|
||||
$query.= $conf['order_by'];
|
||||
$query.= ' LIMIT '.$next.',1';
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
$row = mysql_fetch_array( $result );
|
||||
|
||||
if ( !is_numeric( $page['cat'] ) )
|
||||
|
||||
if ( $array_cat_directories[$row['storage_category_id']] == '' )
|
||||
{
|
||||
if ( $array_cat_directories[$row['cat_id']] == "" )
|
||||
{
|
||||
$cat_result = get_cat_info( $row['cat_id'] );
|
||||
$array_cat_directories[$row['cat_id']] = $cat_result['dir'];
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$row['cat_id']];
|
||||
$array_cat_directories[$row['storage_category_id']] =
|
||||
get_complete_dir( $row['storage_category_id'] );
|
||||
}
|
||||
$cat_directory = $array_cat_directories[$row['storage_category_id']];
|
||||
|
||||
$file = substr ( $row['file'], 0, strrpos ( $row['file'], ".") );
|
||||
$lien_thumbnail = $cat_directory.'thumbnail/';
|
||||
|
|
@ -629,11 +631,8 @@ if ( $conf['show_comments'] )
|
|||
{
|
||||
$vtp->addSession( $handle, 'comment' );
|
||||
$vtp->setVar( $handle, 'comment.author', $row['author'] );
|
||||
$displayed_date = $lang['day'][date( "w", $row['date'] )];
|
||||
$displayed_date.= date( " j ", $row['date'] );
|
||||
$displayed_date.= $lang['month'][date( "n", $row['date'] )];
|
||||
$displayed_date.= date( ' Y G:i', $row['date'] );
|
||||
$vtp->setVar( $handle, 'comment.date', $displayed_date );
|
||||
$vtp->setVar( $handle, 'comment.date',
|
||||
format_date( $row['date'], 'unix', true ) );
|
||||
$vtp->setVar( $handle, 'comment.content', nl2br( $row['content'] ) );
|
||||
if ( $user['status'] == 'admin' )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<!--VTP_errors-->
|
||||
<div class="errors">
|
||||
<div class="errors_title">Erreurs</div>
|
||||
<div class="errors_title">{#errors_title}</div>
|
||||
<ul>
|
||||
<!--VTP_li-->
|
||||
<li>{#li}</li>
|
||||
|
|
|
|||
|
|
@ -42,12 +42,13 @@
|
|||
</table>
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<th colspan="6">{#infoimage_detailed}</th>
|
||||
<th colspan="7">{#infoimage_detailed}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="6" align="center">{#navigation_bar}</td>
|
||||
<td colspan="7" align="center">{#navigation_bar}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width:0px;"> </td>
|
||||
<td class="row2" style="text-align:center;">{#thumbnail}</td>
|
||||
<td class="row2" style="text-align:center;">{#infoimage_title}</td>
|
||||
<td class="row2" style="text-align:center;">{#author}</td>
|
||||
|
|
@ -57,6 +58,11 @@
|
|||
</tr>
|
||||
<!--VTP_picture-->
|
||||
<tr>
|
||||
<td style="width:0px;">
|
||||
<div style="margin-left:2px;margin-right:2px;">
|
||||
<input type="checkbox" name="check-{#id}" value="1" />
|
||||
</div>
|
||||
</td>
|
||||
<td style="text-align:center;"><a name="{#link}" href="{#url}"><img src="{#thumbnail_url}" alt="" class="miniature" title="{#filename}" /></td>
|
||||
<td style="text-align:center;">{#default_name}<br /><input type="text" name="name-{#id}" value="{#name}" maxlength="255"/></td>
|
||||
<td style="text-align:center;"><input type="text" name="author-{#id}" value="{#author}" maxlength="255"/></td>
|
||||
|
|
@ -65,6 +71,17 @@
|
|||
<td style="text-align:center;"><input type="text" name="keywords-{#id}" value="{#keywords}" maxlength="255" /></td>
|
||||
</tr>
|
||||
<!--/VTP_picture-->
|
||||
<tr>
|
||||
<td colspan="6">
|
||||
<img src="../template/{#user_template}/admin/images/arrow_up.gif" alt="<" />
|
||||
{#infoimage_associate}
|
||||
<select name="associate">
|
||||
<!--VTP_associate_cat-->
|
||||
<option value="{#value}">{#content}</option>
|
||||
<!--/VTP_associate_cat-->
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="6" style="text-align:center;">
|
||||
<input type="submit" value="{#submit}" name="submit" />
|
||||
|
|
|
|||
101
template/default/admin/picture_modify.vtp
Normal file
101
template/default/admin/picture_modify.vtp
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
<!--VTP_errors-->
|
||||
<div class="errors">
|
||||
<div class="errors_title">{#errors_title}</div>
|
||||
<ul>
|
||||
<!--VTP_li-->
|
||||
<li>{#content}</li>
|
||||
<!--/VTP_li-->
|
||||
</ul>
|
||||
</div>
|
||||
<!--/VTP_errors-->
|
||||
<!--VTP_confirmation-->
|
||||
<div class="info">
|
||||
{#picmod_update} [ <a href="{#url}">{#picmod_back}</a> ]
|
||||
</div>
|
||||
<!--/VTP_confirmation-->
|
||||
<form method="post" action="{#form_action}">
|
||||
<table style="width:100%;">
|
||||
<tr><th colspan="2">{#title} [ {#dir} > {#f_file} ]</th></tr>
|
||||
<tr>
|
||||
<td colspan="2"><div style="margin-bottom:0px"> </div></td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td style="width:1px;"><img src="{#thumbnail_url}" alt="" class="miniature" /></td>
|
||||
<td>
|
||||
<table>
|
||||
<tr>
|
||||
<td>{#upload_name} :</td>
|
||||
<td><input type="text" name="name" value="{#f_name}" /> [ {#default} : {#default_name} ]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#file} :</td>
|
||||
<td>{#f_file}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#size} :</td>
|
||||
<td>{#f_size}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#filesize} :</td>
|
||||
<td>{#f_filesize}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#registration_date} :</td>
|
||||
<td>{#f_registration_date}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#author} :</td>
|
||||
<td><input type="text" name="author" value="{#f_author}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#creation_date} :</td>
|
||||
<td><input type="text" name="creation_date" value="{#f_creation_date}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#keywords} :</td>
|
||||
<td><input type="text" name="keywords" value="{#f_keywords}" size="50" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{#comment} :</td>
|
||||
<td><textarea name="comment" rows="5" cols="50" style="overflow:auto">{#f_comment}</textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top">{#categories} :</td>
|
||||
<td>
|
||||
<table>
|
||||
<!--VTP_linked_category-->
|
||||
<tr>
|
||||
<td><!--VTP_checkbox--><input type="checkbox" name="dissociate-{#id}" value="1" /><!--/VTP_checkbox--><a href="{#url}">{#name}</a> [ <a href="{#infos_images_link}">{#cat_image_info}</a> ] {#private} {#invisible}
|
||||
</tr>
|
||||
<!--/VTP_linked_category-->
|
||||
<!--VTP_dissociate-->
|
||||
<tr>
|
||||
<td colspan="2"><img src="../template/{#user_template}/admin/images/arrow_up.gif" alt="<" /> {#dissociate}</td>
|
||||
</tr>
|
||||
<!--/VTP_dissociate-->
|
||||
<tr><td colspan="2"> </td></tr>
|
||||
<tr>
|
||||
<td>{#infoimage_associate}
|
||||
<select name="associate">
|
||||
<!--VTP_associate_cat-->
|
||||
<option value="{#value}">{#content}</option>
|
||||
<!--/VTP_associate_cat-->
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"><div style="margin-bottom:0px"> </div></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" align="center">
|
||||
<input type="submit" name="submit" value="{#submit}">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
|
@ -205,8 +205,9 @@ if ( isset( $_POST['submit'] ) and !isset( $_GET['waiting_id'] ) )
|
|||
if ( sizeof( $error ) == 0 )
|
||||
{
|
||||
$query = 'insert into '.PREFIX_TABLE.'waiting';
|
||||
$query.= ' (cat_id,file,username,mail_address,date,infos) values';
|
||||
$query.= " (".$page['cat'].",'".$_FILES['picture']['name']."'";
|
||||
$query.= ' (storage_category_id,file,username,mail_address,date,infos)';
|
||||
$query.= ' values ';
|
||||
$query.= '('.$page['cat'].",'".$_FILES['picture']['name']."'";
|
||||
$query.= ",'".htmlspecialchars( $_POST['username'], ENT_QUOTES)."'";
|
||||
$query.= ",'".$_POST['mail_address']."',".time().",'".$xml_infos."')";
|
||||
$query.= ';';
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue