pastebin

Paste Search Dynamic
Recent pastes
BIM
  1. <?php
  2. // by 1uffakind
  3. // BIM.php
  4. // figure out what B-I-M stands for, and whence it came for a discount on your next project :)
  5.  
  6. /* --- basic defines and the bootstrap, go BIM! --- */
  7. require_once(dirname(__file__).'/../cfg.php');
  8.  
  9. /* --- log test --- */
  10. util::do_log('BIM','bim started...'.date('r',time()));
  11.  
  12. /* --- user? --- */
  13. $user = new user();
  14.  
  15. /* --- page? --- */
  16. /*
  17. $p = new p(array(),$user);
  18. echo '<pre>page p: '.print_r($p,true).'</pre>';
  19. */
  20.  
  21. $db = new dbcomm();
  22.  
  23.  
  24. $p = null;
  25. $phndl = null;
  26.  
  27. if ( array_key_exists('p',$_REQUEST) )
  28. {
  29.         $str = preg_replace("/[^0-9a-zA-Z-_]/",'',(string)$_REQUEST['p']);
  30.         if ( $str != '' )
  31.         {
  32.                 if ( preg_replace("/[0-9]/",'',$str) == '' ) // is int id
  33.                         $p = $str;
  34.                 else
  35.                         $phndl = $str;
  36.         }
  37. }
  38.  
  39. if ( $phndl === null && $p === null )
  40.         $phndl = 'home';
  41.  
  42. if ( $phndl !== null && $p === null )
  43. {
  44.         $sql = "SELECT p_id FROM p WHERE p_hndl=? AND p_hndl <> '' AND p_hide < 1 LIMIT 1";
  45.         $arr = array($phndl);
  46.         if ( ( $rs = $db->prepExecuteGet($sql,$arr) ) !== false )
  47.                 $p = $rs['p_id'];
  48. }
  49.  
  50. if ( $p === null )
  51. {
  52.         $sql = "SELECT p_id FROM p WHERE p_hndl=? AND p_hndl <> '' AND p_hide < 1 LIMIT 1";
  53.         $arr = array('home');
  54.         if ( ( $rs = $db->prepExecuteGet($sql,$arr) ) !== false )
  55.                 $p = $rs['p_id'];
  56. }
  57.  
  58. if ( $p !== null )
  59.         $p = new p(array('id'=>$p),$user);
  60.  
  61.        
  62.  
  63. /* --- start a doc to the browser --- */
  64. echo doc::start(array('doctype'=>doc::DOC_TYPE_HTML5));
  65.  
  66.  
  67. /* --- real html header --- */
  68. echo header::get_html(array('title'=>FRIENDLY_NAME.': '.$p->get_data('p_title'),'hed'=>$p->get_data('p_subj'),'p'=>$p),$user);
  69.  
  70.  
  71. /* --- msg --- */
  72. echo lib::msg_get_html();
  73.  
  74. /* --- can you edit? --- */
  75. if ( $user->get_level() >= user::ULEVADMIN )
  76. {
  77.         // add p to this p
  78.         $rs = new p(array('id'=>0,'tbl'=>p::$table,'tbl_id'=>$p->id),$user);
  79.         //echo PHP_EOL.'<pre>'.print_r($rs,true).'</pre>';
  80.         echo PHP_EOL.'<div>';
  81.         echo PHP_EOL.'<p>Add Page:</p>';
  82.         echo PHP_EOL.$rs->get_form_html(array(),$user);
  83.         echo PHP_EOL.'</div>';
  84.        
  85. }
  86.  
  87. /* --- content of some kind --- */
  88.  
  89. if ( $p->get_data('p_automedia') > 0 )
  90. {
  91.         $cnt = 0;
  92.         $sql = "SELECT c.c_id FROM tree, c WHERE
  93.                         tree.tbl_id=?
  94.                         AND tree.tbl='p'
  95.                         AND tree.id_tbl='c'
  96.                         AND c.c_id=tree.id
  97.                         AND c.c_hide < 1
  98.                         ";
  99.         $arr = array($p->id);
  100.         $arr = $db->prepExecuteGetAll($sql,$arr);
  101.         $splasharr = array();
  102.         foreach( $arr as $rs )
  103.         {
  104.                 $sql = "SELECT m.m_id FROM tree, m WHERE
  105.                         tree.tbl_id=?
  106.                         AND tree.tbl='c'
  107.                         AND tree.id_tbl='m'
  108.                         AND m.m_id=tree.id  
  109.                         AND m.m_hide < 1
  110.                         ";
  111.                 $arr2 = array($rs['c_id']);
  112.                 $arr2 = $db->prepExecuteGetAll($sql,$arr2);
  113.                 if ( $arr2 !== false )
  114.                 {
  115.                         if ( count($arr2) > 0 )
  116.                         {
  117.                                 foreach ( $arr2 as $rs )
  118.                                 {
  119.                                         if ( $cnt >= 4 )
  120.                                                 break;
  121.                                         $splasharr[] = $rs['m_id'];
  122.                                         $cnt++;
  123.                                 }
  124.                         }       
  125.                 }
  126.         }
  127.        
  128.        
  129.        
  130.         if ( count($splasharr) > 0 )
  131.         {
  132.        
  133.                 echo PHP_EOL.'<div class="splashdiv">';
  134.                
  135.                         echo PHP_EOL.'<div class="splashdiv_bot">';
  136.                        
  137.                                 echo PHP_EOL.'<div class="splashdiv_tab">';
  138.                                 $comma = '';
  139.                                 foreach( $splasharr as $rs )
  140.                                 {
  141.                                         $rs = new m(array('id'=>$rs),$user);
  142.                                         echo $comma.'<span onclick="">&bull;</span>';
  143.                                         $comma = '&nbsp;&nbsp;&nbsp;&nbsp;';
  144.                                 }
  145.                                 $rs = new m(array('id'=>$splasharr[0]),$user);
  146.                                
  147.                                 echo $comma;
  148.                                 echo lib::html_ent($rs->get_data('m_cap'));
  149.                                
  150.                                 echo PHP_EOL.'</div>';
  151.                        
  152.                         echo PHP_EOL.'</div>';
  153.                
  154.                 echo PHP_EOL.'</div>';
  155.        
  156.         }
  157.        
  158. }
  159.  
  160. /* --- content of some kind --- */
  161.  
  162. echo PHP_EOL.'<div class="content_pane';
  163. if ( $p->get_data('p_automedia') > 0 && $splasharr !== false )
  164.         echo ' content_pane_splash';
  165. echo '">';
  166.  
  167.  
  168. // content on p?
  169. $sql = "SELECT c.c_id FROM tree, c WHERE
  170.                         tree.tbl='p'
  171.                         AND tree.tbl_id=?
  172.                         AND tree.id_tbl = 'c'
  173.                         AND tree.id > 0
  174.                         AND tree.id = c.c_id
  175.                         ORDER BY tree.ord ASC";
  176. $arr = array($p->id);
  177. if ( ( $arr = $db->prepExecuteGetAll($sql,$arr) ) !== false )
  178. {
  179.         foreach( $arr as $rs )
  180.         {
  181.                 $c = new c(array('id'=>$rs['c_id']),$user);
  182.                 echo $c->get_html(array('isdiv'=>true),$user);
  183.         }
  184. }              
  185.  
  186.  
  187. echo PHP_EOL.'</div><!-- end #content_pane -->';
  188.  
  189.  
  190. /* --- footer --- */
  191. echo footer::get_html(array(),$user);
  192.  
  193.  
  194. /* --- finish the doc --- */
  195. echo doc::stop();
  196.  
  197.  
  198. /* --- slick shutdown and session save --- */
  199.  
  200. lib::shutdown($user);
  201.  
  202.  
  203. ?>
Parsed in 0.100 seconds