Bernd Wurst commited on 2013-01-21 15:59:01
              Zeige 1 geänderte Dateien mit 41 Einfügungen und 6 Löschungen.
            
| ... | ... | 
                      @@ -27,20 +27,55 @@ require_role(ROLE_SYSADMIN);  | 
                  
| 27 | 27 | 
                        # Save the timestamp of this request to the session, so we accept only actions performed some seconds after this  | 
                    
| 28 | 28 | 
                        $_SESSION['su_ajax_timestamp'] = time();  | 
                    
| 29 | 29 | 
                         | 
                    
| 30 | 
                        -header("Content-Type: text/javascript");
                       | 
                    |
| 31 | 
                        -echo "[\n";  | 
                    |
| 30 | 
                        +$term = $_GET['term'];  | 
                    |
| 31 | 
                        +$ret = array();  | 
                    |
| 32 | 
                        +  | 
                    |
| 33 | 
                        +function add($val, $id, $value) {
                       | 
                    |
| 34 | 
                        + global $ret;  | 
                    |
| 35 | 
                        +  if (isset($ret[$val]) && is_array($ret[$val])) {
                       | 
                    |
| 36 | 
                        +    array_push($ret[$val], array("id" => $id, "value" => $value));
                       | 
                    |
| 37 | 
                        +  } else {
                       | 
                    |
| 38 | 
                        +    $ret[$val] = array( array("id" => $id, "value" => $value) );
                       | 
                    |
| 39 | 
                        + }  | 
                    |
| 40 | 
                        +}  | 
                    |
| 32 | 41 | 
                         | 
                    
| 33 | 
                        -$result = array_unique(find_customers($_GET['term']));  | 
                    |
| 42 | 
                        +  | 
                    |
| 43 | 
                        +$result = array_unique(find_customers($term));  | 
                    |
| 34 | 44 | 
                        sort($result);  | 
                    
| 35 | 45 | 
                         foreach ($result as $val) {
                       | 
                    
| 36 | 46 | 
                        $c = new Customer((int) $val);  | 
                    
| 37 | 
                        -  echo " {\"id\": \"c{$c->id}\", \"value\": \"Kunde {$c->id}: {$c->fullname}\"},\n";
                       | 
                    |
| 47 | 
                        +  if ($c->id == $term) {
                       | 
                    |
| 48 | 
                        +    add(10, "c{$c->id}", "Kunde {$c->id}: {$c->fullname}");
                       | 
                    |
| 49 | 
                        +  } else {
                       | 
                    |
| 50 | 
                        +    add(90, "c{$c->id}", "Kunde {$c->id}: {$c->fullname}");
                       | 
                    |
| 51 | 
                        + }  | 
                    |
| 38 | 52 | 
                        $users = find_users_for_customer($c->id);  | 
                    
| 39 | 53 | 
                           foreach ($users as $uid => $username) {
                       | 
                    
| 40 | 
                        -    echo " {\"id\": \"u{$uid}\", \"label\": \"User {$uid}: {$username}\"},\n";
                       | 
                    |
| 54 | 
                        +    if ($uid == $term || $username == $term) {
                       | 
                    |
| 55 | 
                        +      add(15, "u{$uid}", "User {$uid}: {$username}");
                       | 
                    |
| 56 | 
                        +    } elseif (strstr($username, $term)) {
                       | 
                    |
| 57 | 
                        +      add(20, "u{$uid}", "User {$uid}: {$username}");
                       | 
                    |
| 58 | 
                        +    } else {
                       | 
                    |
| 59 | 
                        +      add(85, "u{$uid}", "User {$uid}: {$username}");
                       | 
                    |
| 41 | 60 | 
                        }  | 
                    
| 42 | 61 | 
                        }  | 
                    
| 43 | 
                        -echo ' {}
                       | 
                    |
| 62 | 
                        +}  | 
                    |
| 63 | 
                        +  | 
                    |
| 64 | 
                        +ksort($ret);  | 
                    |
| 65 | 
                        +  | 
                    |
| 66 | 
                        +$lines = array();  | 
                    |
| 67 | 
                        +foreach ($ret as $group) {
                       | 
                    |
| 68 | 
                        +  foreach ($group as $entry) {
                       | 
                    |
| 69 | 
                        +    $lines[] = "  { \"id\": \"{$entry['id']}\", \"value\": \"{$entry['value']}\" }";
                       | 
                    |
| 70 | 
                        + }  | 
                    |
| 71 | 
                        +}  | 
                    |
| 72 | 
                        +  | 
                    |
| 73 | 
                        +  | 
                    |
| 74 | 
                        +  | 
                    |
| 75 | 
                        +header("Content-Type: text/javascript");
                       | 
                    |
| 76 | 
                        +echo "[\n";  | 
                    |
| 77 | 
                        +echo implode(",\n", $lines);
                       | 
                    |
| 78 | 
                        +echo '  | 
                    |
| 44 | 79 | 
                        ]';  | 
                    
| 45 | 80 | 
                        die();  | 
                    
| 46 | 81 | 
                         | 
                    
| 47 | 82 |