Changeset 9200 for extensions/ContestResults/include
- Timestamp:
- Feb 13, 2011, 11:12:58 AM (13 years ago)
- Location:
- extensions/ContestResults/include
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/ContestResults/include/cr_comment_picture.php
r6782 r9200 2 2 if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); 3 3 4 // +-----------------------------------------------------------------------+5 4 // Requète simple pour savoir si l'image a participé à des concours 6 // +-----------------------------------------------------------------------+ 7 $query = "SELECT image_id FROM " . CR_TABLE_2 . " WHERE image_id = " . $page['image_id'] . ";"; 8 $results = pwg_query($query); 5 $participation = pwg_query("SELECT image_id FROM " . CR_TABLE_2 . " WHERE image_id = " . $page['image_id'] . ";"); 9 6 10 if(pwg_db_num_rows($ results)){11 $ query ="SELECT7 if(pwg_db_num_rows($participation)){ 8 $results = pwg_query("SELECT 12 9 i.rank, 13 10 i.comment, … … 18 15 ON i.contest_id = c.id 19 16 WHERE i.image_id = " . $page['image_id'] . " 20 ORDER BY c.date_begin DESC;"; 21 $results = pwg_query($query); 17 ORDER BY c.date_begin DESC;"); 22 18 23 19 // Gère plusieurs participations 24 20 $comment = null; 25 while( $result = pwg_db_fetch_assoc($results)){21 while( $result = pwg_db_fetch_assoc($results)) { 26 22 // Rang amélioré 27 if($result['rank'] <= 3) $result['rank'] = l10n('CR_order_'.$result['rank']); 28 else $result['rank'] .= l10n('CR_order_sup'); 23 $result['rank'] = ($result['rank'] <= 3) ? l10n('CR_order_'.$result['rank']) : $result['rank'] . l10n('CR_order_sup'); 29 24 30 25 // Lien vers le concours … … 33 28 34 29 // Ajoute le commentaire après la description 35 $comment .= '<div style="border:1px solid #404040;padding:10px;margin:10px 25%"> 36 <b><a href="' . $result['contest_link'] .'">' . $result['contest_name'] . '</a></b> 37 :: <u>' . $result['rank'] . '</u> 30 $comment .= '<div class="CR_comment"> 31 <b><a href="' . $result['contest_link'] .'">' . $result['contest_name'] . '</a></b> :: <u>' . $result['rank'] . ' ' . l10n('CR_place') . '</u> 38 32 <p>' . trigger_event('render_CR_content', $result['comment']) . '</p> 39 33 </div>'; … … 42 36 $template->append('related_categories', '<a href="' . CR_PUBLIC . '">' . l10n('Contests') . '</a>' . $conf['level_separator'] . '<a href="' . $result['contest_link'] . '">' . $result['contest_name'] . '</a>'); 43 37 } 38 39 // style utilisé pour les blocs des concours 40 $css = '<style type="text/css"> 41 .CR_comment { 42 border:1px solid #404040; 43 padding:10px; 44 margin:10px 20%; 45 } 46 </style>'; 44 47 45 48 $template->assign('COMMENT_IMG', $template->get_template_vars('COMMENT_IMG') . $comment); 49 $template->assign('PLUGIN_PICTURE_BEFORE', $template->get_template_vars('PLUGIN_PICTURE_BEFORE') . $css); 46 50 } 47 48 51 ?> -
extensions/ContestResults/include/cr_main.php
r6768 r9200 3 3 4 4 // +-----------------------------------------------------------------------+ 5 // Liste des concours5 // Liste des concours 6 6 // +-----------------------------------------------------------------------+ 7 $query = "SELECT id, name, visible, date_begin, date_end, status, logo, summary FROM " . CR_TABLE_1 . " ORDER BY date_begin DESC;"; 8 $contests = pwg_query($query); 7 $contests = pwg_query("SELECT 8 id, 9 name, 10 visible, 11 date_begin, 12 date_end, 13 status, 14 logo, 15 summary 16 FROM " . CR_TABLE_1 . " 17 ORDER BY date_begin DESC;"); 9 18 10 while ($contest = pwg_db_fetch_assoc($contests)){11 if ($contest['visible'] OR is_admin()){19 while ($contest = pwg_db_fetch_assoc($contests)) { 20 if ($contest['visible'] OR is_admin()) { 12 21 // infos sur le concours 13 22 $item = array( … … 19 28 'DATE_BEGIN' => format_date($contest['date_begin']), 20 29 'LOGO' => $contest['logo'], 21 'SUMMARY' => trigger_event('render_CR_content', $contest['summary']),30 'SUMMARY' => CR_cut_string(trigger_event('render_CR_content', $contest['summary']), 350), 22 31 'URL' => CR_PUBLIC . $contest['id'] . '-' . str2url(trigger_event('render_CR_content', $contest['name'])), 23 32 ); 24 33 25 34 // podium si terminé 26 if ($contest['status'] == 'finished'){27 $ query ="SELECT35 if ($contest['status'] == 'finished') { 36 $results = pwg_query("SELECT 28 37 i.id, 29 38 i.name, … … 38 47 WHERE c.contest_id = " . $contest['id'] . " 39 48 ORDER BY c.rank ASC 40 LIMIT 3 OFFSET 0;"; 41 $results = pwg_query($query); 49 LIMIT 3 OFFSET 0;"); 42 50 43 while ($result = pwg_db_fetch_assoc($results)){51 while ($result = pwg_db_fetch_assoc($results)) { 44 52 $item['RESULTS'][$result['rank']] = array( 45 53 'RANK' => $result['rank'], … … 50 58 } 51 59 52 $template->append('contests _'.$contest['status'], $item);60 $template->append('contests', $item); 53 61 } 54 62 } -
extensions/ContestResults/include/cr_menubar.php
r6768 r9200 3 3 4 4 // +-----------------------------------------------------------------------+ 5 // Trigger 5 // Triggers 6 6 // +-----------------------------------------------------------------------+ 7 global $conf;8 7 $config = unserialize($conf['ContestResults']); 9 if ($config['menubar_mode']['block'])8 if ($config['menubar_mode']['block']) { 10 9 add_event_handler('blockmanager_register_blocks', 'CR_register_menubar_blocks'); 10 } 11 11 add_event_handler('blockmanager_apply', 'CR_menubar_apply'); 12 12 … … 14 14 // Ajouter un block 15 15 // +-----------------------------------------------------------------------+ 16 function CR_register_menubar_blocks($menu_ref_arr) {16 function CR_register_menubar_blocks($menu_ref_arr) { 17 17 $menu = &$menu_ref_arr[0]; 18 if ($menu->get_id() != 'menubar') return;18 if ($menu->get_id() != 'menubar') { return; } 19 19 $menu->register_block(new RegisteredBlock('mbContestResults', l10n('Contests'), 'ContestResults')); 20 20 } 21 21 22 22 // +-----------------------------------------------------------------------+ 23 // Remplis les block23 // Remplis les block 24 24 // +-----------------------------------------------------------------------+ 25 function CR_menubar_apply($menu_ref_arr) {25 function CR_menubar_apply($menu_ref_arr) { 26 26 global $template, $conf; 27 27 $config = unserialize($conf['ContestResults']); 28 28 $menu = &$menu_ref_arr[0]; 29 29 30 // Block Contest 31 if (($block = $menu->get_block('mbContestResults')) != null){30 // Block Contest - un nouveau bloc dans le menu 31 if (($block = $menu->get_block('mbContestResults')) != null) { 32 32 $data = array(); 33 34 // on récupère les concours 35 $contests = pwg_query("SELECT 36 id, 37 name, 38 visible, 39 status, 40 date_begin, 41 date_end 42 FROM " . CR_TABLE_1 . " 43 ORDER BY date_begin DESC;"); 33 44 34 $query = "SELECT id, name, visible, status, date_begin, date_end 35 FROM " . CR_TABLE_1 . " 36 ORDER BY date_begin DESC 37 LIMIT " . $config['menubar_block']['number'] . " OFFSET 0;"; 38 $result = pwg_query($query); 39 40 while($contest = pwg_db_fetch_assoc($result)){ 41 if($contest['visible'] OR is_admin()){ 45 $m = 0; // copteur pour limiter le nombre de concours affichés 46 while($contest = pwg_db_fetch_assoc($contests)){ 47 if (($contest['visible'] OR is_admin()) AND $m < $config['menubar_block']['number']) { 42 48 array_push($data, array( 43 49 'URL' => CR_PUBLIC . $contest['id'] . '-' . str2url(trigger_event('render_CR_content', $contest['name'])), 44 50 'LABEL' => trigger_event('render_CR_content', $contest['name']), 45 51 'DATE' => format_date($contest['date_begin']) . ' - ' . format_date($contest['date_end']), 46 'STATUS' => $contest['status'] 52 'STATUS' => $contest['status'], 53 'VISIBLE' => $contest['visible'] 47 54 )); 48 55 } 56 $m++; 49 57 } 50 58 51 if(!empty($data)){ 59 // Finalement on rempli le bloc avec les concours 60 if (!empty($data)) { 52 61 $template->set_template_dir(CR_PATH . 'template/'); 53 62 $block->set_title('<a href="' . CR_PUBLIC . '">' . l10n('Contests') . '</a>'); … … 57 66 } 58 67 59 // Block Menu 60 if ($config['menubar_mode']['link'] AND $config['menubar_link']['menu'] AND ($block = $menu->get_block('mbMenu')) != null){68 // Block Menu - ajout d'un lien dans le bloc Menu 69 if ($config['menubar_mode']['link'] AND $config['menubar_link']['menu'] AND ($block = $menu->get_block('mbMenu')) != null) { 61 70 array_push($block->data, array( 62 71 'URL' => CR_PUBLIC, … … 66 75 } 67 76 68 // Block Specials 77 // Block Specials - ajout d'un lien dans le bloc Specials 69 78 if($config['menubar_mode']['link'] AND $config['menubar_link']['specials'] AND ($block = $menu->get_block('mbSpecials')) != null){ 70 79 array_push($block->data, array( -
extensions/ContestResults/include/cr_page.php
r6782 r9200 3 3 4 4 // +-----------------------------------------------------------------------+ 5 // Page d'un concours5 // Page d'un concours 6 6 // +-----------------------------------------------------------------------+ 7 if (is_admin()){8 $template->assign('U_EDIT', CR_ADMIN . '& tab=edit&contest_id=' . $page['contest']);9 $template->assign('U_RESULTS', CR_ADMIN . '& tab=results&contest_id=' . $page['contest']);7 if (is_admin()) { 8 $template->assign('U_EDIT', CR_ADMIN . '&tab=edit&contest_id=' . $page['contest'] . '&redirect=page'); 9 $template->assign('U_RESULTS', CR_ADMIN . '&tab=results&contest_id=' . $page['contest']); 10 10 } 11 11 12 12 // Infos du concours 13 $query = "SELECT * FROM " . CR_TABLE_1 . " WHERE id=" . $page['contest'] . ";"; 14 $results = pwg_query($query); 15 $contest = pwg_db_fetch_assoc($results); 13 $contest = pwg_query("SELECT * FROM " . CR_TABLE_1 . " WHERE id=" . $page['contest'] . ";"); 16 14 17 if(pwg_db_num_rows($results) AND ($contest['visible'] OR is_admin())){ 15 if (pwg_db_num_rows($contest)) { 16 $contest = pwg_db_fetch_assoc($contest); 17 18 // Concours non-publique 19 if (!$contest['visible']) { 20 check_status(ACCESS_ADMINISTRATOR); 21 } 22 18 23 // Paramètres généraux 19 24 $template->assign(array( … … 29 34 )); 30 35 31 // Quatre zones texte 32 foreach(array('presentation','rules','prices','final') AS $key){ 33 $contest[$key.'_display'] = unserialize($contest[$key.'_display']); 34 if($contest[$key.'_display']['pending']) $template->assign(strtoupper($key).'_PENDING', true); 35 if($contest[$key.'_display']['finished']) $template->assign(strtoupper($key).'_FINISHED', true); 36 // Les quatre zones texte 37 foreach (array('presentation','rules','prices','final') AS $key) { 36 38 $template->assign(strtoupper($key), trigger_event('render_CR_content', $contest[$key])); 37 39 } 38 40 39 41 // Affichage des résultats 40 if ($contest['status'] == 'finished'){42 if ($contest['status'] == 'finished') { 41 43 // Infos des résultats 42 $query = "SELECT * FROM " . CR_TABLE_2 . " WHERE contest_id=" . $contest['id'] . " ORDER BY rank ASC;"; 43 $results = pwg_query($query); 44 $results = pwg_query("SELECT * FROM " . CR_TABLE_2 . " WHERE contest_id=" . $contest['id'] . " ORDER BY rank ASC;"); 44 45 45 while ($result = pwg_db_fetch_assoc($results)){46 while ($result = pwg_db_fetch_assoc($results)) { 46 47 // Infos de l'image 47 48 $query = "SELECT … … 59 60 60 61 // retrieving category informations 61 $query = "SELECT id, name, permalink, uppercats 62 $query = "SELECT 63 id, 64 name, 65 permalink, 66 uppercats 62 67 FROM " . CATEGORIES_TABLE." 63 68 WHERE id = " . $image['category_id'] . ";"; … … 72 77 73 78 // Template 74 if (in_array($result['rank'], array(1,2,3))){79 if (in_array($result['rank'], array(1,2,3))) { 75 80 $data = array( 76 81 'RANK' => $result ['rank'], … … 80 85 'IMAGE_NAME' => (empty($image['name'])) ? get_name_from_file($image['file']) : $image['name'], 81 86 'COMMENT' => CR_cut_string(trigger_event('render_CR_content', $result['comment']), 450), 82 87 ); 83 88 }else{ 84 89 $data = array( … … 96 101 $template->set_filenames(array('index'=> dirname(__FILE__).'/../template/cr_page.tpl')); 97 102 98 } else{103 } else { 99 104 page_not_found(l10n('CR_notavailable')); 100 105 } -
extensions/ContestResults/include/functions.php
r6782 r9200 3 3 4 4 // Racourcis un texte et ajoute une ellipse 5 function CR_cut_string($string, $limit) {5 function CR_cut_string($string, $limit) { 6 6 include_once(CR_PATH . 'include/cutstring.class.php'); 7 if (strlen(str_replace("\r\n", "\n", strip_tags($string))) > $limit){7 if (strlen(str_replace("\r\n", "\n", strip_tags($string))) > $limit) { 8 8 $output = new HtmlCutString($string, $limit); 9 9 return ($output->cut()).'...'; 10 } else{10 } else { 11 11 return $string; 12 12 } … … 14 14 15 15 // Recupère le nom d'un coucours à partir de l'id 16 function get_contest_name($id) {17 $ query= pwg_query("SELECT name FROM " . CR_TABLE_1 . " WHERE id = " . $id . ";");18 if (pwg_db_num_rows($query)){19 $ result = pwg_db_fetch_assoc($query);20 return $ result['name'];21 } else{16 function get_contest_name($id) { 17 $contest = pwg_query("SELECT name FROM " . CR_TABLE_1 . " WHERE id = " . $id . ";"); 18 if (pwg_db_num_rows($contest)) { 19 $contest = pwg_db_fetch_assoc($contest); 20 return $contest['name']; 21 } else { 22 22 return null; 23 23 } -
extensions/ContestResults/include/index.php
r6768 r9200 1 1 <?php 2 2 // +-----------------------------------------------------------------------+ 3 // | PhpWebGallery - a PHP based picture gallery | 4 // | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | 5 // | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | 3 // | Piwigo - a PHP based picture gallery | 6 4 // +-----------------------------------------------------------------------+ 7 // | file : $Id: index.php 1912 2007-03-16 06:30:07Z rub $ 8 // | last update : $Date: 2007-03-16 07:30:07 +0100 (ven, 16 mar 2007) $ 9 // | last modifier : $Author: rub $ 10 // | revision : $Revision: 1912 $ 5 // | Copyright(C) 2008-2010 Piwigo Team http://piwigo.org | 6 // | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | 7 // | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | 11 8 // +-----------------------------------------------------------------------+ 12 9 // | This program is free software; you can redistribute it and/or modify |
Note: See TracChangeset
for help on using the changeset viewer.