Jump to content

PsyCho0

Members
  • Posts

    112
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by PsyCho0

  1. Hi all,

    I made a new mod, called Perfect pagination, i worked alot for this mode

     

    Features:

    - It recognize what category you are viewing and alters the number of pages.

    - Previous Page link disappear if you are on page 1.

    - First Page link if you are on page > 1, link disappear if you are on page 1.

    - Last Page link disappear if you view the last page.

    - Next Page link disappear if you view the last page.

    - same goes if you view a category.

    - occupy little place on your website.

    - easy to install and easy to custom design.

     

    Some screenshoots:

     

    pagination_1.jpg

     

    pagination_2.jpg

     

    pagination_3.jpg

     

    Install:

     

    Open sources/rankings.php and find:

     

    $result = $DB->select_limit("SELECT *
                                     FROM {$CONF['sql_prefix']}_sites sites, {$CONF['sql_prefix']}_stats stats
                                     WHERE sites.username = stats.username AND active = 1 {$category_sql}
                                     ORDER BY {$order_by}
                                    ", $CONF['num_list'], $start, __FILE__, __LINE__);

     

    After add this:

     

    // Select count
    $result2 = $DB->query("SELECT *
                                     FROM {$CONF['sql_prefix']}_sites sites, {$CONF['sql_prefix']}_stats stats
                                     WHERE sites.username = stats.username {$category_sql}
                                     ORDER BY {$order_by}", __FILE__, __LINE__);
    
    // Pagination
    $numrows = mysql_num_rows($result2);
    if ($start < $CONF['num_list']) {
    $page = "0";
    }
    else {
    $page = $start / $CONF['num_list'];
    }
    $pagescount = ceil($numrows/$CONF['num_list']);
    
    // Paginare
    $txt['nav'] = '';
    if ($pagescount > 1) {
       if (($page + 1) > 1) {
    $back = (($page - 1) * $CONF['num_list']) + 1;
    $txt['nav'] .= ' <a href="index.php?start=1';
                      if(isset($FORM['method'])) { $txt['nav'] .="&method={$ranking_method}"; }
                      if(isset($FORM['cat']) && strlen($FORM['cat']) != "0" ) { $txt['nav'] .= "&cat={$category_escaped}"; }
                      $txt['nav'] .= '" class="border2" title="First"><<</a> ';
    $txt['nav'] .= ' <a href="index.php?start='.$back.'';
                      if(isset($FORM['method'])) { $txt['nav'] .="&method={$ranking_method}"; }
                      if(isset($FORM['cat']) && strlen($FORM['cat']) != "0" ) { $txt['nav'] .= "&cat={$category_escaped}"; }
                      $txt['nav'] .= '" class="border2" title="Back"><</a> ';
    }
       for ($page_number = 1; $page_number <= $pagescount; $page_number++) {
    $start_page = (($page_number - 1) * $CONF['num_list']) + 1;
          if ($page_number == $page) {
             $txt['nav'] .= ' <a href="index.php?start='. $start_page .'';
                      if(isset($FORM['method'])) { $txt['nav'] .="&method={$ranking_method}"; }
                      if(isset($FORM['cat']) && strlen($FORM['cat']) != "0" ) { $txt['nav'] .= "&cat={$category_escaped}"; }
                      $txt['nav'] .= '" class="border3" title="Curent page '. $page_number .'">'. $page_number .'</a> ';
    }
           else {
              if ($page_number >= $page - 8 && $page_number <= $page + 8) {
             $txt['nav'] .= ' <a href="index.php?start='. $start_page .'';
                      if(isset($FORM['method'])) { $txt['nav'] .="&method={$ranking_method}"; }
                      if(isset($FORM['cat']) && strlen($FORM['cat']) != "0" ) { $txt['nav'] .= "&cat={$category_escaped}"; }
                      $txt['nav'] .= '" class="border2" title="Page '. $page_number .'">'. $page_number .'</a> ';
    }
             else {
                if ($page_number > $page && $dots_after != true) {
                   $txt['nav'] .= ' ...';
                   $dots_after = true;
                } elseif ($page_number < $page && $dots_before != true) {
                   $txt['nav'] .= ' ...';
                   $dots_before = true;
                }
             }
          }
       }
       if (($page + 1) < $pagescount) {
    $next = (($page+1) * $CONF['num_list']) + 1;
    $last = (($pagescount - 1) * $CONF['num_list']) + 1;
             $txt['nav'] .= ' <a href="index.php?start='. $next .'';
                      if(isset($FORM['method'])) { $txt['nav'] .="&method={$ranking_method}"; }
                      if(isset($FORM['cat']) && strlen($FORM['cat']) != "0" ) { $txt['nav'] .= "&cat={$category_escaped}"; }
                      $txt['nav'] .= '" class="border2" title="Next">></a> ';
             $txt['nav'] .= ' <a href="index.php?start='. $last .'';
                      if(isset($FORM['method'])) { $txt['nav'] .="&method={$ranking_method}"; }
                      if(isset($FORM['cat']) && strlen($FORM['cat']) != "0" ) { $txt['nav'] .= "&cat={$category_escaped}"; }
                      $txt['nav'] .= '" class="border2" title="Last">>></a> ';
    }
    }
    
    $TMPL['pagination'] = $txt['nav'];

     

    Save & close.

     

    After open skins/YOURSKIN/wrapper.html

     

    Place the following anywhere in wrapper.html where you would like to display the Pagination. If you like you can remove center tags, but i think it will look nicer with it.

     

    <center>{$pagination}</center>

     

    Save & close.

     

    After open your CSS style file and add this:

     

    .border2 {
    border: 1px solid #CCCCCC;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px;
    background-color: #fff;
    color: #2d2d2d;
    padding:1px;
    }
    .border3 {
    border: 1px solid #2d2d2d;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px;
    color: #2d2d2d;
    background-color: #efefef;
    font-weight: bold;
    padding:1px;
    }

     

    Save & close. Ok that`s all  I am very tired and i hope that i didn`t missing something.

     

    Ps: Next week i will make a high quality template.

     

    By Me!!!

     

     

  2. If you backup your Topsite Database throught the Topsite control panel, it dont backup completly. Its missing one table.

     

    Please update the following file, so everything get backed up correctly and you dont recieve errors once you uploaded your backuped data

     

    open sources/admin/backup_database.php

    find:

    else {
          $tables_to_backup = array(
            "{$CONF['sql_prefix']}_settings" => true,
            "{$CONF['sql_prefix']}_bad_words" => true,
            "{$CONF['sql_prefix']}_ban" => true,
            "{$CONF['sql_prefix']}_custom_pages" => true,
            "{$CONF['sql_prefix']}_etc" => true,
            "{$CONF['sql_prefix']}_categories" => true,
            "{$CONF['sql_prefix']}_ip_log" => false,
            "{$CONF['sql_prefix']}_reviews" => true,
            "{$CONF['sql_prefix']}_sessions" => false,
            "{$CONF['sql_prefix']}_sites" => true,
            "{$CONF['sql_prefix']}_stats" => true,
          );

     

    replace with

    else {
          $tables_to_backup = array(
            "{$CONF['sql_prefix']}_settings" => true,
            "{$CONF['sql_prefix']}_bad_words" => true,
            "{$CONF['sql_prefix']}_ban" => true,
            "{$CONF['sql_prefix']}_custom_pages" => true,
            "{$CONF['sql_prefix']}_etc" => true,
            "{$CONF['sql_prefix']}_categories" => true,
            "{$CONF['sql_prefix']}_ip_log" => false,
            "{$CONF['sql_prefix']}_reviews" => true,
            "{$CONF['sql_prefix']}_sessions" => false,
            "{$CONF['sql_prefix']}_sites" => true,
            "{$CONF['sql_prefix']}_sites_edited" => true,
            "{$CONF['sql_prefix']}_stats" => true,
          );

×
×
  • Create New...