/** * @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; } }
/** * @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; }