示例#1
0
if (!isset($_SESSION['profile'])) {
    header('Location: /index.html');
    exit(0);
} else {
    // Если пользователь является заказчиком, ему доступна данная операция
    if ($_SESSION['profile']['type'] == 0) {
        $order = null;
        if (array_key_exists('order', $_SERVER)) {
            $orderId = filter_var($_SERVER['order'], FILTER_VALIDATE_INT);
            if ($orderId !== false) {
                includeModule('order');
                // Атомарно отмечаем заказ удаленным
                if (lock_lock($orderId, 2, 1)) {
                    if (order_delete($orderId, $_SESSION['profile']['user_id'])) {
                        // Если удалось удалить заказ, прогреваем кеш для поиска заказов соответсвующим образом
                        includeModule('cache');
                        cache_delete($orderId);
                        lock_unlock($orderId);
                        return ['completed' => true];
                    } else {
                        lock_unlock($orderId);
                    }
                } else {
                    return ['error' => 'order locked'];
                }
            }
        }
        return ['error' => 'order not found'];
    } else {
        return ['error' => 'permission denied'];
    }
示例#2
0
文件: get.php 项目: alxmslwork/order
<?php

/**
 * Страница профиля пользвоателя. В зависимости от роли пользователя в системе, на странице отображаются либо
 *  собственные заказы заказчика, либо активные заказы, доступные исполнителям
 */
session_start();
if (!isset($_SESSION['profile'])) {
    header('Location: /index.html');
    exit(0);
}
includeModule('cache');
includeModule('order');
// ОДЗ  на смещение выборки заказов
$offset = 0;
if (array_key_exists('offset', $_GET)) {
    $offset = filter_var($_GET['offset'], FILTER_VALIDATE_INT);
    if ($offset === false) {
        $offset = 0;
    }
}
// ОДЗ на испольуземый индекс
switch ($_SERVER['order']) {
    case 'price':
    case 'date':
        $sortOrder = $_SERVER['order'];
        break;
    default:
        $sortOrder = 'date';
        break;
}
示例#3
0
 static function beginConfig($platform, $projectName)
 {
     setPlatform($platform);
     beginProject($projectName, self::$sharedConfig);
     self::includeDefaultLibs();
     $ext = "DLL";
     if (Generator::$platform == "mac") {
         $ext = "Bundle";
     }
     //some platforms will not want a shared config
     if (Generator::$platform == "360" || Generator::$platform == "ps3") {
         self::$sharedConfig = false;
     }
     //begin either a shared lib config, or a static app config
     if (self::$sharedConfig) {
         beginSharedLibConfig(getGameProjectName() . ' ' . $ext, '{C0FCDFF9-E125-412E-87BC-2D89DB971CAB}', 'game', getGameProjectName());
     } else {
         beginAppConfig(getGameProjectName(), '{C0FCDFF9-E125-412E-87BC-2D89DB971CAB}', 'game', getGameProjectName());
     }
     /// Prefs
     addProjectDefine('TORQUE_SHADERGEN');
     addProjectDefine('TORQUE_UNICODE');
     if (self::$sharedConfig) {
         addProjectDefine('TORQUE_SHARED');
     }
     /// For OPCODE
     addProjectDefine('BAN_OPCODE_AUTOLINK');
     addProjectDefine('ICE_NO_DLL');
     addProjectDefine('TORQUE_OPCODE');
     // For libTomCrypt
     addProjectDefine('LTC_NO_PROTOTYPES');
     // Additional includes
     addIncludePath("../../game/shaders");
     addLibIncludePath("lmng");
     addLibIncludePath("lpng");
     addLibIncludePath("ljpeg");
     addLibIncludePath("lungif");
     addLibIncludePath("zlib");
     addLibIncludePath("tinyxml");
     addLibIncludePath("opcode");
     addLibIncludePath("squish");
     addLibIncludePath('convexDecomp');
     if (Generator::$platform != "360" && Generator::$platform != "ps3") {
         addLibIncludePath("libvorbis/include");
         addLibIncludePath("libogg/include");
         addLibIncludePath("libtheora/include");
     }
     // Modules
     includeModule('core');
     includeModule('dsound');
     //includeModule( 'fmod'); // FMOD support removed until made as a 3rd party library
     includeModule('T3D');
     includeModule('advancedLighting');
     includeModule('basicLighting');
     includeModule('collada');
     if (Generator::$platform != "360" && Generator::$platform != "ps3") {
         includeModule('vorbis');
         includeModule('theora');
     }
     if (Generator::$platform == "mac" || Generator::$platform == "win32") {
         includeModule('openal');
     }
     // Dependencies
     addProjectDependency('lmng');
     addProjectDependency('lpng');
     addProjectDependency('lungif');
     addProjectDependency('ljpeg');
     addProjectDependency('zlib');
     addProjectDependency('tinyxml');
     addProjectDependency('opcode');
     addProjectDependency('squish');
     addProjectDependency('collada_dom');
     addProjectDependency('pcre');
     addProjectDependency('convexDecomp');
     if (Generator::$platform != "360" && Generator::$platform != "ps3") {
         addProjectDependency('libvorbis');
         addProjectDependency('libogg');
         addProjectDependency('libtheora');
     }
     if (Generator::$platform == "mac") {
         addProjectDefine('__MACOSX__');
         addProjectDefine('LTM_DESC');
     }
     if (Generator::$platform == "win32") {
         setProjectModuleDefinitionFile('../../' . getLibSrcDir() . 'Torque3D/msvc/torque3d.def');
         addProjectDefine('UNICODE');
         addProjectDefine('INITGUID');
         addProjectDefine('_CRT_SECURE_NO_DEPRECATE');
         addProjectLibInput('COMCTL32.LIB');
         addProjectLibInput('COMDLG32.LIB');
         addProjectLibInput('USER32.LIB');
         addProjectLibInput('ADVAPI32.LIB');
         addProjectLibInput('GDI32.LIB');
         addProjectLibInput('WINMM.LIB');
         addProjectLibInput('WSOCK32.LIB');
         addProjectLibInput('vfw32.lib');
         addProjectLibInput('Imm32.lib');
         addProjectLibInput('d3d9.lib');
         addProjectLibInput('d3dx9.lib');
         addProjectLibInput('DxErr.lib');
         addProjectLibInput('ole32.lib');
         addProjectLibInput('shell32.lib');
         addProjectLibInput('oleaut32.lib');
         addProjectLibInput('version.lib');
     }
     // Include project specific sources in the project/buildFiles/config/projectCode.conf
     $projectCode = realpath($argv[1]) . "/buildFiles/config/projectCode.conf";
     echo "\n   - Loading project code configuration from " . $projectCode . "\n";
     include $projectCode;
 }
示例#4
0
文件: post.php 项目: alxmslwork/order
 * @author alxmsl
 */
// Проверка ОДЗ логина пользователя
$login = filter_var($_POST['login'], FILTER_VALIDATE_REGEXP, ['options' => ['regexp' => '/[a-z]{1,5}/']]);
if ($login === false) {
    return ['error' => 'invalid login value'];
}
// Проверка ОДЗ на пароль пользователя
$password = filter_var($_POST['password'], FILTER_VALIDATE_REGEXP, ['options' => ['regexp' => '/[A-z0-9]{5,32}/']]);
if ($password === false) {
    return ['error' => 'invalid password value'];
}
includeModule('authorizer');
$userId = authorizer_check($login, $password);
if ($userId > 0) {
    includeModule('profile');
    $profile = profile_get($userId);
    if ($profile !== false) {
        /**
         * Если авторизация прошла успешно, получаем профиль пользвоателя и сохраняем его в сессию
         * В сессию сохраняются только данные профиля - относительно публичные. Данные авторайзера хранятся только в БД
         */
        session_start();
        $_SESSION['profile'] = $profile;
        return ['completed' => true];
    } else {
        return ['error' => 'user data unavailable'];
    }
} else {
    switch ($userId) {
        case -1:
示例#5
0
文件: get.php 项目: alxmslwork/order
<?php

/**
 * Метод API получения баланса системы
 * @author alxmsl
 */
includeModule('balance');
return ['balance' => balance_get()];