Advertisement
AlphaPenguino

fancy ciscolab entry

Apr 5th, 2024 (edited)
778
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 7.06 KB | None | 0 0
  1. <?php
  2. //GLOBAL
  3.  
  4. global $RUNNING, $USER_IN_SESSION, $username, $password;
  5. $RUNNING = true;
  6. $USER_IN_SESSION = false;
  7. $username = null;
  8. $password = null;
  9.  
  10. function art(){
  11.     echo "
  12.  
  13.      :::::::: ::::::::::: ::::::::   ::::::::   ::::::::          :::            :::     :::::::::
  14.    :+:    :+:    :+:    :+:    :+: :+:    :+: :+:    :+:         :+:          :+: :+:   :+:    :+:
  15.   +:+           +:+    +:+        +:+        +:+    +:+         +:+         +:+   +:+  +:+    +:+  
  16.  +#+           +#+    +#++:++#++ +#+        +#+    +:+         +#+        +#++:++#++: +#++:++#+    
  17. +#+           +#+           +#+ +#+        +#+    +#+         +#+        +#+     +#+ +#+    +#+    
  18. #+#    #+#    #+#    #+#    #+# #+#    #+# #+#    #+#         #+#        #+#     #+# #+#    #+#    
  19. ######## ########### ########   ########   ########          ########## ###     ### #########      
  20.  
  21. Commands:
  22.  
  23. /login      /logout     /checkloginstatus       /exit\n\n
  24. ";
  25. }
  26. function splash() {
  27.     echo "
  28.                                .:xxxxxxxx:.
  29.                             .xxxxxxxxxxxxxxxx.
  30.                            :xxxxxxxxxxxxxxxxxxx:.
  31.                           .xxxxxxxxxxxxxxxxxxxxxxx:
  32.                          :xxxxxxxxxxxxxxxxxxxxxxxxx:
  33.                          xxxxxxxxxxxxxxxxxxxxxxxxxxX:
  34.                          xxx:::xxxxxxxx::::xxxxxxxxx:
  35.                         .xx:   ::xxxxx:     :xxxxxxxx
  36.                         :xx  x.  xxxx:  xx.  xxxxxxxx
  37.                         :xx xxx  xxxx: xxxx  :xxxxxxx
  38.                         'xx 'xx  xxxx:. xx'  xxxxxxxx
  39.                          xx ::::::xx:::::.   xxxxxxxx
  40.                          xx:::::.::::.:::::::xxxxxxxx
  41.                          :x'::::'::::':::::':xxxxxxxxx.
  42.                          :xx.::::::::::::'   xxxxxxxxxx
  43.                          :xx: '::::::::'     :xxxxxxxxxx.
  44.                         .xx     '::::'        'xxxxxxxxxx.
  45.                       .xxxx                     'xxxxxxxxx.
  46.                     .xxxx                         'xxxxxxxxx.
  47.                   .xxxxx:                          xxxxxxxxxx.
  48.                  .xxxxx:'                          xxxxxxxxxxx.
  49.                 .xxxxxx:::.           .       ..:::_xxxxxxxxxxx:.
  50.                .xxxxxxx''      ':::''            ''::xxxxxxxxxxxx.
  51.                xxxxxx            :                  '::xxxxxxxxxxxx
  52.               :xxxx:'            :                    'xxxxxxxxxxxx:
  53.              .xxxxx              :                     ::xxxxxxxxxxxx
  54.              xxxx:'                                    ::xxxxxxxxxxxx
  55.              xxxx               .                      ::xxxxxxxxxxxx.
  56.          .:xxxxxx               :                      ::xxxxxxxxxxxx::
  57.          xxxxxxxx               :                      ::xxxxxxxxxxxxx:
  58.          xxxxxxxx               :                      ::xxxxxxxxxxxxx:
  59.          ':xxxxxx               '                      ::xxxxxxxxxxxx:'
  60.            .:. xx:.                                   .:xxxxxxxxxxxxx'
  61.          ::::::.'xx:.            :                  .:: xxxxxxxxxxx':
  62.  .:::::::::::::::.'xxxx.                            ::::'xxxxxxxx':::.
  63.  ::::::::::::::::::.'xxxxx                          :::::.'.xx.'::::::.
  64.  ::::::::::::::::::::.'xxxx:.                       :::::::.'':::::::::
  65.  ':::::::::::::::::::::.'xx:'                     .'::::::::::::::::::::..
  66.    :::::::::::::::::::::.'xx                    .:: :::::::::::::::::::::::
  67.  .:::::::::::::::::::::::. xx               .::xxxx :::::::::::::::::::::::
  68.  :::::::::::::::::::::::::.'xxx..        .::xxxxxxx ::::::::::::::::::::'
  69.  '::::::::::::::::::::::::: xxxxxxxxxxxxxxxxxxxxxxx :::::::::::::::::'
  70.    '::::::::::::::::::::::: xxxxxxxxxxxxxxxxxxxxxxx :::::::::::::::'
  71.        ':::::::::::::::::::_xxxxxx::'''::xxxxxxxxxx '::::::::::::'
  72.             '':.::::::::::'                        `._'::::::''
  73.  
  74.  
  75.    \n";
  76. }
  77. art();
  78. $users = array("user1" => "1234", "user2" => "5678", "user3" => "abcd", "user4" => "efgh",
  79.                 "user5" => "ijkl", "user6" => "mnop", "ZunderPacis" => "broCode", "JoeBiden" => "freePalestine");
  80. function login($username, $password, $users){
  81.     global $USER_IN_SESSION;
  82.     if (array_key_exists($username, $users)) {
  83.         if ($password == $users[$username]) {
  84.             echo "Login successful.\n";
  85.             $USER_IN_SESSION = true;
  86.         }
  87.         else {
  88.             echo "Incorrect password.\n";
  89.         }
  90.         //echo "Username exists in \$users.\n";
  91.     } else {
  92.         echo "Username does not exist in \$users.\n";
  93.     }
  94. }
  95. function logout() {
  96.     global $USER_IN_SESSION, $username, $password;
  97.         if ($USER_IN_SESSION == true) {
  98.             $username = NULL;
  99.             $password = NULL;
  100.             $USER_IN_SESSION = false;
  101.         }
  102.         else {
  103.             echo "Already logged out!\n";
  104.         }
  105. }
  106. function isLoggedIn($username){
  107.     global $USER_IN_SESSION;
  108.     if ($USER_IN_SESSION == true) {
  109.         echo "{$username} is currently logged in.\n";
  110.     }
  111.     else {
  112.         echo "No one is currently logged in.\n";
  113.     }
  114. }
  115. while($RUNNING == true) {
  116.   global $USER_IN_SESSION;
  117.   if ($USER_IN_SESSION != true) {
  118.      fwrite(STDOUT, "[~cisco-lab]$ ");
  119.         $user_input = readline();
  120.   }
  121.   else {
  122.       fwrite(STDOUT, "{$username}@cisco-lab:~$ ");
  123.         $user_input = readline();
  124.   }
  125.  
  126.   //user actions
  127.   switch ($user_input) {
  128.     case "/exit":
  129.         $RUNNING = false;
  130.         break;
  131.     case "/login":
  132.         global $USER_IN_SESSION;
  133.         if ($USER_IN_SESSION == false) {
  134.             echo "Enter Username: ";
  135.             $username = readline();
  136.             echo "Enter Password: ";
  137.             $password = readline();
  138.            
  139.             login($username, $password, $users);
  140.         }
  141.         elseif ($USER_IN_SESSION == true) {
  142.             echo "Already logged in as '{$username}'.\n";
  143.         }
  144.         break;
  145.     case "/logout":
  146.         global $USER_IN_SESSION;
  147.         if ($USER_IN_SESSION == true) {
  148.             echo "{$username} logged out.\n";
  149.         }
  150.         logout();
  151.         break;
  152.     case "/checkloginstatus":
  153.         global $USER_IN_SESSION;
  154.         if ($USER_IN_SESSION == true) {
  155.             isLoggedIn($username);
  156.         }
  157.         else {
  158.             echo "No user is currently logged in.\n";  
  159.         }
  160.         break;
  161.     case "/help":
  162.         echo "___________________________________________________\n\n/login\t\t\tLogin\n/logout\t\t\tTo logout\n/checkloginstatus\tTo check login status\n/exit\t\t\tTo exit\n___________________________________________________\n\n";
  163.         break;
  164.     //debug
  165.     case "/info":
  166.         global $username, $password;
  167.         echo "\n\$user: {$username}\n";
  168.         echo "\$password: {$password}\n";
  169.         echo $USER_IN_SESSION ? '$USER_IN_SESSION: true' : '$USER_IN_SESSION: false';
  170.         echo "\n\n";
  171.         break;
  172.     case "/splash":
  173.         splash();
  174.     default:
  175.         //echo "'{$user_input}' is not recognized as an internal or external command, For more information on a specific command, type /help.\n";
  176.   }
  177. }
  178. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement