= 7307) { $raw_data = shell_exec("/usr/syno/bin/synowebapi --exec api=SYNO.Core.Desktop.Initdata method=get version=1 runner=".$synouser); $initdata = json_decode(trim($raw_data),true); $appprivilege = (array_key_exists($appname, $initdata['data']['AppPrivilege']) && $initdata['data']['AppPrivilege'][$appname]) ? 1 : 0; $is_admin = (array_key_exists('is_admin', $initdata['data']['Session']) && $initdata['data']['Session']['is_admin'] == 1) ? 1 : 0; } else { $raw_data = shell_exec("/usr/syno/synoman/webman/initdata.cgi"); $raw_data = substr($raw_data,strpos($raw_data,"{")-1); $initdata = json_decode(trim($raw_data),true); $appprivilege = (array_key_exists($appname, $initdata['AppPrivilege']) && $initdata['AppPrivilege'][$appname]) ? 1 : 0; $is_admin = (array_key_exists('is_admin', $initdata['Session']) && $initdata['Session']['is_admin'] == 1) ? 1 : 0; } // print $synotoken." - ".$synouser." - ".$is_admin; // if application not found or user not admin, return empty string // restore the old state of QUERY_STRING putenv('QUERY_STRING='.$tmpenv); if (!$appprivilege && !$is_admin) return array('','',0); return array($synotoken,$synouser,$is_admin); } ?>