plugin_name = $plugin_name;
$this->plugin_path = $plugin_path;
// handler
$this->initialize_event_handler();
}
function initialize_event_handler()
{
if (script_basename() != $this->plugin_name.'_controller')
{
add_event_handler('loc_end_page_header', array(&$this, 'loc_end_page_header'));
add_event_handler('loc_end_index', array(&$this, 'loc_end_index'));
add_event_handler('picture_pictures_data', array(&$this, 'picture_pictures_data'));
}
if (isset($_GET[$this->plugin_name]))
{
add_event_handler('loc_begin_page_header', array(&$this, 'loc_begin_page_header'));
pwg_set_session_var($this->plugin_name, ($_GET[$this->plugin_name] === 'open'));
}
$this->opened = pwg_get_session_var($this->plugin_name, false);
$this->to_close = (isset($_GET[$this->plugin_name]) and ($_GET[$this->plugin_name] === 'close'));
}
function get_thumb_post_on_a_website()
{
global $page, $lang_info;
$list = array();
$S = '';
switch (script_basename())
{
case 'index':
{
global $pictures;
if (isset($pictures))
{
$list = $pictures;
}
break;
}
case 'picture':
{
global $picture;
if (isset($picture['current']))
{
$list[] = $picture['current'];
}
break;
}
}
if (empty($list) and !empty($page['items']))
{
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
WHERE id IN ('.implode(',', $page['items']).')
;';
$result = pwg_query($query);
while ($row = mysql_fetch_assoc($result))
{
$row['rank'] = $page['rank_of'][ $row['id'] ];
array_push($list, $row);
}
usort($list, 'rank_compare');
}
if (!empty($list))
{
set_make_full_url();
foreach ($list as $row)
{
/*
Affichage de la miniature sur des sites. Cliquable.
EXEMPLE
*/
$S .= ' $row['id'],
'image_file' => $row['file'],
)).'\" target=_blank>
';
$S .= '\n\n';
}
unset_make_full_url();
}
return $S;
}
function get_thumb_post_on_a_forum()
{
global $page, $lang_info;
$list = array();
$S = '';
switch (script_basename())
{
case 'index':
{
global $pictures;
if (isset($pictures))
{
$list = $pictures;
}
break;
}
case 'picture':
{
global $picture;
if (isset($picture['current']))
{
$list[] = $picture['current'];
}
break;
}
}
if (empty($list) and !empty($page['items']))
{
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
WHERE id IN ('.implode(',', $page['items']).')
;';
$result = pwg_query($query);
while ($row = mysql_fetch_assoc($result))
{
$row['rank'] = $page['rank_of'][ $row['id'] ];
array_push($list, $row);
}
usort($list, 'rank_compare');
}
if (!empty($list))
{
set_make_full_url();
foreach ($list as $row)
{
/*
Affichage de la miniature sur des forums. Cliquable.
EXEMPLE
[url={$ROOT_WAY}{$current.U_IMG}][img]{$ROOT_WAY}{$current.THUMB_SRC|@replace:'./':''}[/img][/url]
*/
$S .= '[url='.
duplicate_picture_url(
array(
'image_id' => $row['id'],
'image_file' => $row['file'],
)).'][img]'.
str_replace('/./', '/', get_thumbnail_url($row)).'[/img][/url]';
$S .= '\n\n';
}
unset_make_full_url();
}
return $S;
}
function get_view_post_on_a_website()
{
global $page, $lang_info;
$list = array();
$S = '';
switch (script_basename())
{
case 'index':
{
global $pictures;
if (isset($pictures))
{
$list = $pictures;
}
break;
}
case 'picture':
{
global $picture;
if (isset($picture['current']))
{
$list[] = $picture['current'];
}
break;
}
}
if (empty($list) and !empty($page['items']))
{
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
WHERE id IN ('.implode(',', $page['items']).')
;';
$result = pwg_query($query);
while ($row = mysql_fetch_assoc($result))
{
$row['rank'] = $page['rank_of'][ $row['id'] ];
array_push($list, $row);
}
usort($list, 'rank_compare');
}
if (!empty($list))
{
include_once(PHPWG_ROOT_PATH.'/include/functions_picture.inc.php');
set_make_full_url();
foreach ($list as $row)
{
/*
Affichage de la vue normale sur des sites. Non cliquable.
EXEMPLE
*/
if (strpos( get_image_url($row), get_absolute_root_url() ) === false) {
$abs_root_img= get_absolute_root_url(). str_replace('./', '', get_image_url($row)) ;
} else {
$abs_root_img= get_image_url($row) ;
}
$S .= ' $row['id'],
'image_file' => $row['file'],
)).'\" target=_blank>
';
$S .= '\n\n';
}
unset_make_full_url();
}
return $S;
}
function get_view_post_on_a_forum()
{
global $page, $lang_info;
$list = array();
$S = '';
switch (script_basename())
{
case 'index':
{
global $pictures;
if (isset($pictures))
{
$list = $pictures;
}
break;
}
case 'picture':
{
global $picture;
if (isset($picture['current']))
{
$list[] = $picture['current'];
}
break;
}
}
if (empty($list) and !empty($page['items']))
{
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
WHERE id IN ('.implode(',', $page['items']).')
;';
$result = pwg_query($query);
while ($row = mysql_fetch_assoc($result))
{
$row['rank'] = $page['rank_of'][ $row['id'] ];
array_push($list, $row);
}
usort($list, 'rank_compare');
}
if (!empty($list))
{
include_once(PHPWG_ROOT_PATH.'/include/functions_picture.inc.php');
set_make_full_url();
foreach ($list as $row)
{
/*
Affichage de la vue normale sur des forums.
EXEMPLE
[url={$ROOT_WAY}{$current.U_IMG}][img]{$ROOT_WAY}{$SRC_IMG|@replace:'./':''}[/img][/url]
*/
if (strpos( get_image_url($row), get_absolute_root_url() ) === false) {
$abs_root_img= get_absolute_root_url(). str_replace('./', '', get_image_url($row)) ;
} else {
$abs_root_img= get_image_url($row) ;
}
$S .= '[url='.
duplicate_picture_url(
array(
'image_id' => $row['id'],
'image_file' => $row['file'],
)).'][img]'.$abs_root_img.'[/img][/url]';
$S .= '\n\n';
}
unset_make_full_url();
}
return $S;
}
function get_view_direct_link()
{
global $page, $lang_info;
$list = array();
$S = '';
switch (script_basename())
{
case 'index':
{
global $pictures;
if (isset($pictures))
{
$list = $pictures;
}
break;
}
case 'picture':
{
global $picture;
if (isset($picture['current']))
{
$list[] = $picture['current'];
}
break;
}
}
if (empty($list) and !empty($page['items']))
{
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
WHERE id IN ('.implode(',', $page['items']).')
;';
$result = pwg_query($query);
while ($row = mysql_fetch_assoc($result))
{
$row['rank'] = $page['rank_of'][ $row['id'] ];
array_push($list, $row);
}
usort($list, 'rank_compare');
}
if (!empty($list))
{
include_once(PHPWG_ROOT_PATH.'/include/functions_picture.inc.php');
set_make_full_url();
$page_name = script_basename();
if ( $page_name == 'picture')
{
foreach ($list as $row)
{
/*
Affichage du chemin en clair du lien vers la vue normale.
EXEMPLE
{$ROOT_WAY}{$SRC_IMG|@replace:'./':''}
*/
$S .= get_absolute_root_url().
str_replace('./', '', get_image_url($row));
$S .= '\n\n';
}
unset_make_full_url();
}
else
{
foreach ($list as $row)
{
/*
Affichage du chemin en clair du lien vers la vue normale.
EXEMPLE
{$ROOT_WAY}{$SRC_IMG|@replace:'./':''}
*/
$S .= get_image_url($row);
$S .= '\n\n';
}
}
unset_make_full_url();
}
return $S;
}
function get_p_perso_writer_01()
{
global $page, $lang_info;
$list = array();
$S = '';
switch (script_basename())
{
case 'index':
{
global $pictures;
if (isset($pictures))
{
$list = $pictures;
}
break;
}
case 'picture':
{
global $picture;
if (isset($picture['current']))
{
$list[] = $picture['current'];
}
break;
}
}
if (empty($list) and !empty($page['items']))
{
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
WHERE id IN ('.implode(',', $page['items']).')
;';
$result = pwg_query($query);
while ($row = mysql_fetch_assoc($result))
{
$row['rank'] = $page['rank_of'][ $row['id'] ];
array_push($list, $row);
}
usort($list, 'rank_compare');
}
if (!empty($list))
{
include_once(PHPWG_ROOT_PATH.'/include/functions_picture.inc.php');
set_make_full_url();
foreach ($list as $row)
{
/*
Affichage Personnalisé, 01.
EXEMPLE