Guest User

Untitled

a guest
Jul 18th, 2018
350
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 45.29 KB | None | 0 0
  1. <?php
  2. session_start();
  3. //include_once('connect.php');
  4. // Configuration
  5. function get_configuration($data)
  6. {
  7. $query = mysql_query("SELECT * FROM " . global_mysql_configuration_table)or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  8. $configuration = mysql_fetch_array($query);
  9. return($configuration[$data]);
  10. }
  11. // Password
  12. function random_password()
  13. {
  14. $password = rand('1001', '9999');
  15. return $password;
  16. }
  17. function encrypt_password($password)
  18. {
  19. $password = crypt($password, '$1$' . global_salt);
  20. return($password);
  21. }
  22. function add_salt($password)
  23. {
  24. $password = '$1$' . substr(global_salt, 0, -1) . '$' . $password;
  25. return($password);
  26. }
  27. function strip_salt($password)
  28. {
  29. $password = str_replace('$1$' . substr(global_salt, 0, -1) . '$', '', $password);
  30. return($password);
  31. }
  32. // String manipulation
  33. function modify_email($email)
  34. {
  35. $email = str_replace('@', '(at)', $email);
  36. $email = str_replace('.', '(dot)', $email);
  37. return($email);
  38. }
  39. // String validation
  40. function validate_user_name($user_name)
  41. {
  42. if(preg_match('/^[a-z æøåÆØÅ]{2,12}$/i', $user_name))
  43. {
  44. return(true);
  45. }
  46. }
  47. function validate_user_phone($user_mobile)
  48. {
  49. if(preg_match('/^[0-9]{10}$/', $user_mobile)) // To make sure leading digit is not zero, use '/^[1-9][0-9]{0,15}$/'
  50. {
  51. return(true);
  52. }
  53. }
  54. function validate_user_email($user_email)
  55. {
  56. if(filter_var($user_email, FILTER_VALIDATE_EMAIL) && strlen($user_email) < 51)
  57. {
  58. return(true);
  59. }
  60. }
  61. function validate_user_password($user_password)
  62. {
  63. if(strlen($user_password) > 3 && trim($user_password) != '')
  64. {
  65. return(true);
  66. }
  67. }
  68. function validate_price($price)
  69. {
  70. if(is_numeric($price))
  71. {
  72. return(true);
  73. }
  74. }
  75. // User validation
  76. function user_name_exists($user_name)
  77. {
  78. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE user_name='$user_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  79. if(mysql_num_rows($query) > 0)
  80. {
  81. return(true);
  82. }
  83. }
  84. function user_email_exists($user_email)
  85. {
  86. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE user_email='$user_email'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  87. if(mysql_num_rows($query) > 0)
  88. {
  89. return(true);
  90. }
  91. }
  92. // Login
  93. function get_login_data($data)
  94. {
  95. if($data == 'user_email' && isset($_COOKIE[global_cookie_prefix . '_user_email']))
  96. {
  97. return($_COOKIE[global_cookie_prefix . '_user_email']);
  98. }
  99. elseif($data == 'user_password' && isset($_COOKIE[global_cookie_prefix . '_user_password']))
  100. {
  101. return($_COOKIE[global_cookie_prefix . '_user_password']);
  102. }
  103. elseif($data == 'user_company' && isset($_COOKIE[global_cookie_prefix . '_user_company']))
  104. {
  105. return($_COOKIE[global_cookie_prefix . '_user_company']);
  106. }
  107. elseif($data == 'registration_company' && isset($_COOKIE[global_cookie_prefix . '_registration_company']))
  108. {
  109. return($_COOKIE[global_cookie_prefix . '_registration_company']);
  110. }
  111. elseif($data == 'registration_name' && isset($_COOKIE[global_cookie_prefix . '_registration_name']))
  112. {
  113. return($_COOKIE[global_cookie_prefix . '_registration_name']);
  114. }
  115. elseif($data == 'registration_email' && isset($_COOKIE[global_cookie_prefix . '_registration_email']))
  116. {
  117. return($_COOKIE[global_cookie_prefix . '_registration_email']);
  118. }
  119. elseif($data == 'registration_password' && isset($_COOKIE[global_cookie_prefix . '_registration_password']))
  120. {
  121. return($_COOKIE[global_cookie_prefix . '_registration_password']);
  122. }
  123.  
  124. }
  125. function login($user_email, $user_password, $user_company, $user_remember)
  126. {
  127.  
  128. /*if(validate_user_name($user_name) != true)
  129. {
  130. return('<span class="error_span">Name must be <u>letters only</u> and be <u>2 to 12 letters long</u>.</span>');
  131. }*/
  132. if(validate_user_email($user_email) != true)
  133. {
  134. return('<span class="error_span">Email must be a valid email address and be no more than 50 characters long</span>');
  135. }
  136. elseif(validate_user_password($user_password) != true)
  137. {
  138. return('<span class="error_span">Password must be at least 4 characters</span>');
  139. }
  140. elseif(global_secret_code != '0' && $user_secret_code != global_secret_code)
  141. {
  142. return('<span class="error_span">Wrong secret code</span>');
  143. }
  144.  
  145. $user_password_encrypted = encrypt_password($user_password);
  146. $user_password = add_salt($user_password);
  147.  
  148.  
  149. $database = $user_company;
  150.  
  151. $_SESSION['company_name'] = $user_company;
  152.  
  153. $company_name = $user_company;
  154.  
  155. if(isset($_SESSION['new_user_db'])){
  156. $database = $_SESSION['new_user_db'];
  157. }
  158. else{
  159. $database = $user_company;
  160. }
  161.  
  162. $_SESSION['db'] = $database;
  163.  
  164. connect_to_db();
  165.  
  166. /*if(user_name_exists($user_name) == true)
  167. {
  168. return('<span class="error_span">Name is already in use. If you have the same name as someone else, use another spelling that identifies you</span>');
  169. }*/
  170.  
  171. /*if(user_email_exists($user_email) == true)
  172. {
  173. return('<span class="error_span">Email is already registered. <a href="#forgot_password">Forgot your password?</a></span>');
  174. }
  175. */
  176.  
  177. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE user_email='$user_email' AND user_password='$user_password_encrypted' AND company_name='$company_name' OR user_email='$user_email' AND user_password='$user_password' AND company_name='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  178. if(mysql_num_rows($query) == 1)
  179. {
  180. $user = mysql_fetch_array($query);
  181. $_SESSION['user_id'] = $user['user_id'];
  182. $_SESSION['user_is_admin'] = $user['user_is_admin'];
  183. $_SESSION['user_email'] = $user['user_email'];
  184. $_SESSION['user_name'] = $user['user_name'];
  185. $_SESSION['user_reservation_reminder'] = $user['user_reservation_reminder'];
  186. $_SESSION['logged_in'] = '1';
  187. $_SESSION['db'] = $database;
  188. if($user_remember == '1')
  189. {
  190. $user_password = strip_salt($user['user_password']);
  191. setcookie(global_cookie_prefix . '_user_email', $user['user_email'], time() );
  192. setcookie(global_cookie_prefix . '_user_password', $user_password, time() );
  193. setcookie(global_cookie_prefix . '_user_company', $user_password, time() );
  194.  
  195. }
  196. return(1);
  197. }
  198. }
  199. function check_login()
  200. {
  201. //if(isset($_SESSION['logged_in']))
  202. //{
  203.  
  204. $database = $_SESSION['db'];
  205.  
  206. $company_name = $_SESSION['company_name'];
  207.  
  208.  
  209. connect_to_db();
  210. $user_id = $_SESSION['user_id'];
  211. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE user_id='$user_id' AND company_name='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  212. if(mysql_num_rows($query) == 1)
  213. {
  214. return(true);
  215. }
  216. else
  217. {
  218. logout();
  219. echo '<script type="text/javascript">window.location.replace(\'.\');</script>';
  220. }
  221. //}
  222. //else
  223. //{
  224. //logout();
  225. //echo '<script type="text/javascript">window.location.replace(\'.\');</script>';
  226. //}
  227. }
  228. function check_if_ur_exists($url){
  229. $database = 'sydney';
  230. connect_to_db();
  231. $query = mysql_query("SELECT * FROM configuration WHERE url='$url'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  232. if(mysql_num_rows($query) == 1)
  233. {
  234. $user = mysql_fetch_array($query);
  235. $_SESSION['login_company_name'] = $user['company'];
  236. return(1);
  237. }
  238. //"UPDATE " . global_mysql_configuration_table . " SET price='$price'"
  239. /*$query = mysql_query("UPDATE configuration SET url='$url'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');*/
  240. //mysql_close($connect_me);
  241. return(0);
  242. }
  243. function logout()
  244. {
  245. session_unset();
  246. setcookie(global_cookie_prefix . '_user_email', '', time() - 60);
  247. setcookie(global_cookie_prefix . '_user_password', '', time() - 60);
  248. setcookie(global_cookie_prefix . '_user_company', '', time() - 60);
  249.  
  250. }
  251. function create_user($user_company, $user_name,$user_mobile, $user_email, $user_password, $user_secret_code)
  252. {
  253. //$database = $user_company;
  254. $database = 'sydney';
  255.  
  256. $company_name = $user_company;
  257.  
  258. if(validate_user_phone($user_mobile) != true)
  259. {
  260. return('<span class="error_span"> Phone invalid <u>letters only</u> and be <u>2 to 12 letters long</u>. If your name is longer, use a short version of your name</span>');
  261. }
  262.  
  263.  
  264. if(validate_user_name($user_name) != true)
  265. {
  266. return('<span class="error_span">Name must be <u>letters only</u> and be <u>2 to 12 letters long</u>. If your name is longer, use a short version of your name</span>');
  267. }
  268. elseif(validate_user_email($user_email) != true)
  269. {
  270. return('<span class="error_span">Email must be a valid email address and be no more than 50 characters long</span>');
  271. }
  272. elseif(validate_user_password($user_password) != true)
  273. {
  274. return('<span class="error_span">Password must be at least 4 characters</span>');
  275. }
  276. elseif(global_secret_code != '0' && $user_secret_code != global_secret_code)
  277. {
  278. return('<span class="error_span">Wrong secret code</span>');
  279. }
  280. /*elseif(user_name_exists($user_name) == true)
  281. {
  282. return('<span class="error_span">Name is already in use. If you have the same name as someone else, use another spelling that identifies you</span>');
  283. }*/
  284.  
  285. else
  286. {
  287.  
  288. //if( $_SESSION['register'] == '1'){
  289. /*********************************DB REGISTRATION***************************************************/
  290. //$con=mysqli_connect("localhost","root","");
  291.  
  292.  
  293. /*
  294. $sql="SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '$database'";
  295. $result = mysqli_query($con,$sql);
  296.  
  297. if(mysqli_num_rows($result) == 1)
  298. {
  299. return('<span class="error_span">The company name you are trying to register already exists. Please use a different company name.</span>');
  300. }
  301.  
  302.  
  303. */
  304.  
  305.  
  306.  
  307.  
  308. //$sql="CREATE DATABASE $database";
  309. // mysqli_query($con,$sql);
  310.  
  311. // connect to database
  312. //$con=mysqli_connect("localhost","root","","$database");
  313. // Check connection
  314. /* $configuration =" CREATE TABLE IF NOT EXISTS phpmyreservation_configuration (
  315. id int(10) NOT NULL AUTO_INCREMENT,
  316. price float NOT NULL,
  317. PRIMARY KEY (id)
  318. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=2" ;
  319. mysqli_query($con,$configuration);
  320.  
  321. //Dumping data for table `phpmyreservation_configuration
  322. mysqli_query($con,"INSERT INTO phpmyreservation_configuration (id, price) VALUES
  323. (1, 2)"); */
  324. /*
  325.  
  326. $reservations = "CREATE TABLE IF NOT EXISTS reservations_table (
  327. company_name varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  328. reservation_id int(10) NOT NULL AUTO_INCREMENT,
  329. reservation_made_time datetime NOT NULL,
  330. reservation_year smallint(4) NOT NULL,
  331. reservation_week tinyint(2) NOT NULL,
  332. reservation_day tinyint(1) NOT NULL,
  333. reservation_time varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  334. reservation_price float NOT NULL,
  335. reservation_user_id int(10) NOT NULL,
  336. reservation_user_email varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  337. reservation_user_name varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  338. PRIMARY KEY (reservation_id)
  339. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1" ;
  340. mysqli_query($con,$reservations); */
  341.  
  342. /*
  343. $sql = "CREATE TABLE IF NOT EXISTS users_table (
  344. company_name varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  345. user_id int(10) NOT NULL AUTO_INCREMENT,
  346. user_is_admin tinyint(1) NOT NULL,
  347. user_email varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  348. user_password varchar(1000) COLLATE utf8_unicode_ci NOT NULL,
  349. user_name varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  350. user_mobile bigint(20) NOT NULL,
  351. user_reservation_reminder tinyint(1) NOT NULL,
  352. PRIMARY KEY (user_id)
  353. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1" ;
  354. mysqli_query($con,$sql) ;
  355. mysqli_close($con);*/
  356.  
  357. //$_SESSION['new_user_db'] = $database;
  358.  
  359.  
  360. /********************************************************************************************/
  361.  
  362. //$_SESSION['new_user_db'] = $database;
  363. connect_to_db();
  364. /*
  365. if(user_email_exists($user_email) == true)
  366. {
  367. return('<span class="error_span">Email is already registered. <a href="#forgot_password">Forgot your password?</a></span>');
  368. }
  369. */
  370.  
  371. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE company_name='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  372. if(mysql_num_rows($query) == 0)
  373. {
  374. $user_is_admin = '1';
  375. $_SESSION['just_registered'] = '1';
  376. $url=$company_name;
  377. $sms_msg='Hello [user_name] , This is a remainder for your appointment with [business_name] today, the [today_date] , at [appointment_time] . The team, [business_name] .';
  378.  
  379. $email_msg='Hello [user_name] , This is a remainder for your appointment with [business_name] today, the [today_date] , at [appointment_time] . The team, [business_name] .';
  380.  
  381. $welcome_msg='Hello [user_name] , This is a remainder for your appointment with [business_name] today, the [today_date] , at [appointment_time] . The team, [business_name] .';
  382.  
  383.  
  384.  
  385.  
  386. mysql_query (" INSERT INTO configuration (secret_code, company, sms_message, email_message, welcome_email_message, enable_sms, enable_email, enable_email_verification, registration_enabling, who_can, url) VALUES
  387. (0, '$company_name', '$sms_msg', '$email_msg', '$welcome_msg', 0, 0,0, 1, 0, '$url')")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  388. }
  389. else
  390. {
  391. $user_is_admin = '0';
  392. $_SESSION['just_signed_up'] = '1';
  393.  
  394. send_mail_if_enabled();
  395. }
  396. $user_password = encrypt_password($user_password);
  397.  
  398. mysql_query("INSERT INTO " . global_mysql_users_table . " (company_name,user_is_admin,user_email,user_password,user_name,user_mobile,user_reservation_reminder) VALUES ('$company_name',$user_is_admin,'$user_email','$user_password','$user_name','$user_mobile','0')")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  399.  
  400.  
  401. $url=$company_name;
  402. $_SESSION['url']=$url;
  403.  
  404. $_SESSION['company_name'] = $company_name ;
  405.  
  406.  
  407.  
  408.  
  409.  
  410. $user_password = strip_salt($user_password);
  411. setcookie(global_cookie_prefix . '_user_email', $user_email, time() +60 );
  412. setcookie(global_cookie_prefix . '_user_password', $user_password, time() + 60 );
  413. setcookie(global_cookie_prefix . '_user_company', $user_company, time() + 60);
  414. return(1);
  415. }
  416. }
  417. function send_mail_if_enabled()
  418. {
  419. $company_name = $_SESSION['company_name'];
  420.  
  421. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  422. $user = mysql_fetch_array($query);
  423. if($user['enable_email_verification'] == 1){
  424. $myemail="matt.mwansa@yahoo.com";
  425. $subject="go fool";
  426. $message="let go";
  427. mail($myemail, $subject, $message);
  428. }
  429. }
  430. function list_admin_users()
  431. {
  432. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE user_is_admin='1' ORDER BY user_name")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  433. if(mysql_num_rows($query) < 1)
  434. {
  435. return('<span class="error_span">There are no admins</span>');
  436. }
  437. else
  438. {
  439. $return = '<table id="forgot_password_table"><tr><th>Name</th><th>Email</th></tr>';
  440. $i = 0;
  441. while($user = mysql_fetch_array($query))
  442. {
  443. $i++;
  444. $return .= '<tr><td>' . $user['user_name'] . '</td><td><span id="email_span_' . $i . '"></span></td></tr><script type="text/javascript">$(\'#email_span_' . $i . '\').html(\'<a href="mailto:\'+$.base64.decode(\'' . base64_encode($user['user_email']) . '\')+\'">\'+$.base64.decode(\'' . base64_encode($user['user_email']) . '\')+\'</a>\');</script>';
  445. }
  446. $return .= '</table>';
  447. return($return);
  448. }
  449. }
  450. // Reservations
  451. function highlight_day($day)
  452. {
  453. $day = str_ireplace(global_day_name, '<span id="today_span">' . global_day_name . '</span>', $day);
  454. return $day;
  455. }
  456. function read_reservation($week, $day, $time)
  457. {
  458. $company_name = $_SESSION['company_name'];
  459. $user_name = $_SESSION['user_name'];
  460. $is_admin = $_SESSION['user_is_admin'];
  461.  
  462. $query = mysql_query("SELECT * FROM " . global_mysql_reservations_table . " WHERE reservation_week='$week'
  463. AND company_name='$company_name' AND reservation_day='$day' AND reservation_time='$time'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  464. $reservation = mysql_fetch_array($query);
  465.  
  466. if( $is_admin == 1){
  467. if((strcmp( $reservation['reservation_user_name'], $user_name ) === 0 )){
  468. return( ' <span style="color:red">'.$reservation['reservation_user_name'].'</span>');
  469. }
  470. else{
  471. return($reservation['reservation_user_name']);
  472. }
  473. }
  474.  
  475. if( strcmp( $reservation['reservation_user_name'], $user_name ) === 0){
  476. return($reservation['reservation_user_name']);
  477. }
  478.  
  479. if( $reservation['reservation_user_name'] != '') {
  480. return ('Reserved');
  481. }
  482.  
  483.  
  484. return($reservation['reservation_user_name']);
  485.  
  486. }
  487. function read_reservation_details($week, $day, $time)
  488. {
  489. $company_name = $_SESSION['company_name'];
  490.  
  491. $query = mysql_query("SELECT * FROM " . global_mysql_reservations_table . " WHERE reservation_week='$week' AND reservation_day='$day' AND company_name='$company_name' AND reservation_time='$time'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  492. $reservation = mysql_fetch_array($query);
  493. if(empty($reservation))
  494. {
  495. return(0);
  496.  
  497. }
  498. else
  499. {
  500. return('<b>Reservation made:</b> ' . $reservation['reservation_made_time'] . '<br><b>User\'s email:</b> ' . $reservation['reservation_user_email']);
  501. }
  502. }
  503. function make_reservation($week, $day, $time)
  504. {
  505. $user_id = $_SESSION['user_id'];
  506. $user_email = $_SESSION['user_email'];
  507. $user_name = $_SESSION['user_name'];
  508. $price = global_price;
  509.  
  510. $user_reservation_id = $_SESSION['user_id'];
  511.  
  512.  
  513.  
  514.  
  515. $company_name = $_SESSION['company_name'];
  516. if($week == '0' && $day == '0' && $time == '0')
  517. {
  518. mysql_query("INSERT INTO " . global_mysql_reservations_table . " (company_name,reservation_made_time,reservation_week,reservation_day,reservation_time,reservation_price,reservation_user_id,reservation_user_email,reservation_user_name) VALUES ( '$company_name',now(),'$week','$day','$time','$price','$user_id','$user_email','$user_name')")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  519. return(1);
  520. }
  521. elseif($week < global_week_number && $_SESSION['user_is_admin'] != '1' || $week == global_week_number && $day < global_day_number && $_SESSION['user_is_admin'] != '1')
  522. {
  523. return('You can\'t reserve back in time');
  524. }
  525. elseif($week > global_week_number + global_weeks_forward && $_SESSION['user_is_admin'] != '1')
  526. {
  527. return('You can only reserve ' . global_weeks_forward . ' weeks forward in time');
  528. }
  529. else
  530. {
  531. $query = mysql_query("SELECT * FROM " . global_mysql_reservations_table . " WHERE reservation_week='$week' AND reservation_day='$day'AND company_name='$company_name' AND reservation_time='$time'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  532. if(mysql_num_rows($query) < 1)
  533. {
  534. $year = global_year;
  535. mysql_query("INSERT INTO " . global_mysql_reservations_table . " (company_name, reservation_made_time,reservation_year,reservation_week,reservation_day,reservation_time,reservation_price,reservation_user_id,reservation_user_email,reservation_user_name) VALUES ('$company_name',now(),'$year','$week','$day','$time','$price','$user_id','$user_email','$user_name')")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  536. return(1);
  537. }
  538. else
  539. {
  540. return('Someone else just reserved this time');
  541. }
  542. }
  543. }
  544. function delete_reservation($week, $day, $time)
  545. {
  546. $company_name = $_SESSION['company_name'];
  547.  
  548. if($week < global_week_number && $_SESSION['user_is_admin'] != '1' || $week == global_week_number && $day < global_day_number && $_SESSION['user_is_admin'] != '1')
  549. {
  550. return('You can\'t reserve back in time');
  551. }
  552. elseif($week > global_week_number + global_weeks_forward && $_SESSION['user_is_admin'] != '1')
  553. {
  554. return('You can only reserve ' . global_weeks_forward . ' weeks forward in time');
  555. }
  556. else
  557. {
  558. $query = mysql_query("SELECT * FROM " . global_mysql_reservations_table . " WHERE reservation_week='$week' AND reservation_day='$day' AND reservation_time='$time' AND company_name='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  559. $user = mysql_fetch_array($query);
  560. if($user['reservation_user_id'] == $_SESSION['user_id'] || $_SESSION['user_is_admin'] == '1')
  561. {
  562. mysql_query("DELETE FROM " . global_mysql_reservations_table . " WHERE reservation_week='$week' AND reservation_day='$day' AND reservation_time='$time'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  563. return(1);
  564. }
  565. else
  566. {
  567. return('You can\'t remove other users\' reservations');
  568. }
  569. }
  570. }
  571. // Admin control panel
  572. function list_users()
  573. {
  574.  
  575. $company_name = $_SESSION['company_name'];
  576.  
  577. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE company_name='$company_name' ORDER BY user_is_admin DESC, user_name")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  578. $users = '<table id="users_table"><tr><th>ID</th><th>Admin</th><th>Name</th><th>Email</th><th>Reminders</th><th>Usage</th><th>Cost</th><th></th></tr>';
  579. while($user = mysql_fetch_array($query))
  580. {
  581. $users .= '<tr id="user_tr_' . $user['user_id'] . '"><td><label for="user_radio_' . $user['user_id'] . '">' . $user['user_id'] . '</label></td><td>' . $user['user_is_admin'] . '</td><td><label for="user_radio_' . $user['user_id'] . '">' . $user['user_name'] . '</label></td><td><label for="user_radio_' . $user['user_id'] . '">' . $user['user_email'] . '</label></td><td>' . $user['user_reservation_reminder'] . '</td><td>' . count_reservations($user['user_id']) . '</td><td>' . cost_reservations($user['user_id']) . ' ' . global_currency . '</td><td><input type="radio" name="user_radio" class="user_radio" id="user_radio_' . $user['user_id'] . '" value="' . $user['user_id'] . '"></td></tr>';
  582. }
  583. $users .= '</table>';
  584. return($users);
  585. }
  586. function reset_user_password($user_id)
  587. {
  588. $password = random_password();
  589. $password_encrypted = encrypt_password($password);
  590. mysql_query("UPDATE " . global_mysql_users_table . " SET user_password='$password_encrypted' WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  591. if($user_id == $_SESSION['user_id'])
  592. {
  593. return(0);
  594. }
  595. else
  596. {
  597. return('The password to the user with ID ' . $user_id . ' is now "' . $password . '". The user can now log in and change the password');
  598. }
  599. }
  600. function change_user_permissions($user_id)
  601. {
  602. if($user_id == $_SESSION['user_id'])
  603. {
  604. return('<span class="error_span">Sorry, you can\'t use your superuser powers to remove them</span>');
  605. }
  606. else
  607. {
  608. mysql_query("UPDATE " . global_mysql_users_table . " SET user_is_admin = 1 - user_is_admin WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  609. return(1);
  610. }
  611. }
  612. function delete_user_data($user_id, $data)
  613. {
  614. if($user_id == $_SESSION['user_id'] && $data != 'reservations')
  615. {
  616. return('<span class="error_span">Sorry, self-destructive behaviour is not accepted</span>');
  617. }
  618. else
  619. {
  620. if($data == 'reservations')
  621. {
  622. mysql_query("DELETE FROM " . global_mysql_reservations_table . " WHERE reservation_user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  623. }
  624. elseif($data == 'user')
  625. {
  626. mysql_query("DELETE FROM " . global_mysql_users_table . " WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  627. mysql_query("DELETE FROM " . global_mysql_reservations_table . " WHERE reservation_user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  628. }
  629. return(1);
  630. }
  631. }
  632. function delete_all($data)
  633. {
  634. $user_id = $_SESSION['user_id'];
  635. if($data == 'reservations')
  636. {
  637. mysql_query("DELETE FROM " . global_mysql_reservations_table . " WHERE reservation_user_id!='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  638. }
  639. elseif($data == 'users')
  640. {
  641. mysql_query("DELETE FROM " . global_mysql_users_table . " WHERE user_id!='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  642. mysql_query("DELETE FROM " . global_mysql_reservations_table . " WHERE reservation_user_id!='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  643. }
  644. elseif($data == 'everything')
  645. {
  646. mysql_query("DELETE FROM " . global_mysql_users_table . "")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  647. mysql_query("DELETE FROM " . global_mysql_reservations_table . "")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  648. }
  649. return(1);
  650. }
  651. function save_system_configuration($price)
  652. {
  653. if(validate_price($price) != true)
  654. {
  655. return('<span class="error_span">Price must be a number (use . and not , if you want to use decimals)</span>');
  656. }
  657. else
  658. {
  659. mysql_query("UPDATE " . global_mysql_configuration_table . " SET price='$price'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  660. }
  661. return(1);
  662. }
  663. // User control panel
  664. function get_usage()
  665. {
  666. $usage = '<table id="usage_table"><tr><th>Reservations</th><th>Cost</th><th>Current price per reservation</th></tr><tr><td>' . count_reservations($_SESSION['user_id']) . '</td><td>' . cost_reservations($_SESSION['user_id']) . ' ' . global_currency . '</td><td>' . global_price . ' ' . global_currency . '</td></tr></table>';
  667. return($usage);
  668. }
  669. function count_reservations($user_id)
  670. {
  671. $query = mysql_query("SELECT * FROM " . global_mysql_reservations_table . " WHERE reservation_user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  672. $count = mysql_num_rows($query);
  673. return($count);
  674. }
  675. function cost_reservations($user_id)
  676. {
  677. $query = mysql_query("SELECT * FROM " . global_mysql_reservations_table . " WHERE reservation_user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  678. $cost = 0;
  679. while($reservation = mysql_fetch_array($query))
  680. {
  681. $cost =+ $cost + $reservation['reservation_price'];
  682. }
  683. return($cost);
  684. }
  685. function get_reservation_reminders()
  686. {
  687. $user_id = $_SESSION['user_id'];
  688. $query = mysql_query("SELECT * FROM " . global_mysql_users_table . " WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  689. $user = mysql_fetch_array($query);
  690. if($user['user_reservation_reminder'] == 1)
  691. {
  692. $return = '<input type="checkbox" id="reservation_reminders_checkbox" checked="checked">';
  693. }
  694. else
  695. {
  696. $return = '<input type="checkbox" id="reservation_reminders_checkbox">';
  697. }
  698. return($return);
  699. }
  700. function get_sms_reminders()
  701. {
  702. $company_name = $_SESSION['company_name'];
  703.  
  704. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  705. $user = mysql_fetch_array($query);
  706. if($user['enable_sms'] == 1)
  707. {
  708. $return = '<input type="checkbox" id="sms_reminders_checkbox" checked="checked">';
  709. }
  710. else
  711. {
  712. $return = '<input type="checkbox" id="sms_reminders_checkbox">';
  713. }
  714. return($return);
  715. }
  716. function get_email_verification()
  717. {
  718. $company_name = $_SESSION['company_name'];
  719.  
  720. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  721. $user = mysql_fetch_array($query);
  722. if($user['enable_email_verification'] == 1)
  723. {
  724. $return = '<input type="checkbox" id="email_verification_checkbox" checked="checked">';
  725. }
  726. else
  727. {
  728. $return = '<input type="checkbox" id="email_verification_checkbox">';
  729. }
  730. return($return);
  731. }
  732. function get_email_reminders()
  733. {
  734. $company_name = $_SESSION['company_name'];
  735.  
  736. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  737. $user = mysql_fetch_array($query);
  738. if($user['enable_email'] == 1)
  739. {
  740. $return = '<input type="checkbox" id="email_reminders_checkbox" checked="checked">';
  741. }
  742. else
  743. {
  744. $return = '<input type="checkbox" id="email_reminders_checkbox">';
  745. }
  746. return($return);
  747. }
  748. function toggle_reservation_reminder()
  749. {
  750. $user_id = $_SESSION['user_id'];
  751. mysql_query("UPDATE " . global_mysql_users_table . " SET user_reservation_reminder = 1 - user_reservation_reminder WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  752. return(1);
  753. }
  754. function toggle_sms_reminder()
  755. {
  756. $company_name = $_SESSION['company_name'];
  757.  
  758. mysql_query("UPDATE configuration SET enable_sms = 1 - enable_sms WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  759. return(1);
  760. }
  761. function toggle_email_verification()
  762. {
  763. $company_name = $_SESSION['company_name'];
  764.  
  765. mysql_query("UPDATE configuration SET enable_email_verification = 1 - enable_email_verification WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  766. return(1);
  767. }
  768. function toggle_email_reminder()
  769. {
  770. $company_name = $_SESSION['company_name'];
  771. mysql_query("UPDATE configuration SET enable_email = 1 - enable_email WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  772. return(1);
  773. }
  774. function change_user_details($user_name, $user_email, $user_password)
  775. {
  776.  
  777. $user_id = $_SESSION['user_id'];
  778. if(validate_user_name($user_name) != true)
  779. {
  780. return('<span class="error_span">Name must be <u>letters only</u> and be <u>2 to 12 letters long</u>. If your name is longer, use a short version of your name</span>');
  781. }
  782. if(validate_user_email($user_email) != true)
  783. {
  784. return('<span class="error_span">Email must be a valid email address and be no more than 50 characters long</span>');
  785. }
  786. elseif(validate_user_password($user_password) != true && !empty($user_password))
  787. {
  788. return('<span class="error_span">Password must be at least 4 characters</span>');
  789. }
  790. elseif(user_name_exists($user_name) == true && $user_name != $_SESSION['user_name'])
  791. {
  792. return('<span class="error_span">Name is already in use. If you have the same name as someone else, use another spelling that identifies you</span>');
  793. }
  794. elseif(user_email_exists($user_email) == true && $user_email != $_SESSION['user_email'])
  795. {
  796. return('<span class="error_span">Email is already registered</span>');
  797. }
  798. else
  799. {
  800. if(empty($user_password))
  801. {
  802. mysql_query("UPDATE " . global_mysql_users_table . " SET user_name='$user_name', user_email='$user_email' WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  803. }
  804. else
  805. {
  806. $user_password = encrypt_password($user_password);
  807. mysql_query("UPDATE " . global_mysql_users_table . " SET user_name='$user_name', user_email='$user_email', user_password='$user_password' WHERE user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  808. }
  809. mysql_query("UPDATE " . global_mysql_reservations_table . " SET reservation_user_name='$user_name', reservation_user_email='$user_email' WHERE reservation_user_id='$user_id'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  810. $_SESSION['user_name'] = $user_name;
  811. $_SESSION['user_email'] = $user_email;
  812. $user_password = strip_salt($user_password);
  813. setcookie(global_cookie_prefix . '_user_email', $user_email, time() + 3600 * 24 * intval(global_remember_login_days));
  814. setcookie(global_cookie_prefix . '_user_password', $user_password, time() + 3600 * 24 * intval(global_remember_login_days));
  815. return(1);
  816. }
  817. }
  818. function update_sms_details($user_name)
  819. {
  820. $company_name = $_SESSION['company_name'];
  821.  
  822. mysql_query("UPDATE configuration SET sms_message='$user_name' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  823.  
  824. return(1);
  825.  
  826. }
  827. function update_email_details($user_name)
  828. {
  829. $company_name = $_SESSION['company_name'];
  830.  
  831. mysql_query("UPDATE configuration SET email_message='$user_name' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  832.  
  833. return(1);
  834.  
  835. }
  836. function update_welcome_email_msg($user_name)
  837. {
  838. $company_name = $_SESSION['company_name'];
  839.  
  840. mysql_query("UPDATE configuration SET welcome_email_message='$user_name' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  841.  
  842. return(1);
  843.  
  844. }
  845. function get_current_sms_message(){
  846. $company_name = $_SESSION['company_name'];
  847. $query = mysql_query("SELECT * FROM configuration WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  848.  
  849. $result = mysql_fetch_array($query);
  850. if($result['sms_message'] )
  851. $sms_message= $result['sms_message'];
  852. $span_start = ' <span style="color:red">[';
  853. $span_end = ']</span> ';
  854. $sms_message = str_replace("[user_name],", "[user_name],</br>", $sms_message);
  855. $sms_message = str_replace("[appointment_time].", "[appointment_time].</br>", $sms_message);
  856. $sms_message = str_replace("team, ", "team, </br>", $sms_message);
  857. $sms_message = str_replace("[", $span_start, $sms_message);
  858. $sms_message = str_replace("]", $span_end, $sms_message);
  859. return($sms_message);
  860. }
  861. function get_current_email_message(){
  862. $company_name = $_SESSION['company_name'];
  863.  
  864. $query = mysql_query("SELECT * FROM configuration WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  865.  
  866. $result = mysql_fetch_array($query);
  867. if($result['email_message'] )
  868. $email_message= $result['email_message'];
  869.  
  870. $span_start = ' <span style="color:red">[';
  871. $span_end = ']</span> ';
  872. $email_message = str_replace("[user_name],", "[user_name],</br>", $email_message);
  873. $email_message = str_replace("[appointment_time].", "[appointment_time].</br>", $email_message);
  874. $email_message = str_replace("team, ", "team, </br>", $email_message);
  875. $email_message = str_replace("[", $span_start, $email_message);
  876. $email_message = str_replace("]", $span_end, $email_message);
  877.  
  878. return($email_message);
  879. }
  880. function get_welcome_email_message(){
  881. $company_name = $_SESSION['company_name'];
  882. $query = mysql_query("SELECT * FROM configuration WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  883.  
  884. $result = mysql_fetch_array($query);
  885. if($result['welcome_email_message'] )
  886. $welcome_email_message= $result['welcome_email_message'];
  887.  
  888.  
  889. $span_start = ' <span style="color:red">[';
  890. $span_end = ']</span> ';
  891. $welcome_email_message = str_replace("[user_name],", "[user_name],</br>", $welcome_email_message);
  892. $welcome_email_message = str_replace("[appointment_time].", "[appointment_time].</br>", $welcome_email_message);
  893. $welcome_email_message = str_replace("team, ", "team, </br>", $welcome_email_message);
  894. $welcome_email_message = str_replace("[", $span_start, $welcome_email_message);
  895. $welcome_email_message = str_replace("]", $span_end, $welcome_email_message);
  896.  
  897.  
  898. return($welcome_email_message);
  899. }
  900. function registration_settings($user_name)
  901. {
  902. $company_name = $_SESSION['company_name'];
  903.  
  904. mysql_query("UPDATE configuration SET registration='$user_name' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  905.  
  906. return(1);
  907.  
  908. }
  909. function registration_enabling($enable_id)
  910. {
  911. $company_name = $_SESSION['company_name'];
  912.  
  913. mysql_query("UPDATE configuration SET registration_enabling='$enable_id' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  914.  
  915. return(1);
  916.  
  917. }
  918. function check_registration_settings_radio(){
  919. $company_name = $_SESSION['company_name'];
  920. $anyone=0;
  921. $secret=0;
  922. $disable=0;
  923.  
  924.  
  925. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  926. $user = mysql_fetch_array($query);
  927.  
  928. if($user['registration'] == 1){
  929. $return =
  930. '<input type="radio" id="new_user_registration_anyone" name="reg_radio" checked="checked" />
  931. <label for="new_user_registration_settings" id="anyone" ><span style="top:-11px">Allow anyone to register</span></label></br>
  932. <input type="radio" id="new_user_registration_secret_code" name="reg_radio" />
  933. <label for="new_user_registration_settings" id="secret_code ><span style="top:-11px">Set secret registration code</span></label></br>
  934. <input type="radio" id="new_user_registration_disable" name="reg_radio" />
  935. <label for="new_user_registration_settings" id="disable" ><span style="top:-11px">Disable registration.</span></label></br>';
  936. }
  937.  
  938. else if($user['registration'] == 2){
  939. $return =
  940. '<input type="radio" id="new_user_registration_anyone" name="reg_radio" />
  941. <label for="new_user_registration_settings" id="anyone" ><span style="top:-11px">Allow anyone to register</span></label></br>
  942. <input type="radio" id="new_user_registration_secret_code" name="reg_radio" checked="checked"/>
  943. <label for="new_user_registration_settings" id="secret_code ><span style="top:-11px">Set secret registration code</span></label></br>
  944. <input type="radio" id="new_user_registration_disable" name="reg_radio" />
  945. <label for="new_user_registration_settings" id="disable" ><span style="top:-11px">Disable registration.</span></label></br>';
  946. }
  947.  
  948. else{
  949. $return =
  950. '<input type="radio" id="new_user_registration_anyone" />
  951. <label for="new_user_registration_settings" id="anyone" ><span style="top:-11px">Allow anyone to register</span></label></br>
  952. <input type="radio" id="new_user_registration_secret_code" />
  953. <label for="new_user_registration_settings" id="secret_code ><span style="top:-11px">Set secret registration code</span></label></br>
  954. <input type="radio" id="new_user_registration_disable" />
  955. <label for="new_user_registration_settings" id="disable" ><span style="top:-11px">Disable registration.</span></label></br>';
  956. }
  957. return($return);
  958. }
  959. function check_registration_enabling_radio(){
  960. $company_name = $_SESSION['company_name'];
  961.  
  962.  
  963. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  964. $user = mysql_fetch_array($query);
  965.  
  966. if($user['registration_enabling'] == 1){
  967. $return ='
  968. <p class="radio_button">
  969. <input type="radio" id="enable_registration" name="registration_radio" checked="checked" />
  970. <label for="enable_registration" >Enable_Registration</label></p>
  971. <p id="enable_registration_message_p"></p>
  972. <p class="under_radio_button"> When selected, users must register before the can make a reservation.</br> The reservation table will only be visible
  973. to users who have signed up to you reservation service.
  974. </p>
  975.  
  976. <p class="radio_button">
  977. <input type="radio" id="disable_registration" name="registration_radio" />
  978. <label for="disable_registration" id="disabling_registration " >Disable Registration</label></p>
  979. <p id="disable_registration_message_p"></p>
  980. <p class="under_radio_button"> This is the alternative option. When selected, user reach your reservation table without signing up to your reservation service.</b> Please note that this means that anonymous clients with knowledge of your unique url or who search for your reservation service through our system will be able to make reservations.
  981. </p>';
  982. }
  983. else{
  984. $return = '
  985. <p class="radio_button">
  986. <input type="radio" id="enable_registration" name="registration_radio" />
  987. <label for="enable_registration" >Enable_Registration</label></p>
  988. <p id="enable_registration_message_p"></p>
  989. <p class="under_radio_button"> When selected, users must register before the can make a reservation.</br> The reservation table will only be visible
  990. to users who have signed up to you reservation service.
  991. </p>
  992.  
  993. <p class="radio_button">
  994. <input type="radio" id="disable_registration" name="registration_radio" checked="checked" />
  995. <label for="disable_registration" id="disabling_registration " >Disable Registration</label></p>
  996. <p id="disable_registration_message_p"></p>
  997. <p class="under_radio_button"> This is the alternative option. When selected, user reach your reservation table without signing up to your reservation service.</b> Please note that this means that anonymous clients with knowledge of your unique url or who search for your reservation service through our system will be able to make reservations.
  998. </p>';
  999. }
  1000. return($return);
  1001. }
  1002. function check_who_can_register_radio(){
  1003. $company_name = $_SESSION['company_name'];
  1004.  
  1005.  
  1006. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  1007. $user = mysql_fetch_array($query);
  1008.  
  1009. if($user['who_can'] == 0){
  1010. $return =
  1011. '<p class="radio_button">
  1012. <input type="radio" id="registration_anyone" name="who_can_radio" checked="checked" />
  1013. <label for="registration_anyone" >Anyone</label></p>
  1014. <p class="under_radio_button">This options allows any user to sign up to a business reservation service.</p>
  1015.  
  1016. <p class="radio_button">
  1017. <input type="radio" id="registration_secret" name="who_can_radio" />
  1018. <label for="registration_secret" >Set secret code</label></p>
  1019. <p class="under_radio_button" style="margin-bottom:0px"> With this option, a six digit secret code is set. Anyone is still allowed to sign up to the reservation service , but they must also enter the secret code.</br> This option is necessary when only users with prior knowledge of the secret code are allowed to sign up.</br> Before you set or update the secret code, make sure the set secret code radio button is enabled. </p>';
  1020. }
  1021.  
  1022. else{
  1023. $return =
  1024. '<p class="radio_button">
  1025. <input type="radio" id="registration_anyone" name="who_can_radio" />
  1026. <label for="registration_anyone" >Anyone</label></p>
  1027. <p class="under_radio_button">This options allows any user to sign up to a business reservation service.</p>
  1028.  
  1029. <p class="radio_button">
  1030. <input type="radio" id="registration_secret" name="who_can_radio" checked="checked" />
  1031. <label for="registration_secret" >Set Secret code</label></p>
  1032. <p class="under_radio_button" style="margin-bottom:0px"> With this option, a six digit secret code is set. Anyone is still allowed to sign up to the reservation service , but they must also enter the secret code.</br> This option is necessary when only users with prior knowledge of the secret code are allowed to sign up.</br> Before you set or update the secret code, make sure the set secret code radio button is enabled.</p>';
  1033. }
  1034.  
  1035. return $return;
  1036. }
  1037. function get_current_secrect_code(){
  1038. if(isset($_SESSION['company_name'])){
  1039. $company_name = $_SESSION['company_name'];
  1040. }
  1041. else
  1042. {
  1043. $company_name = $_SESSION['login_company_name'];
  1044. connect_to_db();
  1045. }
  1046.  
  1047.  
  1048. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  1049. $user = mysql_fetch_array($query);
  1050.  
  1051. if($user['who_can'] != 0){
  1052. return $user['who_can'];
  1053. }
  1054. return ('');
  1055. }
  1056. function update_who_can_register($who_can_id, $who_can_value){
  1057. $company_name = $_SESSION['company_name'];
  1058.  
  1059. mysql_query("UPDATE configuration SET who_can='$who_can_value' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  1060.  
  1061. return(1);
  1062.  
  1063. }
  1064. function get_admin_email($company_name){
  1065. $query = mysql_query("SELECT * FROM users_table WHERE company_name ='$company_name' AND user_is_admin = '1'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  1066. $admin_email = mysql_fetch_array($query);
  1067.  
  1068. $email = $admin_email['user_email'];
  1069.  
  1070. return $email;
  1071. }
  1072. function change_url($new_url)
  1073. {
  1074. $company_name = $_SESSION['company_name'];
  1075.  
  1076. mysql_query("UPDATE configuration SET url ='$new_url' WHERE company='$company_name'")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  1077.  
  1078. return(1);
  1079. }
  1080. function get_current_url(){
  1081. $company_name = $_SESSION['company_name'];
  1082. $query = mysql_query("SELECT * FROM configuration WHERE company ='$company_name' ")or die('<span class="error_span"><u>MySQL error:</u> ' . htmlspecialchars(mysql_error()) . '</span>');
  1083. $current_url = mysql_fetch_array($query);
  1084.  
  1085. $url = $current_url['url'];
  1086.  
  1087. return $url;
  1088. }
  1089. ?>
Add Comment
Please, Sign In to add comment