]> git.mxchange.org Git - friendica.git/blobdiff - boot.php
Merge pull request #1426 from annando/1503-term-search
[friendica.git] / boot.php
index c44465b10cabddf783c15e8073654140e41617bb..5a5437175ef26a9cdd26d541b41be75b23a6096a 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -1196,35 +1196,24 @@ if(! function_exists('check_plugins')) {
        }
 }
 
-function get_guid($size=16) {
-       $exists = true; // assume by default that we don't have a unique guid
-       do {
-               $prefix = "";
-               while (strlen($prefix) < ($size - 13))
-                       $prefix .= mt_rand();
-
-               $s = substr(uniqid($prefix), -$size);
-
-               $r = q("select id from guid where guid = '%s' limit 1", dbesc($s));
-               if(! count($r))
-                       $exists = false;
-       } while($exists);
-       q("insert into guid (guid) values ('%s') ", dbesc($s));
-       return $s;
-}
+function get_guid($size=16, $prefix = "") {
 
-/*function get_guid($size=16) {
-       $exists = true; // assume by default that we don't have a unique guid
-       do {
-               $s = random_string($size);
-               $r = q("select id from guid where guid = '%s' limit 1", dbesc($s));
-               if(! count($r))
-                       $exists = false;
-       } while($exists);
-       q("insert into guid ( guid ) values ( '%s' ) ", dbesc($s));
-       return $s;
-}*/
+       if ($prefix == "") {
+               $a = get_app();
+               $prefix = hash("crc32", $a->get_hostname());
+       }
 
+       while (strlen($prefix) < ($size - 13))
+               $prefix .= mt_rand();
+
+       if ($size >= 24) {
+               $prefix = substr($prefix, 0, $size - 22);
+               return(str_replace(".", "", uniqid($prefix, true)));
+       } else {
+               $prefix = substr($prefix, 0, $size - 13);
+               return(uniqid($prefix));
+       }
+}
 
 // wrapper for adding a login box. If $register == true provide a registration
 // link. This will most always depend on the value of $a->config['register_policy'].