<?php

/*
 | --------------------------------------------------------------------
 | App Namespace
 | --------------------------------------------------------------------
 |
 | This defines the default Namespace that is used throughout
 | CodeIgniter to refer to the Application directory. Change
 | this constant to change the namespace that all application
 | classes should use.
 |
 | NOTE: changing this will require manually modifying the
 | existing namespaces of App\* namespaced-classes.
 */
defined('APP_NAMESPACE') || define('APP_NAMESPACE', 'App');

/*
 | --------------------------------------------------------------------------
 | Composer Path
 | --------------------------------------------------------------------------
 |
 | The path that Composer's autoload file is expected to live. By default,
 | the vendor folder is in the Root directory, but you can customize that here.
 */
defined('COMPOSER_PATH') || define('COMPOSER_PATH', ROOTPATH . 'vendor/autoload.php');

/*
 |--------------------------------------------------------------------------
 | Timing Constants
 |--------------------------------------------------------------------------
 |
 | Provide simple ways to work with the myriad of PHP functions that
 | require information to be in seconds.
 */
defined('SECOND') || define('SECOND', 1);
defined('MINUTE') || define('MINUTE', 60);
defined('HOUR')   || define('HOUR', 3600);
defined('DAY')    || define('DAY', 86400);
defined('WEEK')   || define('WEEK', 604800);
defined('MONTH')  || define('MONTH', 2_592_000);
defined('YEAR')   || define('YEAR', 31_536_000);
defined('DECADE') || define('DECADE', 315_360_000);

/*
 | --------------------------------------------------------------------------
 | Exit Status Codes
 | --------------------------------------------------------------------------
 |
 | Used to indicate the conditions under which the script is exit()ing.
 | While there is no universal standard for error codes, there are some
 | broad conventions.  Three such conventions are mentioned below, for
 | those who wish to make use of them.  The CodeIgniter defaults were
 | chosen for the least overlap with these conventions, while still
 | leaving room for others to be defined in future versions and user
 | applications.
 |
 | The three main conventions used for determining exit status codes
 | are as follows:
 |
 |    Standard C/C++ Library (stdlibc):
 |       http://www.gnu.org/software/libc/manual/html_node/Exit-Status.html
 |       (This link also contains other GNU-specific conventions)
 |    BSD sysexits.h:
 |       http://www.gsp.com/cgi-bin/man.cgi?section=3&topic=sysexits
 |    Bash scripting:
 |       http://tldp.org/LDP/abs/html/exitcodes.html
 |
 */
defined('EXIT_SUCCESS')        || define('EXIT_SUCCESS', 0);        // no errors
defined('EXIT_ERROR')          || define('EXIT_ERROR', 1);          // generic error
defined('EXIT_CONFIG')         || define('EXIT_CONFIG', 3);         // configuration error
defined('EXIT_UNKNOWN_FILE')   || define('EXIT_UNKNOWN_FILE', 4);   // file not found
defined('EXIT_UNKNOWN_CLASS')  || define('EXIT_UNKNOWN_CLASS', 5);  // unknown class
defined('EXIT_UNKNOWN_METHOD') || define('EXIT_UNKNOWN_METHOD', 6); // unknown class member
defined('EXIT_USER_INPUT')     || define('EXIT_USER_INPUT', 7);     // invalid user input
defined('EXIT_DATABASE')       || define('EXIT_DATABASE', 8);       // database error
defined('EXIT__AUTO_MIN')      || define('EXIT__AUTO_MIN', 9);      // lowest automatically-assigned error code
defined('EXIT__AUTO_MAX')      || define('EXIT__AUTO_MAX', 125);    // highest automatically-assigned error code

/**
 * @deprecated Use \CodeIgniter\Events\Events::PRIORITY_LOW instead.
 */
define('EVENT_PRIORITY_LOW', 200);

/**
 * @deprecated Use \CodeIgniter\Events\Events::PRIORITY_NORMAL instead.
 */
define('EVENT_PRIORITY_NORMAL', 100);

/**
 * @deprecated Use \CodeIgniter\Events\Events::PRIORITY_HIGH instead.
 */
define('EVENT_PRIORITY_HIGH', 10);

//Default값 정의
define('DEFAULTS', [
    'ROLE' => "guest",
    'STATUS' => "use",
    'EMPTY' => "",
    'PERPAGE' => 20,
    'DELIMITER_FILE' => "||",
    'DELIMITER_ROLE' => ",",
]);
//URL
define('URLS', [
    'LOGIN' => '/user/login',
    'SIGNUP' => '/user/signup',
    'LOGOUT' => '/user/logout',
]);
//회원ROLE
define('ROLES', [
    'guest',
    'user',
    'vip',
    'manager',
    'cloudflare',
    'director',
    'master',
]);
//SESSION 관련
define('SESSION_NAMES', [
    'RETURN_URL' => "return_url",
    'ISLOGIN' => "islogined",
    'AUTH' => 'auth',
]);
//인증 관련
define('AUTH_FIELDS', [
    'ID' => 'id',
    'TITLE' => 'title',
    'ROLE' => 'role'
]);
//DBAction
define('DB_ACTION', [
    'CREATE' => 'create',
    'MODIFY' => 'modify',
]);

define("MESSENGERS", [
    "skype"   => [
        "url" => "https://join.skype.com/invite/uKUgXfZThSQC",
        "icon" => '<img src="/images/common/top_skype.png" alt="스카이프">',
        "id" => ''
    ],
    "discord" => [
        "url" => "https://discord.gg/k6nQg84N",
        "icon" => '<img src="/images/common/discord.png" alt="디스코드">',
        "id" => ''
    ],
    "telegram" => [
        "url" => "https://t.me/daemonidc",
        "icon" => '<img src="/images/common/telegram.png" alt="텔레그램">',
        "id" => '@daemonidc'
    ],
    "kakaotalk" => [
        "url" => "https://t.me/daemonidc",
        "icon" => '<img src="/images/common/kakaotalk.png" alt="카카오톡">',
        "id" => ''
    ]
]);

//아이콘 및 Sound관련
define('ICONS', [
    'LOGO'   => '<img src="/images/logo/android-icon-48x48.png">',
    'LOGIN'   => '<i class="bi bi-shield-check"></i>',
    'LOGOUT'  => '<i class="bi bi-sign-stop-fill"></i>',
    'LOCK'    => '<i class="bi bi-shield-lock"></i>',
    'NEW'     => '<i class="bi bi-database-add"></i>',
    'REPLY'   => '<i class="bi bi-arrow-return-right"></i>',
    'DELETE'  => '<i class="bi bi-trash"></i>',
    'RELOAD'  => '<i class="bi bi-repeat"></i>',
    'SETUP'   => '<i class="bi bi-gear"></i>',
    'FLAG'    => '<i class="bi bi-send"></i>',
    'SEARCH'  => '<i class="bi bi-search"></i>',
    'EXCEL'   => '<img src="/images/common/excel.png"/>',
    'HOME'    => '<i class="bi bi-house-door-fill"></i>',
    'PLAY'    => '<i class="bi bi-play-fill"></i>',
    'CART'   => '<i class="bi bi-cart4"></i>',
    'CARD' => '<i class="bi bi-credit-card"></i>',
    'DEPOSIT' => '<i class="bi bi-cash-coin"></i>',
    'UP'   => '<i class="bi bi-arrow-up"></i>',
    'DOWN'   => '<i class="bi bi-arrow-down"></i>',
    'LEFT'   => '<i class="bi bi-arrow-left"></i>',
    'RIGHT'   => '<i class="bi bi-arrow-right"></i>',
    'IMAGE_FILE'   => '<i class="bi bi-file-earmark-image"></i>',
    'GOOGLE' => '<i class="fa-brands fa-google"></i>',
]);

define('TOP_BANNER', [
    'default' => '<img src="/images/banner/sub_visual1.jpg"/>',
    'aboutus' => '<img src="/images/banner/sub_visual1.jpg"/>',
    'member' => '<img src="/images/banner/sub_visual1.jpg"/>',
    'hosting' => '<img src="/images/banner/sub_visual2.jpg"/>',
    'serverdevice' => '<img src="/images/banner/sub_visual3.jpg"/>',
    'service' => '<img src="/images/banner/sub_visual3.jpg"/>',
    'support' => '<img src="/images/banner/sub_visual4.jpg"/>',
]);

define('AUDIOS', [
    'Alram_GetEmail' => '<object width=0 height=0 data="/sound/jarvis_email.mp3" type="audio/mpeg"></object>',
]);

define('KEYWORD', '일본IDC 일본서버 일본 서버 일본호스팅 서버호스팅 디도스 공격 해외 호스팅 DDOS 방어 ddos 의뢰 디도스 보안 일본 단독서버 가상서버');
define('LAYOUTS', [
    'empty' => [
        'path' => 'layouts' . DIRECTORY_SEPARATOR . 'empty',
        'stylesheets' => [
            '<link rel="icon" href="/favicon.ico">',
            '<link href="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9ndCyUaIbzAi2FUVXJi0CjmCapSmO7SnpJef0486qhLnuZ2cdeRhO02iuK6FUUVM" crossorigin="anonymous">',
            '<link rel="stylesheet" href="/css/style.css" />',
        ],
        'javascripts' => [
            '<script src="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-geWF76RCwLtnZ8qwWowPQNguL3RmwHVBC9FhGdlKrxdiJJigb/j/68SIy3Te4Bkz" crossorigin="anonymous"></script>',
        ]
    ],
    'front' => [
        'title' => KEYWORD,
        'path' => 'layouts' . DIRECTORY_SEPARATOR . 'front',
        //'topmenus'   => ['aboutus', 'hosting', 'serverdevice', 'service', 'support'],
        'topmenus'   => ['aboutus', 'hosting', 'service', 'support'],
        'metas' => [
            '<meta charset="utf-8">',
            '<meta http-equiv="X-UA-Compatible" content="IE=Edge">',
            '<meta name="viewport" id="viewport" content="width=1280">',
            '<meta name="subject" content="Daemon IDC">',
            '<meta name="description" content="' . KEYWORD . '">',
            '<meta name="keywords" content="' . KEYWORD . '">',
            '<meta property="og:type" content="website">',
            '<meta property="og:title" content="Daemon IDC">',
            '<meta property="og:description" content="' . KEYWORD . '">',
        ],
        'stylesheets' => [
            '<link rel="canonical" href="https://daemonidc.com/" />',
            '<link rel="icon" href="/favicon.ico">',
            '<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">',
            '<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css">',
            '<link href="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9ndCyUaIbzAi2FUVXJi0CjmCapSmO7SnpJef0486qhLnuZ2cdeRhO02iuK6FUUVM" crossorigin="anonymous">',
            '<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css">',
            '<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/select2-bootstrap-5-theme@1.3.0/dist/select2-bootstrap-5-theme.min.css" />',
            '<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/boxicons@latest/css/boxicons.min.css" />',
            '<link rel="stylesheet" href="/css/style.css" />',
        ],
        'javascripts' => [
            '<script src="//cdn.jsdelivr.net/npm/jquery@3.7.0/dist/jquery.min.js"></script>',
            '<script src="//code.jquery.com/ui/1.12.1/jquery-ui.min.js" integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU=" crossorigin="anonymous"></script>',
            '<script src="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-geWF76RCwLtnZ8qwWowPQNguL3RmwHVBC9FhGdlKrxdiJJigb/j/68SIy3Te4Bkz" crossorigin="anonymous"></script>',
            '<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>',
            '<script src="/vendors/tinymce/tinymce/tinymce.js" referrerpolicy="origin"></script>',
        ],
    ],
    'admin' => [
        'title' => '관리자화면',
        'path' => 'layouts' . DIRECTORY_SEPARATOR . 'admin',
        'stylesheets' => [
            '<link rel="icon" href="/favicon.ico">',
            '<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">',
            '<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css">',
            '<link href="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9ndCyUaIbzAi2FUVXJi0CjmCapSmO7SnpJef0486qhLnuZ2cdeRhO02iuK6FUUVM" crossorigin="anonymous">',
            '<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css">',
            '<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/select2-bootstrap-5-theme@1.3.0/dist/select2-bootstrap-5-theme.min.css" />',
            '<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/boxicons@latest/css/boxicons.min.css" />',
            '<link rel="stylesheet" href="/css/style.css" />',
        ],
        'javascripts' => [
            '<script src="//cdn.jsdelivr.net/npm/jquery@3.7.0/dist/jquery.min.js"></script>',
            '<script src="//code.jquery.com/ui/1.12.1/jquery-ui.min.js" integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU=" crossorigin="anonymous"></script>',
            '<script src="//cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-geWF76RCwLtnZ8qwWowPQNguL3RmwHVBC9FhGdlKrxdiJJigb/j/68SIy3Te4Bkz" crossorigin="anonymous"></script>',
            '<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>',
            '<script src="/vendors/tinymce/tinymce/tinymce.js" referrerpolicy="origin"></script>',
        ]
    ],
]);
