コード例 #1
0
    /**
     * @param $token
     * @return bool
     */
    public static function isUserTokenValid($token)
    {
        //get secret seed and add date (20140703)
        $secretSeed = self::getFormSecretSeed();

        //get user id (anonymous or current logged user)
        $userId = MMUsers::getCurrentUserId() != -1 ? MMUsers::getCurrentUserId() : MMUsers::getAnonymousUserId();

        //cluster identifier
        $clusterIdentifier = ClusterTool::clusterIdentifier();

        if(sha1($secretSeed . date('Ymd') . $userId . $clusterIdentifier) == $token)
        {
            return true;
        }
        //yesterday date
        else if(sha1($secretSeed . date('Ymd', time() - 60 * 60 * 24) . $userId . $clusterIdentifier) == $token)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
コード例 #2
0
    /**
     * @param array $uncryptedTicket
     * @return bool
     */
    public static function validateTicket ( $uncryptedTicket )
    {
        if ( !isset($uncryptedTicket['uuid']) || $uncryptedTicket['uuid'] == '' || $uncryptedTicket['uuid'] == MMUsers::getAnonymousUserId() )
        {
            $dump = var_export($uncryptedTicket, true);
            eZLog::write("Ticket $dump missing uuid", 'user.log');
            return false;
        }

        if( !isset( $uncryptedTicket['customerType'] ) )
        {
            $uncryptedTicket['customerType'] = 'Default';
            self::updateDBWithEmptyValue( 'empty-CT', $uncryptedTicket['uuid'], $uncryptedTicket['country'] );
        }

        if( !isset( $uncryptedTicket['userSpeciality'] ) )
        {
            $uncryptedTicket['userSpeciality'] = 'Default';
            self::updateDBWithEmptyValue( 'empty-SPE', $uncryptedTicket['uuid'], $uncryptedTicket['country'] );
        }

        foreach ( $uncryptedTicket as $fieldName => $fieldValue )
        {
            switch ($fieldName)
            {
                case 'customerType' :
                {
                    if ( $fieldValue == '' )
                    {
                        $uncryptedTicket['customerType'] = 'Default';
                        self::updateDBWithEmptyValue( 'empty-CT', $uncryptedTicket['uuid'], $uncryptedTicket['country'] );
                    }
                }
                break;
                case 'userSpeciality' :
                {
                    if ( $fieldValue == '' )
                    {
                        $uncryptedTicket['userSpeciality'] = 'Default';
                        self::updateDBWithEmptyValue( 'empty-SPE', $uncryptedTicket['uuid'], $uncryptedTicket['country'] );
                    }
                }
                break;
                case 'country' :
                {

                }
                break;
            }
        }

        return true;
    }