Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
499
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 22.34 KB | None | 0 0
  1. <?php
  2.  
  3. if (isset($_SESSION['userid'])) {
  4.     include_once './model/LogManager.php';
  5.     include_once './model/LogAction.php';
  6.  
  7.     $LogManager = new LogManager();
  8.     $LogAction = new LogAction();
  9.  
  10.     $UserToEdit = $UserManager->getuser($_SESSION['userid']);
  11.     if ($UserToEdit->getGroup() == 1) {
  12.         switch ($_GET['acpp']) {
  13.             case '':
  14.                 header("Location: index.php?page=acp&acpp=1");
  15.                 break;
  16.  
  17.             //If admin page 1 is selected
  18.             case 1:
  19.                 $acpnav1 = 'class="profilecur"';
  20.                 include 'view/admincp/acpindex.php';
  21.                 break;
  22.  
  23.             //If admin page 2 is selected
  24.             case 2:
  25.                 $allACPUsers = $UserManager->getAllUsers(TRUE);
  26.                 $acpnav2 = 'class="profilecur"';
  27.                 switch ($_REQUEST['acpform']) {
  28.  
  29.                     //If there is no post value coming form a form
  30.                     case'':
  31.                         include 'view/admincp/users/usersindex.php';
  32.                         break;
  33.  
  34.                     //If we're coming from form1
  35.                     case 1:
  36.                         $acpnav2 = 'class="profilecur"';
  37.                         switch ($_REQUEST['submit']) {
  38.                             //If we want to add a new user
  39.                             case 'New':
  40.                                 //If we are saving form data
  41.                                 if ($_REQUEST['save'] == 'Save') {
  42.                                     if ($_POST['username'] == '') {
  43.                                         $message = '<p class="red">Error - You Must Type A Username</p>';
  44.                                         include 'view/admincp/users/newuser.php';
  45.                                     }
  46.                                     elseif ($_POST['password'] == '') {
  47.                                         $message = '<p class="red">Error - You Must Set A Password</p>';
  48.                                         include 'view/admincp/users/newuser.php';
  49.                                     }
  50.                                     elseif ($_POST['email'] == '') {
  51.                                         $message = '<p class="red">Error - You Must Set An Email Address</p>';
  52.                                         include 'view/admincp/users/newuser.php';
  53.                                     }
  54.                                     else {
  55.                                         $message = '<p class="green">User created successfully!</p>';
  56.                                         $NewUser = new User();
  57.                                         $NewUser->setUsername($_POST['username']);
  58.                                         $NewUser->setGroup($_POST['group']);
  59.                                         $NewUser->setPassword(hash('sha512', $_POST['password']));
  60.                                         $NewUser->setEmail($_POST['email']);
  61.                                         $NewUser->setLastlogin(date("Y-m-d"));
  62.                                         $UserManager->newUser($NewUser);
  63.  
  64.                                         $LogAction->setActionTaken('Added User ' . $NewUser->getUsername());
  65.                                         $LogAction->setActionTaker($_SESSION['userid']);
  66.                                         $LogManager->newLogEntry($LogAction);
  67.  
  68.                                         include 'view/admincp/users/usersindex.php';
  69.                                     }
  70.                                 }
  71.                                 //If we are just viewing the add screen
  72.                                 else {
  73.                                     $randomTempPass = substr(md5(rand()), 0, 5);
  74.                                     include 'view/admincp/users/newuser.php';
  75.                                 }
  76.                                 break;
  77.  
  78.                             //If we want to edit an existing user
  79.                             case 'Edit':
  80.  
  81.                                 //If we are posting the form back to save the users details
  82.                                 if ($_REQUEST['save'] == 'Save') {
  83.                                     //Grab a new user object and populate it with that users info
  84.                                     $UserToEdit = $UserManager->getUser($_POST['userid']);
  85.                                     //---------+---------+---------+---------+---------+---------+
  86.                                     //Modify the user object with the form data
  87.                                     $UserToEdit->setUsername($_POST['username']);
  88.                                     $UserToEdit->setPassword(hash('sha512', $_POST['password']));
  89.                                     $UserToEdit->setBanned($_POST['banned']);
  90.                                     $UserToEdit->setWebsite($_POST['website']);
  91.                                     $UserToEdit->setEmail($_POST['email']);
  92.                                     $UserToEdit->setAvatar($_POST['avatarurl']);
  93.                                     $UserToEdit->setBiography($_POST['biography']);
  94.                                     $UserToEdit->setForumSignature($_POST['forumsignature']);
  95.                                     $UserToEdit->setGroup($_POST['group']);
  96.                                     //--------+---------+---------+---------+---------+---------+
  97.                                     if ($UserToEdit->getPassword() == hash('sha512', NULL)) {
  98.                                         $UserWithNoPassword = $UserManager->getUser($_POST['userid']);
  99.                                         $UserToEdit->setPassword($UserWithNoPassword->getPassword());
  100.                                     }
  101.  
  102.                                     //Save the user object to database
  103.                                     $UserManager->setUser($UserToEdit);
  104.                                     //Create a new user object to overwrite the existing one with the new data straight from the database
  105.                                     $UserToEdit = $UserManager->getUser($_POST['userid']);
  106.                                     $Group = $GroupManager->getGroup($UserToEdit->getGroup());
  107.                                     $LogAction->setActionTaker($_SESSION['userid']);
  108.                                     $LogAction->setActionTaken('Edited User ' . $UserToEdit->getUsername() . '<br />The Following Changes Were Made:<br />' . ' Username: ' . $UserToEdit->getUsername() . ' Biography: ' . $UserToEdit->getBiography() . ' Email: ' . $UserToEdit->getEmail() . ' Website URL: ' . $UserToEdit->getWebsite() . ' Avatar URL: ' . $UserToEdit->getAvatar() . ' Forum Signature: ' . $UserToEdit->getForumSignature() . ' Location: ' . $UserToEdit->getLocation() . ' Group:' . $Group->getGroupName());
  109.                                     $LogManager->newLogEntry($LogAction);
  110.                                     $message = '<p class="green">' . $UserToEdit->getUsername() . '\'s profile was updated successfully</p>';
  111.                                     include './view/admincp/users/edituser.php';
  112.                                 }
  113.  
  114.                                 //If we are just displaying the users details to edit them
  115.                                 else {
  116.                                     if (!isset($_REQUEST['userid'])) {
  117.                                         $message = '<p class="red">Error - you must select a user to edit, please try again.</p>';
  118.                                         include './view/admincp/users/usersindex.php';
  119.                                     }
  120.                                     else {
  121.                                         $UserToEdit = $UserManager->getUser($_REQUEST['userid']);
  122.                                         $Group = $GroupManager->getGroup($UserToEdit->getGroup());
  123.                                         if ($UserToEdit->getBanned() == 1) {
  124.                                             $message = '<p class="red">This user is banned</p>';
  125.                                         }
  126.                                         include './view/admincp/users/edituser.php';
  127.                                     }
  128.                                 }
  129.                                 break;
  130.  
  131.                             //If we want to just delete a user
  132.                             case 'Delete':
  133.                                 $UserToDelete = $UserManager->getUser($_POST['userid']);
  134.                                 //If we say that /yes/ we really do want to delete a user
  135.                                 if ($_POST['delete'] == 'Yes') {
  136.                                     //Delete the user
  137.                                     $UserManager->deleteUser($_POST['userid']);
  138.                                     $LogAction->setActionTaken('Deleted User ' . $UserToDelete->getUsername());
  139.                                     $LogAction->setActionTaker($_SESSION['userid']);
  140.                                     $LogManager->newLogEntry($LogAction);
  141.                                     //Display a nice confrimation message
  142.                                     $message = '<p class="green">The user was successfully deleted.</p>';
  143.                                     //Include the userlist
  144.                                     $allACPUsers = $UserManager->getAllUsers();
  145.                                     include './view/admincp/users/usersindex.php';
  146.                                 }
  147.  
  148.                                 //If we change our mind about deleting the user
  149.                                 elseif ($_POST['delete'] == 'No') {
  150.                                     //Lets include the user list
  151.                                     include './view/admincp/users/usersindex.php';
  152.                                 }
  153.  
  154.                                 //If we're just showing the user delete page
  155.                                 else {
  156.                                     if (isset($_REQUEST['userid'])) {
  157.                                         include './view/admincp/users/deleteuser.php';
  158.                                     }
  159.                                     else {
  160.                                         $message = '<p class="red">You Must Select A User To Delete</p>';
  161.                                         include './view/admincp/users/usersindex.php';
  162.                                     }
  163.                                 }
  164.                                 break;
  165.                         }
  166.                         break;
  167.  
  168.                     default:
  169.                         include './view/error/404.php';
  170.                         break;
  171.                 }
  172.                 break;
  173.  
  174.             case 3:
  175.                 $acpnav3 = 'class="profilecur"';
  176.                 switch ($_REQUEST['submit']) {
  177.                     case'':
  178.                         $AllACPBlogPosts = $BlogManager->getAllBlogPostsForACP();
  179.                         $User = $UserManager->getUser($_SESSION['userid']);
  180.                         include './view/admincp/blog/blogindex.php';
  181.                         break;
  182.  
  183.                     case'New':
  184.                         include 'model/BlogPost.php';
  185.                         if (isset($_REQUEST['save'])) {
  186.                             $BlogPost = new BlogPost();
  187.                             $BlogPost->setBlogPostTitle($_POST['posttitle']);
  188.                             $BlogPost->setBlogpost($_POST['blogpost']);
  189.                             $BlogPost->setPostDate(date("Y-m-d H:i:s"));
  190.                             $BlogPost->setUserID($_SESSION['userid']);
  191.                             $BlogManager->newBlogPost($BlogPost);
  192.                             $LogAction->setActionTaker($_SESSION['userid']);
  193.                             $LogAction->setActionTaken('Blog Post <a href="index.php?page=blog&post=' . mysql_insert_id() . '">#' . mysql_insert_id() . '</a> Added');
  194.                             $LogManager->newLogEntry($LogAction);
  195.                             $message = '<p class="green">Blog post added successfully</p>';
  196.                             $AllACPBlogPosts = $BlogManager->getAllBlogPostsForACP();
  197.                             include './view/admincp/blog/blogindex.php';
  198.                         }
  199.                         else {
  200.                             include './view/admincp/blog/newblogpost.php';
  201.                         }
  202.                         break;
  203.  
  204.                     case'Edit':
  205.                         if (isset($_REQUEST['postid'])) {
  206.                             $acpnav3 = 'class="profilecur"';
  207.                             if (isset($_REQUEST['save'])) {
  208.                                 $BlogPost = $BlogManager->getBlogPost($_POST['postid']);
  209.                                 $BlogPost->setBlogPostTitle($_POST['posttitle']);
  210.                                 $BlogPost->setBlogpost($_POST['blogpost']);
  211.                                 $BlogPost->setPostDate(date("Y-m-d H:i:s"));
  212.                                 $BlogPost->setUserID($_SESSION['userid']);
  213.                                 $BlogManager->setBlogPost($BlogPost);
  214.                                 $LogAction->setActionTaker($_SESSION['userid']);
  215.                                 $LogAction->setActionTaken('Blog Post <a href="index.php?page=blog&post=' . mysql_insert_id() . '">#' . mysql_insert_id() . '</a> Edited');
  216.                                 $LogManager->newLogEntry($LogAction);
  217.                                 $message = '<p class="green">Your Changes Were Saved</p>';
  218.                                 $AllACPBlogPosts = $BlogManager->getAllBlogPostsForACP();
  219.                                 include './view/admincp/blog/blogindex.php';
  220.                             }
  221.                             else {
  222.                                 $BlogPost = $BlogManager->getBlogPost($_POST['postid']);
  223.                                 $BlogPostAuthor = $UserManager->getUser($BlogPost->getUserID());
  224.                                 include './view/admincp/blog/editblogpost.php';
  225.                             }
  226.                         }
  227.                         else {
  228.                             $message = '<p class="red">You must select a blog post to edit.</p>';
  229.                             include './view/admincp/blog/blogindex.php';
  230.                         }
  231.                         break;
  232.  
  233.                     case'Delete':
  234.                         if (isset($_POST['postid'])) {
  235.                             switch ($_REQUEST['delete']) {
  236.                                 case '':
  237.                                     $BlogPostToDelete = $BlogManager->getblogPost($_POST['postid']);
  238.                                     include './view/admincp/blog/deleteblogpost.php';
  239.                                     break;
  240.  
  241.                                 case 'Yes':
  242.                                     $BlogManager->deleteBlogPost($_POST['postid']);
  243.                                     $LogAction->setActionTaker($_SESSION['userid']);
  244.                                     $LogAction->setActionTaken('Blog Post #' . mysql_insert_id() . 'Deleted');
  245.                                     $LogManager->newLogEntry($LogAction);
  246.                                     $message = '<p class="green">Post successfully deleted</p>';
  247.                                     $AllACPBlogPosts = $BlogManager->getAllBlogPostsForACP();
  248.                                     include './view/admincp/blog/blogindex.php';
  249.                                     break;
  250.  
  251.                                 case'No':
  252.                                     include'./view/admincp/blog/blogindex.php';
  253.                                     break;
  254.                             }
  255.                         }
  256.                         else {
  257.                             $AllACPBlogPosts = $BlogManager->getAllBlogPostsForACP();
  258.                             $message = '<p class="red">You must select a blog post to delete</p>';
  259.                             include './view/admincp/blog/blogindex.php';
  260.                         }
  261.                         break;
  262.                 }
  263.                 break;
  264.             //This section of the controller is for QDB Entries
  265.             case 4:
  266.                 $acpnav4 = 'class="profilecur"';
  267.                 switch ($_REQUEST['acpqdbform']) {
  268.                     //If we're just loading up the qqb acp index page
  269.                     case '':
  270.                         include_once 'model/QDBManager.php';
  271.                         $QDBManager = new QDBManager();
  272.                         $acceptedQuotes = $QDBManager->getAcceptedQuotes();
  273.                         $pendingQuotes = $QDBManager->getPendingQuotes();
  274.                         include './view/admincp/qdb/qdbindex.php';
  275.                         break;
  276.                     //If we're coming from the "Pending Quotes" form
  277.                     case 1:
  278.                         switch ($_POST['quote']) {
  279.                             case 'Accept':
  280.                                 include_once './model/QDBManager.php';
  281.                                 $QDBManager = new QDBManager();
  282.                                 echo '<pre>' . print_r($_POST, true) . '</pre>';
  283.                                 if ($QDBManager->acceptQuote($_POST['qid']) == FALSE) {
  284.                                     $message = '<p class="red">An unknown error occured</p>';
  285.                                 }
  286.                                 else {
  287.                                     $message = '<p class="green">Quote Accepted</p>';
  288.                                 }
  289.                                 $LogAction->setActionTaker($_SESSION['userid']);
  290.                                 $LogAction->setActionTaken('Quote <a href="index.php?page=qdb&q=' . mysql_insert_id() . '">#' . mysql_insert_id() . '</a> Added');
  291.                                 $LogManager->newLogEntry($LogAction);
  292.                                 $acceptedQuotes = $QDBManager->getAcceptedQuotes();
  293.                                 $pendingQuotes = $QDBManager->getPendingQuotes();
  294.                                 include './view/admincp/qdb/qdbindex.php';
  295.                                 break;
  296.  
  297.                             case'Reject':
  298.                                 include_once './model/QDBManager.php';
  299.                                 $QDBManager = new QDBManager();
  300.                                 $QDBManager->rejectQuote($_POST['qid']);
  301.                                 $LogAction->setActionTaker($_SESSION['userid']);
  302.                                 $LogAction->setActionTaken('Quote Rejected');
  303.                                 $LogManager->newLogEntry($LogAction);
  304.                                 $message = '<p class="green">Quote Rejected</p>';
  305.                                 $acceptedQuotes = $QDBManager->getAcceptedQuotes();
  306.                                 $pendingQuotes = $QDBManager->getPendingQuotes();
  307.                                 include './view/admincp/qdb/qdbindex.php';
  308.                                 break;
  309.  
  310.                             default:
  311.                                 break;
  312.                         }
  313.                         break;
  314.                     //If we're coming from the "Accepted Quotes" form
  315.                     case 2:
  316.                         include_once './model/QDBManager.php';
  317.                         $QDBManager = new QDBManager();
  318.                         $QuoteToEdit = $QDBManager->getQuote($_POST['qid']);
  319.                         $QuoteOwner = $UserManager->getUser($QuoteToEdit->getUserid());
  320.                         switch ($_REQUEST['quote']) {
  321.                             case'Edit':
  322.                                 if (isset($_REQUEST['save'])) {
  323.                                     $QuoteToEdit = $QDBManager->getQuote($_REQUEST['qid']);
  324.                                     $QuoteToEdit->setQuote($_POST['quotebody']);
  325.                                     $LogAction->setActionTaker($_SESSION['userid']);
  326.                                     $QDBManager->setQuote($QuoteToEdit);
  327.                                     $LogAction->setActionTaker('Edited QDB Entry #' . $QuoteToEdit->getQid());
  328.                                     $acceptedQuotes = $QDBManager->getAcceptedQuotes();
  329.                                     $message = '<p class="green">Changees to the selected quote have been saved</p>';
  330.                                     include './view/admincp/qdb/qdbindex.php';
  331.                                 }
  332.                                 else {
  333.                                     include './view/admincp/qdb/editquote.php';
  334.                                 }
  335.                                 break;
  336.  
  337.                             //To Delete a quote
  338.                             case'Delete':
  339.                                 switch ($_REQUEST['Delete']) {
  340.                                     case '':
  341.                                         include './view/admincp/qdb/deletequote.php';
  342.                                         break;
  343.  
  344.                                     case 'Yes':
  345.                                         $QDBManager->deleteQuote($QuoteToEdit->getQid());
  346.                                         $message = '<p class="green">Quote successfully deleted</p>';
  347.                                         $acceptedQuotes = $QDBManager->getAcceptedQuotes();
  348.                                         include './view/admincp/qdb/qdbindex.php';
  349.                                         break;
  350.  
  351.                                     case'No':
  352.                                         include_once 'model/QDBManager.php';
  353.                                         $QDBManager = new QDBManager();
  354.                                         $acceptedQuotes = $QDBManager->getAcceptedQuotes();
  355.                                         include'./view/admincp/qdb/qdbindex.php';
  356.                                         break;
  357.                                 }
  358.                                 break;
  359.                             default:
  360.                                 include './view/error/404.php';
  361.                                 break;
  362.                         }
  363.                         break;
  364.                 }
  365.                 break;
  366.             case 5:
  367.                 include_once './model/LogManager.php';
  368.                 $LogManager = new LogManager();
  369.                 $allLogEntries = $LogManager->getAllLogEntries();
  370.                 $acpnav5 = 'class = "profilecur"';
  371.                 include './view/admincp/log.php';
  372.                 break;
  373.  
  374.             default:
  375.                 include'view/error/404.php';
  376.                 break;
  377.         }
  378.     }
  379.     else {
  380.         include 'view/error/permissiondenied.php';
  381.     }
  382. }
  383. else {
  384.     include 'view/error/permissiondenied.php';
  385. }
  386. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement