Advertisement
Guest User

Untitled

a guest
Feb 24th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 KB | None | 0 0
  1. <?php
  2. function user_exists($name) {
  3. if(file_exists('name/' . $name)) {
  4. return true;
  5. } else {
  6. return false;
  7. }
  8. }
  9.  
  10. function user_create($name, $password, $power) {
  11. if(user_exists($name)) {
  12. return array('success' => false, 'error' => 'user already exists');
  13. } else {
  14. $user_folder = 'name/' . $name . '/';
  15. $id = users_get_count();
  16. for($i = strlen($id); $i < 4; $i++) {
  17. $id = '0' . $id;
  18. }
  19. mkdir($user_folder, 0777);
  20. $file_handle = fopen($user_folder . 'id', 'w');
  21. fwrite($file_handle, $id);
  22. fclose($file_handle);
  23. $file_handle = fopen($user_folder . 'power', 'w');
  24. fwrite($file_handle, $power);
  25. fclose($file_handle);
  26. $file_handle = fopen('hash/' . sha1($id . '_' . $name . ':' . $password), 'w');
  27. fwrite($file_handle, '');
  28. fclose($file_handle);
  29. return array('success' => true);
  30. }
  31. }
  32.  
  33. function user_remove($name, $password) {
  34. if(! user_exists($name)) {
  35. return array('success' => false, 'error' => 'user doesn\'t exist');
  36. }
  37. $hash = sha1(user_get_id($name) . '_' . $name . ':' . $password);
  38. if(! file_exists('hash/' . $hash)) {
  39. return array('success' => false, 'error' => 'password is incorrect');
  40. } else {
  41. require 'utils.php';
  42. recursive_rmdir('name/' . $name);
  43. unlink('hash/' . $hash);
  44. return array('success' => true);
  45. }
  46. }
  47.  
  48. function user_get_id($name) {
  49. if(! user_exists($name)) {
  50. return array('success' => false, 'error' => 'user doesn\'t exist');
  51. } else {
  52. $user_folder = 'name/' . $name . '/';
  53. $file_handle = fopen($user_folder . 'id', 'r');
  54. $id = fread($file_handle, filesize($user_folder . 'id'));
  55. fclose($file_handle);
  56. return $id;
  57. }
  58. }
  59.  
  60. /*function user_get_power(name) {
  61. }*/
  62.  
  63. function users_get_count() {
  64. $count = count(array_filter(glob('name/*'), 'is_dir'));;
  65. return $count;
  66. }
  67. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement