[ Príspevok: 1 ] 
AutorSpráva
Offline

Prevádzkovateľ fóra
Prevádzkovateľ fóra
Sort Topics Alphabetically

Registrovaný: 01.05.05
Príspevky: 12424
Témy: 1447 | 1447
Bydlisko: Bratislava
Vek: 32
NapísalOffline : 13.10.2006 9:13 | Sort Topics Alphabetically

Kód:
##############################################################
## MOD Title: Sort Topics Alphabetically
## MOD Author: pentapenguin < pentapenguin@bluebottle.com > (Jeremy Conley) http://www.pentapenguin.com
## MOD Description: This MOD allows you to sort topics alphabetically within a forum.
## MOD Version: 0.2.0
##
## Installation Level: Easy
## Installation Time: 10 Minutes
##
## Files To Edit: 3
## viewforum.php
## langauge/lang_english/lang_main.php
## templates/subSilver/viewforum_body.tpl
##
## Included Files: n/a
##
## License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
##############################################################
## For security purposes, please check: http://www.phpbb.com/mods/
## for the latest version of this MOD. Although MODs are checked
## before being allowed in the MODs Database there is no guarantee
## that there are no security problems within the MOD. No support
## will be given for MODs not found within the MODs Database which
## can be found at http://www.phpbb.com/mods/
##############################################################
## Author Notes:
## Optional step: if you have CyberAlien's eXtreme Styles MOD (http://www.phpbb.com/phpBB/viewtopic.php?t=125251),
## you can copy the file in contrib/admin/xs_sort_topics_alphabetically.cfg to admin/xs_sort_topics_alphabetically.cfg and you will
## be automatically notified if there's an update available when you use the "check for updates" function.
##
## This MOD is EasyMOD friendly! (http://area51.phpbb.com/phpBB/viewforum.php?sid=&f=17)
##
## For additional language and style downloads, please visit http://www.pentapenguin.com/forum/viewtopic.php?t=206
##
## To update to 0.2.0, see update_sort_topics_alphabetically_from_0.1.0_to_0.2.0.txt
##############################################################
## MOD History:
##   2005-11-15 - Version 0.2.0
##      - Fixed many bugs.
##      - Enabled better customization for more letters or letters in other non Latin based alphabets.
##
##   2004-11-10 - Version 0.1.0
##      - First Public Beta
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################


#
#-----[ OPEN ]------------------------------------------
#
viewforum.php


#
#-----[ FIND ]------------------------------------------
#
else
{
   $mark_read = '';
}


#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start Sort Topics Alphabetically MOD
$letters_array = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
$start_letter = ( isset($HTTP_GET_VARS['start_letter']) ) ? htmlspecialchars($HTTP_GET_VARS['start_letter']) : '';
$start_letter = str_replace("\'", "''", $start_letter);

if ( !in_array($start_letter, $letters_array) )
{
   $start_letter = '';
}
// End Sort Topics Alphabetically MOD


#
#-----[ FIND ]------------------------------------------
#
   $topics_count = ( $forum_row['forum_topics'] ) ? $forum_row['forum_topics'] : 1;

   $limit_topics_time = '';
   $topic_days = 0;


#
#-----[ BEFORE, ADD ]------------------------------------------
#

   // Start Sort Topics Alphabetically MOD
   if ( $start_letter )
   {
      $sql = 'SELECT COUNT(topic_id) AS forum_topics
         FROM ' . TOPICS_TABLE . "
         WHERE forum_id = $forum_id
            AND topic_title LIKE '$start_letter%'";
         
      if ( !($result = $db->sql_query($sql)) )
      {
         message_die(GENERAL_ERROR, 'Could not get topic counts for letter search', '', __LINE__, __FILE__, $sql);
      }
      
      $row = $db->sql_fetchrow($result);
      
      $topics_count = ( $row['forum_topics'] ) ? $row['forum_topics'] : 1;
      
      $db->sql_freeresult($result);
   }
   
   else
   {
   // End Sort Topics Alphabetically MOD


#
#-----[ AFTER, ADD ]------------------------------------------
#
# Note: add the following after the code in the FIND statement above.
#

   // Start Sort Topics Alphabetically MOD
   }
   // End Sort Topics Alphabetically MOD


#
#-----[ FIND ]------------------------------------------
#
# Note: this is part of a large SQL query but this part is on its own line.
#
      AND t.topic_type <> " . POST_ANNOUNCE . "


#
#-----[ AFTER, ADD ]------------------------------------------
#
      AND t.topic_title LIKE '$start_letter%'


#
#-----[ FIND ]------------------------------------------
#
# Note: the full line to find on a fresh phpBB installation is: 'S_POST_DAYS_ACTION' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=" . $forum_id . "&amp;start=$start"))
#
   'S_POST_DAYS_ACTION' =>


#
#-----[ IN-LINE FIND ]------------------------------------------
#
start=$start


#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
&amp;start_letter=$start_letter


#
#-----[ FIND ]------------------------------------------
#
# Note: the full line to find on a fresh phpBB installation is: 'PAGINATION' => generate_pagination("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&amp;topicdays=$topic_days", $topics_count, $board_config['topics_per_page'], $start),
#
      'PAGINATION' =>


#
#-----[ IN-LINE FIND ]------------------------------------------
#
$topic_days


#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
&amp;start_letter=$start_letter


#
#-----[ FIND ]------------------------------------------
#
$template->pparse('body');


#
#-----[ BEFORE, ADD ]------------------------------------------
#

// Start Sort Topics Alphabetically MOD

// Begin Configuration Section
// Change this to whatever you want the divider to be. Be sure to keep both apostrophies.
$divider = ', ';
// End Configuration Section

// Do not change anything below this line.
$total_letters_count = count($letters_array);
$this_letter_number = 0;

$template->assign_vars(array(
   'L_SORT_ALPHABETICALLY' => $lang['Sort_alphabetically'],
   'L_ALL_TOPICS' => $lang['All_Topics'],
   'DIVIDER' => $divider,
   'U_ALL_TOPICS' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&amp;start_letter=&amp;topicdays=$topic_days"),
));

foreach ( $letters_array as $letter )
{
   $this_letter_number++;
   
   $template->assign_block_vars("alphabetical_sort", array(
      'LETTER' => $letter,
      'U_LETTER' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&amp;start_letter=$letter&amp;topicdays=$topic_days"),
      'DIVIDER' => ( $this_letter_number != $total_letters_count ) ? $divider : '',
   ));
}
//End Sort Topics Alphabetically MOD


#
#-----[ OPEN ]------------------------------------------
#
language/lang_english/lang_main.php


#
#-----[ FIND ]------------------------------------------
#
# Note: the full line to find on a fresh phpBB installation is: $lang['Display_topics'] = 'Display topics from previous';
#
$lang['Display_topics']


#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start Sort Topics Alphabetically MOD
$lang['Sort_alphabetically'] = 'Sort topics alphabetically';
// End Sort Topics Alphabetically MOD


#
#-----[ FIND ]------------------------------------------
#
# Note: the full line to find on a fresh phpBB installation is: $lang['No_topics_post_one'] = 'There are no posts in this forum.<br />Click on the <b>Post New Topic</b> link on this page to post one.';
#
$lang['No_topics_post_one']


#
#-----[ REPLACE WITH ]------------------------------------------
#
// Variable changed by the Sort Topics Alphabetically MOD
$lang['No_topics_post_one'] = 'Either there are no posts in this forum, or there are no matches for the letter you selected.<br />Click on the <b>Post New Topic</b> link on this page to start a new post or select another letter.';


#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/viewforum_body.tpl


#
#-----[ FIND ]------------------------------------------
#
     <th align="center" class="thCornerR" nowrap="nowrap">&nbsp;{L_LASTPOST}&nbsp;</th>
   </tr>


#
#-----[ AFTER, ADD ]------------------------------------------
#

   <tr>
      <td class="catBottom" align="center" valign="middle" colspan="6" height="28">
      <span class="genmed">{L_SORT_ALPHABETICALLY}: <a href="{U_ALL_TOPICS}" style="font-weight: bold;">{L_ALL_TOPICS}</a>{DIVIDER}
         <!-- BEGIN alphabetical_sort -->
         <a href="{alphabetical_sort.U_LETTER}" style="font-weight: bold;">{alphabetical_sort.LETTER}</a>{alphabetical_sort.DIVIDER}
         <!-- END alphabetical_sort -->
      </span>
      </td>
   </tr>


#
#-----[ FIND ]------------------------------------------
#
      <input type="submit" class="liteoption" value="{L_GO}" name="submit" />
      </span></td>
   </tr>


#
#-----[ AFTER, ADD ]------------------------------------------
#
   <tr>
      <td class="catBottom" align="center" valign="middle" colspan="6" height="28">
      <span class="genmed">{L_SORT_ALPHABETICALLY}: <a href="{U_ALL_TOPICS}" style="font-weight: bold;">{L_ALL_TOPICS}</a>{DIVIDER}
         <!-- BEGIN alphabetical_sort -->
         <a href="{alphabetical_sort.U_LETTER}" style="font-weight: bold;">{alphabetical_sort.LETTER}</a>{alphabetical_sort.DIVIDER}
         <!-- END alphabetical_sort -->
      </span>
      </td>
   </tr>


#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM


_________________
SilverStone SST CS01 | Corsair SF600 600W SFX | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 (16 Cores / 32 Threads) & Noctua NH-U9DX i4 | Kingston HyperX Savage 32 GB DDR4 2400 MHz | PNY NVIDIA Quadro K1200 DP 4 GB DDR5 | Intel SSD 750 1.2 TB NVMe & Intel SSD 730 240 GB SATA & Seagate BackUp Plus Portable 12 TB USB | 31.5" 4K LCD EIZO FlexScan EV3237 & 2 x 24" LCD EIZO FlexScan EV2451 | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech Wireless G700s | Harman Kardon Nova | Microsoft Windows 7 Ultimate | APC Back-UPS ES 700 | Lenovo ThinkPad X250 - Intel Core i7 5600U, 8 GB DDR3 1600 MHz, Intel HD Graphics 5500, SanDisk SSD 512 GB, 12.5 FHD LED IPS, WWAN 3G 4G LTE, Microsoft Windows 7 Ultimate | Nintendo Classic Mini | BlackBerry Passport 96 GB
 [ Príspevok: 1 ] 


Sort Topics Alphabetically



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

bubble sort

v Assembler, C, C++, Pascal, Java

1

322

07.10.2011 11:24

nBXXL

V tomto fóre nie sú ďalšie neprečítané témy.

*Strand sort v Ccku*

v Assembler, C, C++, Pascal, Java

5

555

27.03.2008 21:52

juho

V tomto fóre nie sú ďalšie neprečítané témy.

Nové příspěvky odshora - posts sort newest first

v Redakčné systémy

7

287

13.03.2007 10:21

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Joomla: pridat sort podla uzivatela do komponentu

v Redakčné systémy

0

254

19.09.2011 23:44

KViki



© 2005 - 2017 PCforum, edited by JanoF