PageRenderTime 45ms CodeModel.GetById 22ms RepoModel.GetById 1ms app.codeStats 0ms

/functions.php

https://bitbucket.org/topahead/csn.gs
PHP | 133 lines | 97 code | 36 blank | 0 comment | 8 complexity | a729ed39a314fe4f8250ff2314da577d MD5 | raw file
  1. <?php
  2. function db_die($filename, $line, $message) {
  3. die("File: $filename<br />Line: $line<br />Message: $message");
  4. }
  5. function db_ins_die($filename, $line, $message) {
  6. die('<p style="color:red;">Phurl Installation Wizard failed to connect to the database using the specified credentials. Please go back and try again.</p>');
  7. }
  8. function db_connect() {
  9. mysql_connect(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD) or db_die(__FILE__, __LINE__, mysql_error());
  10. mysql_select_db(DB_NAME) or db_die(__FILE__, __LINE__, mysql_error());
  11. if (DB_VERSION > 4) {
  12. mysql_query("SET NAMES 'utf8'") or db_die(__FILE__, __LINE__, mysql_error());
  13. }
  14. }
  15. function db_ins_connect() {
  16. mysql_connect(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD) or db_ins_die(__FILE__, __LINE__, mysql_error());
  17. mysql_select_db(DB_NAME) or db_ins_die(__FILE__, __LINE__, mysql_error());
  18. if (DB_VERSION > 4) {
  19. mysql_query("SET NAMES 'utf8'") or db_ins_die(__FILE__, __LINE__, mysql_error());
  20. }
  21. }
  22. function get_last_number() {
  23. $db_result = mysql_query("SELECT last_number FROM ".DB_PREFIX."settings") or db_die(__FILE__, __LINE__, mysql_error());
  24. $db_row = mysql_fetch_row($db_result);
  25. return $db_row[0];
  26. }
  27. function increase_last_number() {
  28. mysql_query("UPDATE ".DB_PREFIX."settings SET last_number = (last_number + 1)") or db_die(__FILE__, __LINE__, mysql_error());
  29. return (mysql_affected_rows() > 0) ? true : false;
  30. }
  31. function code_exists($code) {
  32. $db_result = mysql_query("SELECT COUNT(id) FROM ".DB_PREFIX."urls WHERE BINARY code = '$code'") or db_die(__FILE__, __LINE__, mysql_error());
  33. $db_row = mysql_fetch_row($db_result);
  34. return ($db_row[0] > 0) ? true : false;
  35. }
  36. function alias_exists($alias) {
  37. $db_result = mysql_query("SELECT COUNT(id) FROM ".DB_PREFIX."urls WHERE BINARY alias = '$alias'") or db_die(__FILE__, __LINE__, mysql_error());
  38. $db_row = mysql_fetch_row($db_result);
  39. return ($db_row[0] > 0) ? true : false;
  40. }
  41. function url_exists($url) {
  42. $db_result = mysql_query("SELECT id, code, alias FROM ".DB_PREFIX."urls WHERE url LIKE '$url'") or db_die(__FILE__, __LINE__, mysql_error());
  43. if (mysql_num_rows($db_result) > 0) {
  44. return mysql_fetch_row($db_result);
  45. }
  46. return false;
  47. }
  48. function generate_code($number) {
  49. $out = "";
  50. $codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ";
  51. while ($number > 53) {
  52. $key = $number % 54;
  53. $number = floor($number / 54) - 1;
  54. $out = $codes{$key}.$out;
  55. }
  56. return $codes{$number}.$out;
  57. }
  58. function insert_url($url, $code, $alias) {
  59. mysql_query("INSERT INTO ".DB_PREFIX."urls (url, code, alias, date_added) VALUES ('$url', '$code', '$alias', NOW())") or db_die(__FILE__, __LINE__, mysql_error());
  60. return mysql_insert_id();
  61. }
  62. function update_url($id, $alias) {
  63. mysql_query("UPDATE ".DB_PREFIX."urls SET alias = '$alias' WHERE id = '$id'") or db_die(__FILE__, __LINE__, mysql_error());
  64. }
  65. function get_url($alias) {
  66. $db_result = mysql_query("SELECT url FROM ".DB_PREFIX."urls WHERE BINARY code = '$alias' OR alias = '$alias'") or db_die(__FILE__, __LINE__, mysql_error());
  67. if (mysql_num_rows($db_result) > 0) {
  68. $db_row = mysql_fetch_row($db_result);
  69. return $db_row[0];
  70. }
  71. return false;
  72. }
  73. function get_hostname() {
  74. $data = parse_url(SITE_URL);
  75. return $data['host'];
  76. }
  77. function get_domain() {
  78. $hostname = get_hostname();
  79. preg_match("/\.([^\/]+)/", $hostname, $domain);
  80. return $domain[1];
  81. }
  82. function print_errors() {
  83. global $_ERROR;
  84. if (count($_ERROR) > 0) {
  85. echo "<ul id=\"error\">\n";
  86. foreach ($_ERROR as $key => $value) {
  87. echo "<li>$value</li>\n";
  88. }
  89. echo "</ul>\n";
  90. }
  91. }
  92. function is_admin_login() {
  93. if (@$_SESSION['admin'] == 1) {
  94. return true;
  95. }
  96. return false;
  97. }