function language_controler_flags()
{
    global $user, $template, $conf, $page;
    $available_lang = get_languages();
    if (isset($conf['no_flag_languages'])) {
        $available_lang = array_diff_key($available_lang, array_flip($conf['no_flag_languages']));
    }
    $url_starting = get_query_string_diff(array('lang'));
    if (isset($page['section']) and $page['section'] == 'additional_page' and isset($page['additional_page'])) {
        $base_url = make_index_url(array('section' => 'page')) . '/' . (isset($page['additional_page']['permalink']) ? $page['additional_page']['permalink'] : $page['additional_page']['id']);
    } else {
        $base_url = duplicate_index_url();
    }
    foreach ($available_lang as $code => $displayname) {
        $qlc = array('url' => add_url_params($base_url, array('lang' => $code)), 'alt' => ucwords($displayname), 'title' => substr($displayname, 0, -4), 'code' => $code);
        $lsw['flags'][$code] = $qlc;
        if ($code == $user['language']) {
            $lsw['Active'] = $qlc;
        }
    }
    $safe_themes = array('clear', 'dark', 'elegant', 'Sylvia', 'simple-grey', 'simple-black', 'simple-white', 'kardon', 'luciano', 'montblancxl');
    // stripped (2.6)
    $template->assign(array('lang_switch' => $lsw, 'LANGUAGE_SWITCH_PATH' => LANGUAGE_SWITCH_PATH, 'LANGUAGE_SWITCH_LOAD_STYLE' => !in_array($user['theme'], $safe_themes)));
    $template->set_filename('language_flags', dirname(__FILE__) . '/flags.tpl');
    $template->concat('PLUGIN_INDEX_ACTIONS', $template->parse('language_flags', true));
    $template->clear_assign('lang_switch');
}
 /**
  * Returns the current url minus MultiView params
  *
  * @param bool $with_amp - adds ? or & at the end of the url
  * @return string
  */
 public function get_clean_url($with_amp = false)
 {
     if (script_basename() == 'picture') {
         $url = duplicate_picture_url(array(), $this->data_url_params);
     } else {
         if (script_basename() == 'index') {
             $url = duplicate_index_url(array(), $this->data_url_params);
         } else {
             $url = get_query_string_diff($this->data_url_params);
         }
     }
     if ($with_amp) {
         $url .= strpos($url, '?') !== false ? '&' : '?';
     }
     return $url;
 }
    state,
    from_name,
    from_address,
    subject
  FROM ' . IMAGES_TABLE . '
    JOIN ' . PFEMAIL_PENDINGS_TABLE . ' ON id = image_id

  WHERE image_id IN (' . implode(',', $pending_ids) . ')
  ORDER BY image_id DESC
  LIMIT ' . $page['start'] . ', ' . $page['nb_pendings_per_page'] . '
;';
$result = pwg_query($query);
$rows = array();
$image_ids = array();
while ($row = pwg_db_fetch_assoc($result)) {
    array_push($rows, $row);
    array_push($image_ids, $row['id']);
}
$template->assign(array('F_ACTION' => $admin_base_url));
foreach ($rows as $row) {
    $thumb = DerivativeImage::thumb_url(array('id' => $row['image_id'], 'path' => $row['path']));
    $template->append('photos', array('U_EDIT' => get_root_url() . 'admin.php?page=plugin-showcase_admin-photo&image_id=' . $row['image_id'], 'ID' => $row['image_id'], 'TN_SRC' => $thumb, 'WEBSIZE_SRC' => $row['path'], 'ADDED_BY' => $row['author'], 'ADDED_ON' => format_date($row['date_available'], true), 'NAME' => $row['name'], 'FILE' => $row['file'], 'DATE_CREATION' => empty($row['date_creation']) ? l10n('N/A') : format_date($row['date_creation']), 'DESCRIPTION' => $row['comment'], 'FROM' => @$row['from_name'] . ' <' . $row['from_address'] . '>'));
}
// +-----------------------------------------------------------------------+
// |                            navigation bar                             |
// +-----------------------------------------------------------------------+
$template->assign('navbar', create_navigation_bar(get_root_url() . 'admin.php' . get_query_string_diff(array('start', 'action', 'showcase_id')), count($pending_ids), $page['start'], $page['nb_pendings_per_page']));
// +-----------------------------------------------------------------------+
// | sending html code                                                     |
// +-----------------------------------------------------------------------+
$template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
Exemple #4
0
$template->set_filenames(array('element_set_ranks' => 'element_set_ranks.tpl'));
$base_url = get_root_url() . 'admin.php';
$query = '
SELECT *
  FROM ' . CATEGORIES_TABLE . '
  WHERE id = ' . $page['category_id'] . '
;';
$category = pwg_db_fetch_assoc(pwg_query($query));
if ($category['image_order'] == 'rank ASC') {
    $image_order_choice = 'rank';
} elseif ($category['image_order'] != '') {
    $image_order_choice = 'user_define';
}
// Navigation path
$navigation = get_cat_display_name_cache($category['uppercats'], get_root_url() . 'admin.php?page=album-');
$template->assign(array('CATEGORIES_NAV' => $navigation, 'F_ACTION' => $base_url . get_query_string_diff(array())));
// +-----------------------------------------------------------------------+
// |                              thumbnails                               |
// +-----------------------------------------------------------------------+
$query = '
SELECT
    id,
    file,
    path,
    representative_ext,
    width, height, rotation,
    name,
    rank
  FROM ' . IMAGES_TABLE . '
    JOIN ' . IMAGE_CATEGORY_TABLE . ' ON image_id = id
  WHERE category_id = ' . $page['category_id'] . '
Exemple #5
0
  WHERE id = ' . $_GET['image_id'] . '
;';
$row = pwg_db_fetch_assoc(pwg_query($query));
$storage_category_id = null;
if (!empty($row['storage_category_id'])) {
    $storage_category_id = $row['storage_category_id'];
}
$image_file = $row['file'];
// +-----------------------------------------------------------------------+
// |                             template init                             |
// +-----------------------------------------------------------------------+
$template->set_filenames(array('picture_modify' => 'picture_modify.tpl'));
$admin_url_start = $admin_photo_base_url . '-properties';
$admin_url_start .= isset($_GET['cat_id']) ? '&cat_id=' . $_GET['cat_id'] : '';
$src_image = new SrcImage($row);
$template->assign(array('tag_selection' => $tag_selection, 'U_SYNC' => $admin_url_start . '&sync_metadata=1', 'U_DELETE' => $admin_url_start . '&delete=1&pwg_token=' . get_pwg_token(), 'PATH' => $row['path'], 'TN_SRC' => DerivativeImage::url(IMG_THUMB, $src_image), 'FILE_SRC' => DerivativeImage::url(IMG_LARGE, $src_image), 'NAME' => isset($_POST['name']) ? stripslashes($_POST['name']) : @$row['name'], 'TITLE' => render_element_name($row), 'DIMENSIONS' => @$row['width'] . ' * ' . @$row['height'], 'FILESIZE' => @$row['filesize'] . ' KB', 'REGISTRATION_DATE' => format_date($row['date_available']), 'AUTHOR' => htmlspecialchars(isset($_POST['author']) ? stripslashes($_POST['author']) : @$row['author']), 'DATE_CREATION' => $row['date_creation'], 'DESCRIPTION' => htmlspecialchars(isset($_POST['description']) ? stripslashes($_POST['description']) : @$row['comment']), 'F_ACTION' => get_root_url() . 'admin.php' . get_query_string_diff(array('sync_metadata'))));
$added_by = 'N/A';
$query = '
SELECT ' . $conf['user_fields']['username'] . ' AS username
  FROM ' . USERS_TABLE . '
  WHERE ' . $conf['user_fields']['id'] . ' = ' . $row['added_by'] . '
;';
$result = pwg_query($query);
while ($user_row = pwg_db_fetch_assoc($result)) {
    $row['added_by'] = $user_row['username'];
}
$intro_vars = array('file' => l10n('Original file : %s', $row['file']), 'add_date' => l10n('Posted %s on %s', time_since($row['date_available'], 'year'), format_date($row['date_available'], array('day', 'month', 'year'))), 'added_by' => l10n('Added by %s', $row['added_by']), 'size' => $row['width'] . '×' . $row['height'] . ' pixels, ' . sprintf('%.2f', $row['filesize'] / 1024) . 'MB', 'stats' => l10n('Visited %d times', $row['hit']), 'id' => l10n('Numeric identifier : %d', $row['id']));
if ($conf['rate'] and !empty($row['rating_score'])) {
    $query = '
SELECT
    COUNT(*)
Exemple #6
0
}
if (isset($_GET['action']) and isset($page['site'])) {
    $query = '
SELECT galleries_url
  FROM ' . SITES_TABLE . '
  WHERE id = ' . $page['site'] . '
;';
    list($galleries_url) = pwg_db_fetch_row(pwg_query($query));
    switch ($_GET['action']) {
        case 'delete':
            delete_site($page['site']);
            $page['infos'][] = $galleries_url . ' ' . l10n('deleted');
            break;
    }
}
$template->assign(array('F_ACTION' => get_root_url() . 'admin.php' . get_query_string_diff(array('action', 'site', 'pwg_token')), 'PWG_TOKEN' => get_pwg_token()));
$query = '
SELECT c.site_id, COUNT(DISTINCT c.id) AS nb_categories, COUNT(i.id) AS nb_images
  FROM ' . CATEGORIES_TABLE . ' AS c LEFT JOIN ' . IMAGES_TABLE . ' AS i
  ON c.id=i.storage_category_id 
  WHERE c.site_id IS NOT NULL
  GROUP BY c.site_id
;';
$sites_detail = hash_from_query($query, 'site_id');
$query = '
SELECT *
  FROM ' . SITES_TABLE . '
;';
$result = pwg_query($query);
while ($row = pwg_db_fetch_assoc($result)) {
    $is_remote = url_is_remote($row['galleries_url']);
Exemple #7
0
    validated,
    c.anonymous_id
  FROM ' . COMMENTS_TABLE . ' AS c
    INNER JOIN ' . IMAGES_TABLE . ' AS i
      ON i.id = c.image_id
    LEFT JOIN ' . USERS_TABLE . ' AS u
      ON u.' . $conf['user_fields']['id'] . ' = c.author_id
  WHERE ' . implode(' AND ', $where_clauses) . '
  ORDER BY c.date DESC
  LIMIT ' . $page['start'] . ', ' . $conf['comments_page_nb_comments'] . '
;';
$result = pwg_query($query);
while ($row = pwg_db_fetch_assoc($result)) {
    $thumb = DerivativeImage::thumb_url(array('id' => $row['image_id'], 'path' => $row['path']));
    if (empty($row['author_id'])) {
        $author_name = $row['author'];
    } else {
        $author_name = stripslashes($row['username']);
    }
    $template->append('comments', array('U_PICTURE' => get_root_url() . 'admin.php?page=photo-' . $row['image_id'], 'ID' => $row['id'], 'TN_SRC' => $thumb, 'AUTHOR' => trigger_change('render_comment_author', $author_name), 'DATE' => format_date($row['date'], array('day_name', 'day', 'month', 'year', 'time')), 'CONTENT' => trigger_change('render_comment_content', $row['content']), 'IS_PENDING' => 'false' == $row['validated'], 'IP' => $row['anonymous_id']));
    $list[] = $row['id'];
}
// +-----------------------------------------------------------------------+
// |                            navigation bar                             |
// +-----------------------------------------------------------------------+
$navbar = create_navigation_bar(get_root_url() . 'admin.php' . get_query_string_diff(array('start')), 'pending' == $page['filter'] ? $nb_pending : $nb_total, $page['start'], $conf['comments_page_nb_comments']);
$template->assign('navbar', $navbar);
// +-----------------------------------------------------------------------+
// |                           sending html code                           |
// +-----------------------------------------------------------------------+
$template->assign_var_from_handle('ADMIN_CONTENT', 'comments');
Exemple #8
0
    foreach ($username_of as $user_id => $user_name) {
        $member_string = $user_name . '&nbsp;<a href="';
        $member_string .= get_root_url() . 'admin.php?page=history';
        $member_string .= '&amp;search_id=' . $page['search_id'];
        $member_string .= '&amp;user_id=' . $user_id;
        $member_string .= '">+</a>';
        $member_strings[] = $member_string;
    }
    $template->assign('search_summary', array('NB_LINES' => l10n_dec('%d line filtered', '%d lines filtered', $page['nb_lines']), 'FILESIZE' => $summary['total_filesize'] != 0 ? ceil($summary['total_filesize'] / 1024) . ' MB' : '', 'USERS' => l10n_dec('%d user', '%d users', $summary['nb_members'] + $summary['nb_guests']), 'MEMBERS' => sprintf(l10n_dec('%d member', '%d members', $summary['nb_members']) . ': %s', implode(', ', $member_strings)), 'GUESTS' => l10n_dec('%d guest', '%d guests', $summary['nb_guests'])));
    unset($name_of_tag);
}
// +-----------------------------------------------------------------------+
// |                            navigation bar                             |
// +-----------------------------------------------------------------------+
if (isset($page['search_id'])) {
    $navbar = create_navigation_bar(get_root_url() . 'admin.php' . get_query_string_diff(array('start')), $page['nb_lines'], $page['start'], $conf['nb_logs_page']);
    $template->assign('navbar', $navbar);
}
// +-----------------------------------------------------------------------+
// |                             filter form                               |
// +-----------------------------------------------------------------------+
$form = array();
if (isset($page['search'])) {
    if (isset($page['search']['fields']['date-after'])) {
        $form['start'] = $page['search']['fields']['date-after'];
    }
    if (isset($page['search']['fields']['date-before'])) {
        $form['end'] = $page['search']['fields']['date-before'];
    }
    $form['types'] = $page['search']['fields']['types'];
    if (isset($page['search']['fields']['user'])) {
// |                             template init                             |
// +-----------------------------------------------------------------------+
$template->set_filenames(array('batch_manager_unit' => 'batch_manager_unit.tpl'));
$base_url = PHPWG_ROOT_PATH . 'admin.php';
$template->assign(array('U_ELEMENTS_PAGE' => $base_url . get_query_string_diff(array('display', 'start')), 'F_ACTION' => $base_url . get_query_string_diff(array()), 'level_options' => get_privacy_level_options()));
// +-----------------------------------------------------------------------+
// |                        global mode thumbnails                         |
// +-----------------------------------------------------------------------+
// how many items to display on this page
if (!empty($_GET['display'])) {
    $page['nb_images'] = intval($_GET['display']);
} else {
    $page['nb_images'] = 5;
}
if (count($page['cat_elements_id']) > 0) {
    $nav_bar = create_navigation_bar($base_url . get_query_string_diff(array('start')), count($page['cat_elements_id']), $page['start'], $page['nb_images']);
    $template->assign(array('navbar' => $nav_bar));
    $element_ids = array();
    $is_category = false;
    if (isset($_SESSION['bulk_manager_filter']['category']) and !isset($_SESSION['bulk_manager_filter']['category_recursive'])) {
        $is_category = true;
    }
    if (isset($_SESSION['bulk_manager_filter']['prefilter']) and 'duplicates' == $_SESSION['bulk_manager_filter']['prefilter']) {
        $conf['order_by'] = ' ORDER BY file, id';
    }
    $query = '
SELECT *
  FROM ' . IMAGES_TABLE;
    if ($is_category) {
        $category_info = get_cat_info($_SESSION['bulk_manager_filter']['category']);
        $conf['order_by'] = $conf['order_by_inside_category'];
function insert_new_data_user_mail_notification()
{
    global $conf, $page, $env_nbm;
    // Set null mail_address empty
    $query = '
update
  ' . USERS_TABLE . '
set
  ' . $conf['user_fields']['email'] . ' = null
where
  trim(' . $conf['user_fields']['email'] . ') = \'\';';
    pwg_query($query);
    // null mail_address are not selected in the list
    $query = '
select
  u.' . $conf['user_fields']['id'] . ' as user_id,
  u.' . $conf['user_fields']['username'] . ' as username,
  u.' . $conf['user_fields']['email'] . ' as mail_address
from
  ' . USERS_TABLE . ' as u left join ' . USER_MAIL_NOTIFICATION_TABLE . ' as m on u.' . $conf['user_fields']['id'] . ' = m.user_id
where
  u.' . $conf['user_fields']['email'] . ' is not null and
  m.user_id is null
order by
  user_id;';
    $result = pwg_query($query);
    if (pwg_db_num_rows($result) > 0) {
        $inserts = array();
        $check_key_list = array();
        while ($nbm_user = pwg_db_fetch_assoc($result)) {
            // Calculate key
            $nbm_user['check_key'] = find_available_check_key();
            // Save key
            $check_key_list[] = $nbm_user['check_key'];
            // Insert new nbm_users
            $inserts[] = array('user_id' => $nbm_user['user_id'], 'check_key' => $nbm_user['check_key'], 'enabled' => 'false');
            $page['infos'][] = l10n('User %s [%s] added.', stripslashes($nbm_user['username']), $nbm_user['mail_address']);
        }
        // Insert new nbm_users
        mass_inserts(USER_MAIL_NOTIFICATION_TABLE, array('user_id', 'check_key', 'enabled'), $inserts);
        // Update field enabled with specific function
        $check_key_treated = do_subscribe_unsubscribe_notification_by_mail(true, $conf['nbm_default_value_user_enabled'], $check_key_list);
        // On timeout simulate like tabsheet send
        if ($env_nbm['is_sendmail_timeout']) {
            $quoted_check_key_list = quote_check_key_list(array_diff($check_key_list, $check_key_treated));
            if (count($quoted_check_key_list) != 0) {
                $query = 'delete from ' . USER_MAIL_NOTIFICATION_TABLE . ' where check_key in (' . implode(",", $quoted_check_key_list) . ');';
                $result = pwg_query($query);
                redirect($base_url . get_query_string_diff(array(), false), l10n('Operation in progress') . "\n" . l10n('Please wait...'));
            }
        }
    }
}
Exemple #11
0
  GROUP BY comment_id
  ORDER BY ' . $page['sort_by'] . ' ' . $page['sort_order'];
if ('all' != $page['items_number']) {
    $query .= '
  LIMIT ' . $page['items_number'] . ' OFFSET ' . $start;
}
$query .= '
;';
$result = pwg_query($query);
while ($row = pwg_db_fetch_assoc($result)) {
    $comments[] = $row;
    $element_ids[] = $row['image_id'];
    $category_ids[] = $row['category_id'];
}
list($counter) = pwg_db_fetch_row(pwg_query('SELECT FOUND_ROWS()'));
$url = PHPWG_ROOT_PATH . 'comments.php' . get_query_string_diff(array('start', 'edit', 'delete', 'validate', 'pwg_token'));
$navbar = create_navigation_bar($url, $counter, $start, $page['items_number'], '');
$template->assign('navbar', $navbar);
if (count($comments) > 0) {
    // retrieving element informations
    $query = '
SELECT *
  FROM ' . IMAGES_TABLE . '
  WHERE id IN (' . implode(',', $element_ids) . ')
;';
    $elements = query2array($query, 'id');
    // retrieving category informations
    $query = 'SELECT id, name, permalink, uppercats
  FROM ' . CATEGORIES_TABLE . '
  WHERE id IN (' . implode(',', $category_ids) . ')';
    $categories = query2array($query, 'id');
Exemple #12
0
SELECT ' . $conf['user_fields']['username'] . ' as username, ' . $conf['user_fields']['id'] . ' as id
  FROM ' . USERS_TABLE . '
;';
$result = pwg_query($query);
while ($row = pwg_db_fetch_assoc($result)) {
    $users[$row['id']] = stripslashes($row['username']);
}
$query = 'SELECT COUNT(DISTINCT(r.element_id))
FROM ' . RATE_TABLE . ' AS r
WHERE 1=1' . $page['user_filter'];
list($nb_images) = pwg_db_fetch_row(pwg_query($query));
// +-----------------------------------------------------------------------+
// |                             template init                             |
// +-----------------------------------------------------------------------+
$template->set_filename('rating', 'rating.tpl');
$template->assign(array('navbar' => create_navigation_bar(PHPWG_ROOT_PATH . 'admin.php' . get_query_string_diff(array('start', 'del')), $nb_images, $start, $elements_per_page), 'F_ACTION' => PHPWG_ROOT_PATH . 'admin.php', 'DISPLAY' => $elements_per_page, 'NB_ELEMENTS' => $nb_images));
$available_order_by = array(array(l10n('Rate date'), 'recently_rated DESC'), array(l10n('Rating score'), 'score DESC'), array(l10n('Average rate'), 'avg_rates DESC'), array(l10n('Number of rates'), 'nb_rates DESC'), array(l10n('Sum of rates'), 'sum_rates DESC'), array(l10n('File name'), 'file DESC'), array(l10n('Creation date'), 'date_creation DESC'), array(l10n('Post date'), 'date_available DESC'));
for ($i = 0; $i < count($available_order_by); $i++) {
    $template->append('order_by_options', $available_order_by[$i][0]);
}
$template->assign('order_by_options_selected', array($order_by_index));
$user_options = array('all' => l10n('all'), 'user' => l10n('Users'), 'guest' => l10n('Guests'));
$template->assign('user_options', $user_options);
$template->assign('user_options_selected', array(@$_GET['users']));
$query = '
SELECT i.id,
    i.path,
    i.file,
    i.representative_ext,
    i.rating_score       AS score,
    MAX(r.date)          AS recently_rated,