public static function onSave(ActiveRecord $Record, $handleInput = false)
 {
     // set handle
     if (!$Record->Handle) {
         $Record->GlobalHandle = GlobalHandle::createAlias($Record, $handleInput);
     }
 }
 public static function handleAutoReserveRequest()
 {
     $GLOBALS['Session']->requireAccountLevel('Developer');
     static::$responseMode = 'json';
     $created = array();
     $failed = array();
     $verified = array();
     $dh = opendir('.');
     while (false !== ($file = readdir($dh))) {
         if (is_file($file) && preg_match('/^(.*)\\.php$/i', $file, $matches)) {
             $handle = $matches[1];
             $Existing = GlobalHandle::getByHandle($handle);
             if (!$Existing) {
                 $created[] = GlobalHandle::create(array('Type' => 'Reserve', 'Handle' => $handle), true);
             } elseif ($Existing->Type != 'Reserve') {
                 $failed[] = $Existing;
             } else {
                 $verified[] = $Existing;
             }
         }
     }
     closedir($dh);
     return static::respond('autoreserve', array('success' => true, 'created' => $created, 'failed' => $failed, 'verified' => $verified));
 }