$device = urldecode($_POST['device']);
     $cmd = urldecode($_POST['command']);
     set_samba_config($device, "command_bg", urldecode($_POST['background']));
     echo json_encode(array('result' => set_samba_config($device, "command", $cmd)));
     break;
     /* ISO FILE SHARES */
 /* ISO FILE SHARES */
 case 'add_iso_share':
     $file = isset($_POST['ISO_FILE']) ? urldecode($_POST['ISO_FILE']) : "";
     if (is_file($file)) {
         $info = pathinfo($file);
         $share = $info['filename'];
         set_iso_config("{$file}", "file", $file);
         set_iso_config("{$file}", "share", $share);
     } else {
         unassigned_log("Iso File '{$file}' not found.");
     }
     break;
 case 'remove_iso_config':
     $device = urldecode($_POST['device']);
     remove_config_iso($device);
     break;
 case 'iso_automount':
     $device = urldecode($_POST['device']);
     $status = urldecode($_POST['status']);
     echo json_encode(array('automount' => toggle_iso_automount($device, $status)));
     break;
 case 'set_iso_command':
     $device = urldecode($_POST['device']);
     $cmd = urldecode($_POST['command']);
     set_iso_config($device, "command_bg", urldecode($_POST['background']));
Exemple #2
0
function get_udev_info($device, $udev = NULL, $reload)
{
    global $paths;
    $state = is_file($paths['state']) ? @parse_ini_file($paths['state'], true) : array();
    if ($udev) {
        $state[$device] = $udev;
        save_ini_file($paths['state'], $state);
        return $udev;
    } else {
        if (array_key_exists($device, $state) && !$reload) {
            unassigned_log("Using udev cache for '{$device}'.", "DEBUG");
            return $state[$device];
        } else {
            $state[$device] = parse_ini_string(shell_exec("/sbin/udevadm info --query=property --path \$(/sbin/udevadm info -q path -n {$device} 2>/dev/null) 2>/dev/null"));
            save_ini_file($paths['state'], $state);
            unassigned_log("Not using udev cache for '{$device}'.", "DEBUG");
            return $state[$device];
        }
    }
}