PageRenderTime 42ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/modules/weblinks/global.functions.php

http://viet-group.googlecode.com/
PHP | 108 lines | 95 code | 7 blank | 6 comment | 25 complexity | eba4c54f0ad6aa1f8275990bee740648 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. <?php
  2. /**
  3. * @Project NUKEVIET 3.0
  4. * @Author VINADES.,JSC (contact@vinades.vn)
  5. * @copyright 2009
  6. * @createdate 12/31/2009 0:51
  7. */
  8. if ( ! defined( 'NV_MAINFILE' ) ) die( 'Stop!!!' );
  9. function _substr($str, $length, $minword = 3)
  10. {
  11. $sub = '';
  12. $len = 0;
  13. foreach (explode(' ', $str) as $word)
  14. {
  15. $part = (($sub != '') ? ' ' : '') . $word;
  16. $sub .= $part;
  17. $len += strlen($part);
  18. if (strlen($word) > $minword && strlen($sub) >= $length)
  19. {
  20. break;
  21. }
  22. }
  23. return $sub . (($len < strlen($str)) ? '...' : '');
  24. }
  25. function nv_news_page( $base_url, $num_items, $per_page, $start_item, $add_prevnext_text = true )
  26. {
  27. global $lang_global;
  28. $total_pages = ceil( $num_items / $per_page );
  29. if ( $total_pages == 1 ) return '';
  30. @$on_page = floor( $start_item / $per_page ) + 1;
  31. $page_string = "";
  32. if ( $total_pages > 10 )
  33. {
  34. $init_page_max = ( $total_pages > 3 ) ? 3 : $total_pages;
  35. for ( $i = 1; $i <= $init_page_max; $i++ )
  36. {
  37. $href = "href=\"" . $base_url . "/page-" . ( ( $i - 1 ) * $per_page ) . "\"";
  38. $page_string .= ( $i == $on_page ) ? "<strong>" . $i . "</strong>" : "<a " . $href . ">" . $i . "</a>";
  39. if ( $i < $init_page_max ) $page_string .= ", ";
  40. }
  41. if ( $total_pages > 3 )
  42. {
  43. if ( $on_page > 1 && $on_page < $total_pages )
  44. {
  45. $page_string .= ( $on_page > 5 ) ? " ... " : ", ";
  46. $init_page_min = ( $on_page > 4 ) ? $on_page : 5;
  47. $init_page_max = ( $on_page < $total_pages - 4 ) ? $on_page : $total_pages - 4;
  48. for ( $i = $init_page_min - 1; $i < $init_page_max + 2; $i++ )
  49. {
  50. $href = "href=\"" . $base_url . "/page-" . ( ( $i - 1 ) * $per_page ) . "\"";
  51. $page_string .= ( $i == $on_page ) ? "<strong>" . $i . "</strong>" : "<a " . $href . ">" . $i . "</a>";
  52. if ( $i < $init_page_max + 1 )
  53. {
  54. $page_string .= ", ";
  55. }
  56. }
  57. $page_string .= ( $on_page < $total_pages - 4 ) ? " ... " : ", ";
  58. }
  59. else
  60. {
  61. $page_string .= " ... ";
  62. }
  63. for ( $i = $total_pages - 2; $i < $total_pages + 1; $i++ )
  64. {
  65. $href = "href=\"" . $base_url . "/page-" . ( ( $i - 1 ) * $per_page ) . "\"";
  66. $page_string .= ( $i == $on_page ) ? "<strong>" . $i . "</strong>" : "<a " . $href . ">" . $i . "</a>";
  67. if ( $i < $total_pages )
  68. {
  69. $page_string .= ", ";
  70. }
  71. }
  72. }
  73. }
  74. else
  75. {
  76. for ( $i = 1; $i < $total_pages + 1; $i++ )
  77. {
  78. $href = "href=\"" . $base_url . "/page-" . ( ( $i - 1 ) * $per_page ) . "\"";
  79. $page_string .= ( $i == $on_page ) ? "<strong>" . $i . "</strong>" : "<a " . $href . ">" . $i . "</a>";
  80. if ( $i < $total_pages )
  81. {
  82. $page_string .= ", ";
  83. }
  84. }
  85. }
  86. if ( $add_prevnext_text )
  87. {
  88. if ( $on_page > 1 )
  89. {
  90. $href = "href=\"" . $base_url . "/page-" . ( ( $on_page - 2 ) * $per_page ) . "\"";
  91. $page_string = "&nbsp;&nbsp;<span><a " . $href . ">" . $lang_global['pageprev'] . "</a></span>&nbsp;&nbsp;" . $page_string;
  92. }
  93. if ( $on_page < $total_pages )
  94. {
  95. $href = "href=\"" . $base_url . "/page-" . ( $on_page * $per_page ) . "\"";
  96. $page_string .= "&nbsp;&nbsp;<span><a " . $href . ">" . $lang_global['pagenext'] . "</a></span>";
  97. }
  98. }
  99. return $page_string;
  100. }
  101. ?>