/publish/application/models/admin_model.php

https://github.com/mwq27/turnerphotography · PHP · 202 lines · 133 code · 63 blank · 6 comment · 18 complexity · 10c1b40c4646d44946045a3a4f4244db MD5 · raw file

  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2. class Admin_model extends CI_Model {
  3. function db_safe($data) {
  4. if(!is_numeric($data) && $data != ""){
  5. $safe_data = mysql_real_escape_string(htmlentities(stripslashes(trim($data)), ENT_QUOTES, 'UTF-8')) or die(mysql_error());
  6. return $safe_data;
  7. }else return $data;
  8. }
  9. function get_client_id($client){
  10. $this->db->select("id")->from("clients")->where("client", $client);
  11. $query = $this->db->get();
  12. return $query->result();
  13. }
  14. function clients(){
  15. $this->db->select("id, client")->from("clients");
  16. $query = $this->db->get();
  17. return $query->result();
  18. }
  19. function login_user($uname, $pword)
  20. {
  21. //$p = mysql_fetch_array($run);
  22. $sql = "select salt, password from users where username = '{$uname}' limit 1";
  23. $run = mysql_query($sql);
  24. $p = mysql_fetch_array($run);
  25. //check if club_id is set
  26. $salt = $p["salt"];
  27. $db_pword = $p['password'];
  28. $hashed_password = generateHash($pword, $salt);
  29. if($hashed_password == $db_pword){
  30. //success
  31. $sql = "select * from users where username = '{$uname}' limit 1";
  32. $query = $this->db->query($sql);
  33. return $query->result();
  34. }else{ return false;
  35. }
  36. }
  37. function new_client($client){
  38. $client = $this->db_safe($client);
  39. $date = date("Y-m-d g:i:s");
  40. $sql = "insert into clients set client = '{$client}', created_at = '{$date}'";
  41. $query = $this->db->query($sql);
  42. if($query){
  43. return $this->db->insert_id();
  44. }else return "fail";
  45. }
  46. function register($email, $pword)
  47. {
  48. $email = $this->db_safe($email);
  49. $pword = $this->db_safe($pword);
  50. $salt = '';
  51. //$pword = db_safe($email);
  52. $pword = generateHash($pword, $salt);
  53. $sql = "insert into users set username = '{$email}', password = '{$pword}', salt='{$salt}'";
  54. $query = $this->db->query($sql);
  55. if($query){
  56. return $this->db->insert_id();
  57. }else return "fail";
  58. }
  59. function update_user($email, $name, $bname, $about_s, $about_l, $tagline, $tagid, $networks)
  60. {
  61. $email = $this->db_safe($email);
  62. $name = $this->db_safe($name);
  63. $bname = $this->db_safe($bname);
  64. $about_s = $this->db_safe($about_s);
  65. $about_l = $this->db_safe($about_l);
  66. $tagline = $this->db_safe($tagline);
  67. $date = date("Y-m-d g:i:s");
  68. $sql = "update users set email = '{$email}', name = '{$name}', business = '{$bname}', networks = '{$networks}', about_short = '{$about_s}', about_long = '{$about_l}', tagline = '{$tagline}', updated_at = '{$date}' where tag_id = '{$tagid}'";
  69. $query = $this->db->query($sql);
  70. if($query){
  71. return $this->db->insert_id();
  72. }else return "fail";
  73. }
  74. function update_profile($data, $hours, $social){
  75. $data['updated_at'] = date("Y-m-d g:i:s");
  76. //update the users info
  77. $res = $this->db->update('users', $data, "tag_id = ".$data['tag_id']);
  78. if($hours != null){
  79. foreach($hours as $key => $vh){
  80. $insert_arr = array(
  81. 'day' => $key,
  82. 'open' => $vh["open"],
  83. 'close' => $vh['close'],
  84. 'tagid' => $data['tag_id'],
  85. 'updated_at' => date("Y-m-d g:i:s")
  86. );
  87. $check_hours = $this->db->query("select tagid from hours where tagid = '{$data[tag_id]}' and day = '{$key}' limit 1");
  88. if($check_hours->num_rows() == 0){
  89. $insert_arr = array(
  90. 'day' => $key,
  91. 'open' => $vh["open"],
  92. 'close' => $vh['close'],
  93. 'tagid' => $data['tag_id'],
  94. 'created_at' => date("Y-m-d g:i:s")
  95. );
  96. $hour_update = $this->db->insert('hours', $insert_arr);
  97. }else{
  98. $hour_update = $this->db->update('hours', $insert_arr, "day = '".$key."' and tagid = ". $data["tag_id"]);
  99. }
  100. }
  101. }
  102. //Social insert/update
  103. if($social != null){
  104. foreach($social as $key => $val){
  105. $insert_arr = array(
  106. 'network' => $key,
  107. 'username' => $val,
  108. 'tag_id' => $data["tag_id"],
  109. 'updated_at' => date("Y-m-d g:i:s")
  110. );
  111. $check_soc = $this->db->query("select network from social where network = '{$key}' and tag_id = '{$data[tag_id]}' limit 1");
  112. if($check_soc->num_rows() == 0){
  113. $insert_arr = array(
  114. 'network' => $key,
  115. 'username' => $val,
  116. 'tag_id' => $data["tag_id"],
  117. 'created_at' => date("Y-m-d g:i:s")
  118. );
  119. $soc_update = $this->db->insert('social', $insert_arr);
  120. }else{
  121. $soc_update = $this->db->update('social', $insert_arr, "network = '".$key."' and tag_id = ". $data["tag_id"]);
  122. }
  123. }
  124. }
  125. if($res){
  126. return $data['username'];
  127. }else
  128. {
  129. return "fail";
  130. }
  131. }
  132. function update_logo($tag, $path){
  133. $insert_arr = array(
  134. 'logo' => $path,
  135. 'updated_at' => date("Y-m-d g:i:s")
  136. );
  137. $logo_update = $this->db->update('users', $insert_arr, "tag_id = ". $tag);
  138. }
  139. }