= NOW() OR date_validity IS NULL'; break; case 'invalid': $query .= ' WHERE date_validity < NOW() AND date_validity IS NOT NULL'; break; default: break; } switch ($_POST['ecard_sort_by']) { case 'date': $query .= ' ORDER BY date_creation'; break; case 'title': $query .= ' ORDER BY title'; break; case 'sender': $query .= ' ORDER BY sender_name'; break; case 'recipient': $query .= ' ORDER BY recipient_name'; break; case 'validity': $query .= ' ORDER BY date_validity'; break; default: $query .= ' ORDER BY date_creation'; break; } switch ($_POST['ecard_sort_order']) { case 'asc': $query .= ' ASC'; break; case 'desc': $query .= ' DESC'; break; default: $query .= ' ASC'; break; } $template->assign('ecard_filter', array( 'status' => $_POST['ecard_status'], 'sort_by' => $_POST['ecard_sort_by'], 'sort_order' => $_POST['ecard_sort_order'], ) ); if (intval($_POST['ecard_nb_ecard_page']) == 0) $piwecard->config['nb_ecard_page'] = 1; else $piwecard->config['nb_ecard_page'] = intval($_POST['ecard_nb_ecard_page']); $piwecard->set_config(); } if (isset($_POST['delete_selected_submit'])) { if (isset($_POST['ecard_to_delete_sure']) && $_POST['ecard_to_delete_sure'] == '1') { if (isset($_POST['ecard_to_delete'])) { foreach ($_POST['ecard_to_delete'] as $ecard_id) { $piwecard->delete_ecard($ecard_id); } array_push($page['infos'], l10n('piwecard_deleted')); } if (isset($_POST['ecard_delete_invalid']) && $_POST['ecard_delete_invalid'] == '1') { $piwecard->delete_allinvalid_ecard(); array_push($page['infos'], l10n('piwecard_invalid_deleted')); } } else { array_push($page['errors'], l10n('You need to confirm deletion')); } } $start = (isset($_GET['start']) ? intval($_GET['start']) : 0); if ($start > $piwecard->get_nb_ecard()) $start = 0; if ($start != 0 AND $piwecard->get_nb_ecard() <= $piwecard->config['nb_ecard_page']) $start = 0; //Create the navigation bar (for more than 1 page) $management_url = PIWECARD_ADMIN.'-management'; $ecard_navbar = array(); $ecard_navbar = create_navigation_bar($management_url, $piwecard->get_nb_ecard(), $start, $piwecard->config['nb_ecard_page']); //DB Query if (strpos($query, 'ORDER BY') === FALSE) { $query .= ' ORDER by date_creation ASC'; } $query .= ' LIMIT '.$start.','.$piwecard->config['nb_ecard_page'].';'; $result = pwg_query($query); while($file = pwg_db_fetch_assoc($result)) { //Recipients $recipients = array(); $query2 = 'SELECT recipient_name, recipient_email FROM piwigo_piwecard WHERE ecard_id="'.$file['ecard_id'].'";'; $result2 = pwg_query($query2); while($row = pwg_db_fetch_assoc($result2)) { array_push($recipients, array( 'name' => $row['recipient_name'], 'email' => $row['recipient_email'], ) ); } $ecard_url = embellish_url(get_absolute_root_url() . './index.php?/ecard/'.$file['ecard_id']); // Check if the ecard is valid $valid = $piwecard->is_valid($file['ecard_id']); $template->append('ecard_file',array( 'id' => $file['ecard_id'], 'title' => $file['title'], 'url' => $ecard_url, 'sender_name' => $file['sender_name'], 'sender_email' => $file['sender_email'], 'recipients' => $recipients, 'date_creation' => strftime('%d/%m/%y %H:%M', strtotime($file['date_creation'])), 'date_validity' => (isset($file['date_validity'])) ? strftime('%d/%m/%y %H:%M', strtotime($file['date_validity'])) : l10n('piwecard_nolimit'), 'valid' => $valid, )); } $nb_ecards_valid_total = str_replace(array('%nb_valid%', '%nb_total%'), array($piwecard->get_nb_valid_ecard(), $piwecard->get_nb_ecard()), l10n('piwecard_nb_ecard_valid_total')); $query = 'SELECT COUNT(DISTINCT sender_email) AS nb_senders, COUNT(DISTINCT recipient_email) AS nb_recipients FROM '.PIWECARD_TABLE.' ORDER BY date_creation;'; $result = pwg_db_fetch_assoc(pwg_query($query)); $nb_distinct_senders_total = (empty($result['nb_senders']) ? 0 : $result['nb_senders']); $nb_distinct_recipients_total = (empty($result['nb_recipients']) ? 0 : $result['nb_recipients']); $nb_distinct_senders_recipients_total = str_replace(array('%nb_senders%', '%nb_recipients%'), array($nb_distinct_senders_total, $nb_distinct_senders_total), l10n('piwecard_nb_sender_recipient_total')); $template->assign('nb_ecards_valid_total', $nb_ecards_valid_total); $template->assign('nb_distinct_senders_recipients_total', $nb_distinct_senders_recipients_total); $template->assign('ecard_nb_ecard_page', $piwecard->config['nb_ecard_page']); $template->assign('navbar', $ecard_navbar); $template->set_filename('plugin_admin_management', dirname(__FILE__) . '/template/admin_management.tpl'); $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_management'); ?>