Advertisement
Guest User

Untitled

a guest
Jan 26th, 2014
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 12.19 KB | None | 0 0
  1. class pages {
  2.     function index() {
  3.         global $content, $db, $apps, $client, $ubase, $nav, $offset, $page, $num_per_page, $current_sub_menu;
  4.         if ($client['id']) {
  5.             button('pages/create',t('Create a page'));
  6.         }
  7.         $res = sql_query("select * from ".tb()."pages where type='page' order by id DESC  LIMIT $offset,$num_per_page");
  8.         while ($jcow_page = sql_fetch_array($res) ) {
  9.             if (!$jcow_page['logo']) {
  10.                 $jcow_page['logo'] = 'logo.jpg';
  11.             }
  12.             $logo = url('page/'.$jcow_page['uri'],'<img src="'.uhome().'/uploads/avatars/s_'.$jcow_page['logo'].'" />');
  13.             $i++;
  14.             $res2 = sql_query("select count(*) as num from ".tb()."page_users where pid='{$jcow_page['id']}'");
  15.             $row2 = sql_fetch_array($res2);
  16.             $jcow_page['users'] = $row2['num'];
  17.             c('<table><tr><td>'.$logo.'</td><td>'.
  18.                 url('page/'.$jcow_page['uri'],h($jcow_page['name']) ).'
  19.             <span class="sub"> ('.t('{1} people like this','<strong>'.$jcow_page['users'].'</strong>').')</span>');
  20.             c('<br /><span class="sub">'.h(utf8_substr($jcow_page['description'],40)).'</span></td></tr></table>');
  21.         }
  22.  
  23.         // pager
  24.         $res = sql_query("select count(*) as total from ".tb()."pages where type='page'");
  25.         $row = sql_fetch_array($res);
  26.         $total = $row['total'];
  27.         $pb       = new PageBar($total, $num_per_page, $page);
  28.         $pb->paras = $ubase.'pages/index';
  29.         $pagebar  = $pb->whole_num_bar();
  30.         c($pagebar);
  31.  
  32.     }
  33.  
  34.     function mine() {
  35.         global $content, $db, $apps, $client, $ubase, $nav, $offset, $page, $num_per_page, $current_sub_menu;
  36.         need_login();
  37.         button('pages/create',t('Create a page'));
  38.         $res = sql_query("select * from ".tb()."pages where type='page' and uid='{$client['id']}' order by updated DESC limit 100");
  39.         c('<style>
  40.         .page_listings {
  41.             width:230px;
  42.             padding:5px;
  43.             float:left;
  44.     }
  45.     </style>
  46.     <div style="width:100%;clear:both"></div>');
  47.         while ($jcow_page = sql_fetch_array($res) ) {
  48.             if (!$jcow_page['logo']) {
  49.                 $jcow_page['logo'] = 'logo.jpg';
  50.             }
  51.             $logo = url('page/'.$jcow_page['uri'],'<img src="'.uhome().'/uploads/avatars/s_'.$jcow_page['logo'].'" width="25" height="25" />');
  52.             $i++;
  53.             c('<div class="page_listings"><table><tr><td>
  54.             '.url('page/'.$jcow_page['uri'],'<img src="'.uhome().'/uploads/avatars/s_'.$jcow_page['logo'].'" width="25" height="25" />').'</td><td>'.
  55.                 url('page/'.$jcow_page['uri'],h($jcow_page['name'])).'<div class="sub">'.t('Updated').': '.get_date($jcow_page['updated']).'</div></td></tr></table>
  56.             </div>');
  57.         }
  58.         c('<div style="width:100%;clear:both"></div>');
  59.         section_close(t('Pages I created'));
  60.        
  61.         c('<div style="width:100%;clear:both"></div>');
  62.         $res = sql_query("select p.* from ".tb()."page_users as u left join ".tb()."pages as p on p.id=u.pid where u.uid='{$client['id']}' order by p.updated DESC limit 100");
  63.         while ($jcow_page = sql_fetch_array($res) ) {
  64.             if (!$jcow_page['logo']) {
  65.                 $jcow_page['logo'] = 'logo.jpg';
  66.             }
  67.             $logo = url('page/'.$jcow_page['uri'],'<img src="'.uhome().'/uploads/avatars/s_'.$jcow_page['logo'].'" width="25" height="25" />');
  68.             $i++;
  69.             c('<div class="page_listings"><table><tr><td>
  70.             '.url('page/'.$jcow_page['uri'],'<img src="'.uhome().'/uploads/avatars/s_'.$jcow_page['logo'].'" width="25" height="25" />').'</td><td>'.
  71.                 url('page/'.$jcow_page['uri'],h($jcow_page['name'])).'<div class="sub">'.t('Updated').': '.get_date($jcow_page['updated']).'</div></td></tr></table>
  72.             </div>');
  73.         }
  74.         c('<div style="width:100%;clear:both"></div>');
  75.         section_close(t('Pages I liked'));
  76.     }
  77.  
  78.     function like($uri=0) {
  79.         global $client;
  80.         need_login();
  81.         $res = sql_query("select * from ".tb()."pages where uri='{$uri}' and type='page'");
  82.         $page = sql_fetch_array($res);
  83.         if (!$page['id']) die('wrong page id');
  84.         $res = sql_query("select * from ".tb()."page_users where pid='{$page['id']}' and uid='{$client['id']}'");
  85.         if (!sql_counts($res)) {
  86.             sql_query("insert into ".tb()."page_users (uid,pid) value ('{$client['id']}','{$page['id']}')");
  87.         }
  88.         redirect('page/'.$page['uri'],1);
  89.     }
  90.  
  91.     function unlike($uri=0) {
  92.         global $client;
  93.         need_login();
  94.         $res = sql_query("select * from ".tb()."pages where uri='{$uri}' and type='page'");
  95.         $page = sql_fetch_array($res);
  96.         if (!$page['id']) die('wrong page id');
  97.         sql_query("delete from ".tb()."page_users where uid='{$client['id']}' and pid='{$page['id']}'");
  98.         redirect('page/'.$page['uri'],1);
  99.     }
  100.  
  101.     function create() {
  102.         global $client;
  103.         if (!$client['id']) die('need login');
  104.         set_title(t('Create a page'));
  105.  
  106.         if ($_POST['step'] == 2) {
  107.             $_POST['guri'] = strtolower($_POST['guri']);
  108.             if (strlen($_POST['guri']) < 6) {
  109.                 $errors[] = 'The Page Address must be at least <strong>6</strong> characters long';
  110.             }
  111.             elseif (strlen($_POST['guri']) > 50) {
  112.                 $errors[] = 'The Page Address cannot be longer than 50';
  113.             }
  114.             elseif (!ereg("^[0-9a-z]+$",$_POST['guri']) ) {
  115.                 $errors[] = 'The Page Address can only contain 0-9,a-z';
  116.             }
  117.             else {
  118.                 $res = sql_query("select * from ".tb()."pages where uri='{$_POST['guri']}' and type='page'");
  119.                 if (sql_counts($res)) {
  120.                     $errors[] = 'The page address is already in use: '.$_POST['guri'];
  121.                 }
  122.             }
  123.             if (!strlen($_POST['name']) ) {
  124.                 $errors[] = 'Please input a Page Name';
  125.             }
  126.             if (!is_array($errors)) {
  127.                 $page = array(
  128.                     'uid'=>$client['id'],
  129.                     'uri' => $_POST['guri'],
  130.                     'name'=>$_POST['name'],
  131.                     'type'=>'page',
  132.                     'updated'=>time(),
  133.                     'description'=>$_POST['description']
  134.                     );
  135.                 sql_insert($page, tb().'pages');
  136.                 redirect('page/'.$_POST['guri'] ,1);
  137.                 exit;
  138.             }
  139.         }
  140.         if (is_array($errors)) {
  141.             sys_notice('Please fix the Error(s)');
  142.                 c('<ul>');
  143.                 foreach ($errors as $error) {
  144.                     c('<li>'.$error.'</li>');
  145.                 }
  146.                 c('</ul>');
  147.         }
  148.  
  149.         c('
  150.             <form action="" method="post">
  151.  
  152.         <br /><br />'.label(t('Page Address')).'
  153.         <span style="font-size:1.5em;color:#3A74AD">'.url('page/','ohno').'</span> <input type="text" name="guri" value="'.$_POST['guri'].'" size="20" class="fpost" /><br />
  154.         <span class="sub">(0-9,a-z),'.t('Example').': http://'.url('page/').'<strong>abcdefg</strong></span><br /><br />
  155.    
  156.  
  157.  
  158.         '.label(t('Page Name')).'<input type="text" name="name" value="'.h(stripslashes($_POST['name'])).'" size="20" class="fpost" />
  159.         <br /><br />
  160.  
  161.         '.label(t('Page Description').' ('.t('Optional').')').'
  162.         <textarea name="description" rows="5" cols="55">'.h($_POST['description']).'</textarea>
  163.         <br /><br />
  164.         <input type="submit" value="'.t('Submit').'" class="fbutton" />
  165.         <input type="hidden" value="2" name="step" />
  166.         </form>
  167.         ');
  168.         section_close(t('Create a page'));
  169.     }
  170.  
  171.     function manage($page_id) {
  172.         global $client;
  173.         need_login();
  174.         $res = sql_query("select * from ".tb()."pages where id='{$page_id}'");
  175.         $page = sql_fetch_array($res);
  176.         if (!$page['id']) die("wrong page id");
  177.         if ($page['uid'] != $client['id'] && !allow_access(3)) {
  178.             die('access denied');
  179.         }
  180.         set_title(h($page['name']));
  181.         c('
  182.             <form action="'.url('pages/managepost').'" method="post">
  183.  
  184.         '.label(t('Page Name')).'<input type="text" name="name" value="'.h($page['name']).'" size="20" class="fpost" />
  185.         <br /><br />
  186.  
  187.         '.label(t('Page Description').' ('.t('Optional').')').'
  188.         <textarea name="description" rows="5" cols="55">'.h($page['description']).'</textarea>
  189.         <br /><br />
  190.         <input type="hidden" name="page_id" value="'.$page['id'].'" />
  191.         <input type="submit" value="'.t('Save changes').'" class="fbutton" />
  192.         '.url('pages/deleteit/'.$page['id'],t('Delete')).'
  193.         </form>
  194.  
  195.         ');
  196.     }
  197.  
  198.         function deleteit($page_id) {
  199.             global $client;
  200.             need_login();
  201.             $res = sql_query("select * from ".tb()."pages where id='{$page_id}'");
  202.             $page = sql_fetch_array($res);
  203.             if (!$page['id']) die("wrong page id");
  204.             if ($page['uid'] != $client['id'] && !allow_access(3)) {
  205.                 die('access denied');
  206.             }
  207.             if ($_POST['confirm']) {
  208.                 sql_query("delete from ".tb()."pages where id='{$page_id}'");
  209.                 sql_query("delete from ".tb()."page_users where pid='{$page_id}'");
  210.                 $res = sql_query("select id from ".tb()."stories where page_id='{$page_id}'");
  211.                 while ($story = sql_fetch_array($res)) {
  212.                     $res2 = sql_query("select * from ".tb()."story_photos where sid='{$story['id']}'");
  213.                     while ($photo = sql_fetch_array($res2)) {
  214.                         @unlink($photo['uri']);
  215.                         @unlink($photo['thumb']);
  216.                         sql_query("delete from ".tb()."story_photos where id='{$photo['id']}'");
  217.                     }
  218.                     sql_query("delete from ".tb()."stories where id='{$story['id']}'");
  219.                     sql_query("delete from ".tb()."tag_ids where sid='{$story['id']}'");
  220.                 }
  221.                 sql_query("delete from ".tb()."streams where wall_id='{$page_id}'");
  222.                 redirect('pages/mine');
  223.             }
  224.             set_title(h($page['name']));
  225.             c('
  226.               <form action="'.url('pages/deleteit/'.$page['id']).'" method="post">
  227.           '.t('Page').': '.url('page/'.$page['uri'],h($page['name'])).'<br /><br />
  228.           <strong>'.t('Are you sure to delete this Page?').'</strong><br />
  229.           '.t('All posts,blogs,photos,videos under this page will be deleted too.').'
  230.           <br /><br />
  231.           <input type="hidden" name="confirm" value="1" />
  232.           <input type="hidden" name="page_id" value="'.$page['id'].'" />
  233.           <input type="submit" value="'.t('Delete it anyway').'" class="fbutton" />
  234.           </form>
  235.           ');
  236.         }
  237.  
  238.     function managepost() {
  239.         global $client;
  240.         need_login();
  241.         $res = sql_query("select * from ".tb()."pages where id='{$_POST['page_id']}'");
  242.         $page = sql_fetch_array($res);
  243.         if (!$page['id']) die("wrong page id");
  244.         if ($page['uid'] != $client['id']) {
  245.             die('access denied');
  246.         }
  247.         $newpage = array(
  248.             'id'=>$page['id'],
  249.             'name'=>$_POST['name'],
  250.             'description'=>$_POST['description']
  251.             );
  252.         sql_update($newpage,tb()."pages");
  253.         redirect('page/'.$page['uri'],1);
  254.     }
  255.  
  256.     function logo($page_id) {
  257.         global $client;
  258.         need_login();
  259.         $res = sql_query("select * from ".tb()."pages where id='{$page_id}'");
  260.         $page = sql_fetch_array($res);
  261.         if (!$page['id']) die("wrong page id");
  262.         if ($page['uid'] != $client['id']) {
  263.             die('access denied');
  264.         }
  265.         set_title(h($page['name']));
  266.         c('<br />
  267.         <form method="post" name="form1" action="'.url('pages/logopost').'" enctype="multipart/form-data">
  268.                    
  269.                     <fieldset>
  270.                     <legend>'.t('Page logo').'</legend>
  271.                     <p>
  272.                     '.page_logo($page,'big').'
  273.                     </p>
  274.                     <p>
  275.                     '.label(t('Upload')).'
  276.                     <input name="logo" type="file" id="avatar" />
  277.                     </p>
  278.                     </fieldset>
  279.  
  280.                     <p>
  281.                     <input type="hidden" name="page_id" value="'.$page['id'].'" />
  282.                     <input class="button" type="submit" value="'.t('Save').'" />
  283.                     </p>
  284.                     </form>
  285.         ');
  286.     }
  287.  
  288.     function logopost() {
  289.         global $client;
  290.         need_login();
  291.         $res = sql_query("select * from ".tb()."pages where id='{$_POST['page_id']}'");
  292.         $page = sql_fetch_array($res);
  293.         if (!$page['id']) die("wrong page id");
  294.         if ($page['uid'] != $client['id']) {
  295.             die('access denied');
  296.         }
  297.  
  298.         // avatar
  299.         $newpage = array('id'=>$page['id']);
  300.         if (strlen($_FILES['logo']['tmp_name'])>0 && $_FILES['logo']['tmp_name'] != "none") {
  301.             include_once('includes/libs/resizeimage.inc.php');
  302.             $dir = date("Ym",time());
  303.             $folder = 'uploads/avatars/'.$dir;
  304.             if (!is_dir($folder))
  305.                 mkdir($folder, 0777);
  306.             $s_folder = 'uploads/avatars/s_'.$dir;
  307.             if (!is_dir($s_folder))
  308.                 mkdir($s_folder, 0777);
  309.             $name = date("H_i",time()).'_'.get_rand(5);
  310.             //small
  311.             $resizeimage = new resizeimage($_FILES['logo']['tmp_name'], $_FILES['logo']['type'], $s_folder.'/'.$name, 50,50, 0,100,'white');
  312.             //big
  313.             $resizeimage = new resizeimage($_FILES['logo']['tmp_name'], $_FILES['logo']['type'], $folder.'/'.$name, 200,200, 0, 100,'white');
  314.             $newpage['logo'] = $dir.'/'.$name.".".$resizeimage->type;
  315.             sql_update($newpage,tb()."pages");
  316.             if ($page['logo']) {
  317.                 @unlink('uploads/avatars/'.$page['logo']);
  318.                 @unlink('uploads/avatars/s_'.$page['logo']);
  319.             }
  320.         }
  321.         redirect('page/'.$page['uri'],1);
  322.     }
  323. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement