Spade

Mini Shell

Directory:~$ /home/lmsyaran/public_html/joomla4/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ /home/lmsyaran/public_html/joomla4/zarinpal.tar

helpers/api_cert_chain.crt000064400000022461151160320200011643
0ustar00-----BEGIN CERTIFICATE-----
MIIDgzCCAuygAwIBAgIQJUuKhThCzONY+MXdriJupDANBgkqhkiG9w0BAQUFADBf
MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNzA1BgNVBAsT
LkNsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkw
HhcNOTcwNDE3MDAwMDAwWhcNMTExMDI0MjM1OTU5WjCBujEfMB0GA1UEChMWVmVy
aVNpZ24gVHJ1c3QgTmV0d29yazEXMBUGA1UECxMOVmVyaVNpZ24sIEluYy4xMzAx
BgNVBAsTKlZlcmlTaWduIEludGVybmF0aW9uYWwgU2VydmVyIENBIC0gQ2xhc3Mg
MzFJMEcGA1UECxNAd3d3LnZlcmlzaWduLmNvbS9DUFMgSW5jb3JwLmJ5IFJlZi4g
TElBQklMSVRZIExURC4oYyk5NyBWZXJpU2lnbjCBnzANBgkqhkiG9w0BAQEFAAOB
jQAwgYkCgYEA2IKA6NYZAn0fhRg5JaJlK+G/1AXTvOY2O6rwTGxbtueqPHNFVbLx
veqXQu2aNAoV1Klc9UAl3dkHwTKydWzEyruj/lYncUOqY/UwPpMo5frxCTvzt01O
OfdcSVq4wR3Tsor+cDCVQsv+K1GLWjw6+SJPkLICp1OcTzTnqwSye28CAwEAAaOB
4zCB4DAPBgNVHRMECDAGAQH/AgEAMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHAQEw
KjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL0NQUzA0BgNV
HSUELTArBggrBgEFBQcDAQYIKwYBBQUHAwIGCWCGSAGG+EIEAQYKYIZIAYb4RQEI
ATALBgNVHQ8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgEGMDEGA1UdHwQqMCgwJqAk
oCKGIGh0dHA6Ly9jcmwudmVyaXNpZ24uY29tL3BjYTMuY3JsMA0GCSqGSIb3DQEB
BQUAA4GBAAgB7ORolANC8XPxI6I63unx2sZUxCM+hurPajozq+qcBBQHNgYL+Yhv
1RPuKSvD5HKNRO3RrCAJLeH24RkFOLA9D59/+J4C3IYChmFOJl9en5IeDCSk9dBw
E88mw0M9SR2egi5SX7w+xmYpAY5Okiy8RnUDgqxz6dl+C2fvVFIa
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkG
A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz
cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2
MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV
BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt
YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN
ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE
BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is
I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G
CSqGSIb3DQEBAgUAA4GBALtMEivPLCYATxQT3ab7/AoRhIzzKBxnki98tsX63/Do
lbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59AhWM1pF+NEHJwZRDmJXNyc
AA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2OmufTqj/ZA1k
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ
BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh
c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy
MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp
emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X
DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw
FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg
UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo
YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5
MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB
AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4
pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0
13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID
AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk
U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i
F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY
oJ2daZH9
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFjDCCBHSgAwIBAgIQVeuz+EgDzKxFsKnpA78ETzANBgkqhkiG9w0BAQsFADB3
MQswCQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAd
BgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMTH1N5bWFudGVj
IENsYXNzIDMgRVYgU1NMIENBIC0gRzMwHhcNMTUwOTE4MDAwMDAwWhcNMTcwOTI5
MjM1OTU5WjCCARcxEzARBgsrBgEEAYI3PAIBAxMCVVMxGTAXBgsrBgEEAYI3PAIB
AgwIRGVsYXdhcmUxHTAbBgNVBA8TFFByaXZhdGUgT3JnYW5pemF0aW9uMRAwDgYD
VQQFEwczMDE0MjY3MQswCQYDVQQGEwJVUzETMBEGA1UEEQwKOTUxMzEtMjAyMTET
MBEGA1UECAwKQ2FsaWZvcm5pYTERMA8GA1UEBwwIU2FuIEpvc2UxFjAUBgNVBAkM
DTIyMTEgTiAxc3QgU3QxFTATBgNVBAoMDFBheVBhbCwgSW5jLjEaMBgGA1UECwwR
UGF5UGFsIFByb2R1Y3Rpb24xHzAdBgNVBAMMFnd3dy5zYW5kYm94LnBheXBhbC5j
b20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOQlgP1/OgAQ7TLB1A
1Kwr6a3EIfZRKl5HT9FmwR5sliGJBzQC4UdjUkCOQYBqzCwFrvc486aVTtAvE2JK
PVP1OertRT7rQH8Oq/d60X2Cv32PmvwO0NnPsiQWwEKtqAvfHOUZf+4nfp3LxfGa
gb4k4Nbeq/PegcArIXlGC06M85Urz3b10JqitnWgiHDRYWzh9PlHnPf6m/zVtLQw
GYZxu11Gtq8wB5Ot4q2vlQTf1WcR4Li5HmAFIVHYXgjNLpfdI3PMNkjTiZEgn1AT
kqkxyxzTt9V4YnwM7JEvygBpXRJKRHGYy52O35uKNdO+8J27HNX8kWnSHI1ogpC+
dezbAgMBAAGjggFwMIIBbDAhBgNVHREEGjAYghZ3d3cuc2FuZGJveC5wYXlwYWwu
Y29tMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUF
BwMBBggrBgEFBQcDAjBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcGMEwwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkaF2h0
dHBzOi8vZC5zeW1jYi5jb20vcnBhMB8GA1UdIwQYMBaAFAFZq+fdOgtZpmRj1s8g
B1fVkedqMCsGA1UdHwQkMCIwIKAeoByGGmh0dHA6Ly9zci5zeW1jYi5jb20vc3Iu
Y3JsMFcGCCsGAQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3NyLnN5bWNk
LmNvbTAmBggrBgEFBQcwAoYaaHR0cDovL3NyLnN5bWNiLmNvbS9zci5jcnQwDQYJ
KoZIhvcNAQELBQADggEBACEZZKMKatEKSSuTaBF+qeRP2CqqJLZefggNLXDM8hNb
mh05RQ95FSqGQMSKprbDNWxYqPERee7R2wvW4egmM0kmtU+PWlm/W1DaSE0E/5QN
6gx9Is0wC7DF4W3USGT8M4Itp225wf9doh2d3+ACw19xHfmri0fQiogrPSo3U0/X
tD7QKpFNlrgpXH5Xz5qReiJeZnbI89dw1ILEdDjni/OCZmYGUpfZS2vY4eqR0w+s
0NWsfHzijXkJug2nrDjXJAmZAsagwR8acYOI8L86hJP8GC554z6TiuA6Of2GxVzx
ngM1+KlNBGhY5NRTEJG10KcQklDH6nMdoR1ZjajM7mw=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIGgzCCBWugAwIBAgIQDwdzlHG9OSV38gstjQDDAjANBgkqhkiG9w0BAQsFADB+
MQswCQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAd
BgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxLzAtBgNVBAMTJlN5bWFudGVj
IENsYXNzIDMgU2VjdXJlIFNlcnZlciBDQSAtIEc0MB4XDTE2MDExMzAwMDAwMFoX
DTE4MDExMzIzNTk1OVowgYkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9y
bmlhMREwDwYDVQQHDAhTYW4gSm9zZTEVMBMGA1UECgwMUGF5UGFsLCBJbmMuMRow
GAYDVQQLDBFQYXlQYWwgUHJvZHVjdGlvbjEfMB0GA1UEAwwWYXBpLnNhbmRib3gu
cGF5cGFsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOH6oHmU
rKtjVANXICp/J2CeBpl5SBafoZKUBgU7tcAzXPUASoQRlMOAoUKkO8bKX7xRynoC
a9Y4ZWLrKamFu/ovo9cPTYlpslj9kuNKqtCZM0TBwdCscYsd86RHgskjR4lCVQ+I
M9WbJ1DhLjiZh2c30VenVH4Hc86j+OakT/eLUvYMe/B1hrri/Ml8bHB34Gq+AszG
tt2dY7PL3BGJ4GOI4LebRYVqp4uFpq+PxRj+VSPyXytP7x/6r0gGR2R8gcnu/JnR
tdtOrAiq5lXgLxmBzmYvhBFbLvrMjV/Xo4ch6cL4pG5Wz3u9JL3ux+06FMoj4Ret
7k7hQFKj8sdO0EkCAwEAAaOCAu8wggLrMCEGA1UdEQQaMBiCFmFwaS5zYW5kYm94
LnBheXBhbC5jb20wCQYDVR0TBAIwADAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYw
FAYIKwYBBQUHAwEGCCsGAQUFBwMCMGEGA1UdIARaMFgwVgYGZ4EMAQICMEwwIwYI
KwYBBQUHAgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBka
F2h0dHBzOi8vZC5zeW1jYi5jb20vcnBhMB8GA1UdIwQYMBaAFF9gz2GQVd+EQxSK
YCqy9Xr0QxjvMCsGA1UdHwQkMCIwIKAeoByGGmh0dHA6Ly9zcy5zeW1jYi5jb20v
c3MuY3JsMFcGCCsGAQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3NzLnN5
bWNkLmNvbTAmBggrBgEFBQcwAoYaaHR0cDovL3NzLnN5bWNiLmNvbS9zcy5jcnQw
ggGABgorBgEEAdZ5AgQCBIIBcASCAWwBagB2AN3rHSt6DU+mIIuBrYFocH4ujp0B
1VyIjT0RxM227L7MAAABUjz96joAAAQDAEcwRQIgVXzp/eXsIa/NHqvPNTSaekkp
f4LsU1ROrO3HOO5S7CECIQCff43664s3xgZkoeUbs6Nq2bcJZ2uusS2M8enkLNi6
agB3AKS5CZC0GFgUh7sTosxncAo8NZgE+RvfuON3zQ7IDdwQAAABUjz96mIAAAQD
AEgwRgIhAPwlv+Cntqwg0kMbGqJenRWycWh0hLyx2Rf5PPc1dPDJAiEAyd4aZNSa
GE3Jywug1EH8Hk6KKwun+tnqFsh/EvOWyXsAdwBo9pj4H2SCvjqM7rkoHUz8cVFd
Z5PURNEKZ6y7T0/7xAAAAVI8/ephAAAEAwBIMEYCIQCyFfphtFM9PPQ5qTQRkevU
6Rj0QOPBKNQPV7KM+4HvmQIhAKzk6vYTuwWAU6QNtWbk5G+iVi3B2zu2VGl0H+4k
d0NqMA0GCSqGSIb3DQEBCwUAA4IBAQAvKbOlMtw+W/c8sFDwIVFY30so0M7TgQIU
mWJBqk7HVFrEvP1SUR3vIkm11KnDzXPtdMIjem5qCdiiZKhGx+rwy7SCM+5KDquw
4McxgnpbTdwUCnh83nm8MsX/nJBBauqtNyn3sKuTR22Ut1lsa/XGD8+IG4c0DXi8
a1FSD9+WlgV2Kl29hllT33bb0+2+hujNHKPjfZnQvTsZfU5kzK2nkrl8zg8Rh2ad
ZjndRbNssIVB3Pk8VuoQ+o/bVFFAENKKKxdCHKqhSR0FHXYKjlMHs3JpMzTjE6NX
8sC6qaMrouLB/zwKJGmHYtcxRs5mx7kcNo1jyyChwtfNaudC8Sb4
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFKzCCBBOgAwIBAgIQHTg+mj/CNqGgPmqLTmDqPDANBgkqhkiG9w0BAQUFADCB
tTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2Ug
YXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykxMDEvMC0GA1UEAxMm
VmVyaVNpZ24gQ2xhc3MgMyBTZWN1cmUgU2VydmVyIENBIC0gRzMwHhcNMTUwNDE1
MDAwMDAwWhcNMTYwNDAxMjM1OTU5WjCBgTELMAkGA1UEBhMCVVMxEzARBgNVBAgT
CkNhbGlmb3JuaWExETAPBgNVBAcUCFNhbiBKb3NlMRUwEwYDVQQKFAxQYXlQYWws
IEluYy4xGjAYBgNVBAsUEVBheVBhbCBQcm9kdWN0aW9uMRcwFQYDVQQDFA5hcGku
cGF5cGFsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMTY3N4l
KXBAjsYjJc0WSissckwSVAofjIkhkoTwenXrsjs+gv9i4Mxx43Xt6sDURJBRNaUN
QviCJilZ+uqba7ngPjQDG6NqvSE2NT9rKgQMo1pfebIM2E8lVWDqNQ3C6UzHRhyV
X16ubMLftacGiWjwUzB22VdJLoWhRcOoWAXU5RhYJlg4ql9wRHrlHXaxnFdbdPbY
aSyprOcEZNecxXurEgy//1ojc8C7I1bhN/SeLwRenH+Dj6XSXFC2OoAIygXW/yjs
nCBxwL/IHwBhXe4XLWLqLlGe0aV5Frbo69g/bf4jVoccAwaocrTcSqDEH54KCsE7
JghouW3uNaqd8/UCAwEAAaOCAWcwggFjMBkGA1UdEQQSMBCCDmFwaS5wYXlwYWwu
Y29tMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUF
BwMBBggrBgEFBQcDAjBlBgNVHSAEXjBcMFoGCmCGSAGG+EUBBzYwTDAjBggrBgEF
BQcCARYXaHR0cHM6Ly9kLnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoXaHR0
cHM6Ly9kLnN5bWNiLmNvbS9ycGEwHwYDVR0jBBgwFoAUDURcFlNEwYJ+HSCrJfQB
Y9i+eaUwKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3NkLnN5bWNiLmNvbS9zZC5j
cmwwVwYIKwYBBQUHAQEESzBJMB8GCCsGAQUFBzABhhNodHRwOi8vc2Quc3ltY2Qu
Y29tMCYGCCsGAQUFBzAChhpodHRwOi8vc2Quc3ltY2IuY29tL3NkLmNydDANBgkq
hkiG9w0BAQUFAAOCAQEAXFGDySlKXOx6nZNRnC764rYMm20C1neLh8XxCEEl9UP5
mGSgOY0ZFH4mbfLIEstZcj4tlBEJvc+s9bzWIli1d2ouSoZ8oEd73hL3elREc3BD
Tm8xvrJdAOmcu5YKd4BP6RGBlUzlirXcgmi2jxfr1vbIh2wUUkVG9GNVNvj7uhHu
d1V4cVpnZ30caTB9YYlPVo5qG5Cbzkuw76oZmxinr7ppFck3v3GkRchl77TL2w4I
X9nL7mbui2drNpsiCGjlc4wea2kXdXAj1w5LwHqkxFfjQyHvUCJFpx0hnRzEeVgT
x5DsDzb8RYgFgC3M+ZgV7SQh+Bjr+LTEAkFRogGFMA==
-----END CERTIFICATE-----
helpers/index.html000064400000000054151160320200010170
0ustar00<html><body
bgcolor="#FFFFFF"></body></html>helpers/ipnlistener.php000064400000026564151160320200011256
0ustar00<?php
/**
 *  PayPal IPN Listener
 *
 *  A class to listen for and handle Instant Payment Notifications (IPN)
from 
 *  the PayPal server.
 *
 *  https://github.com/Quixotix/PHP-PayPal-IPN
 *
 *  @package    PHP-PayPal-IPN
 *  @author     Micah Carrick
 *  @copyright  (c) 2012 - Micah Carrick
 *  @version    2.1.0
 */
defined('_JEXEC') or die;
//jimport('joomla.log.log');
//JLog::addLogger( array('text_file' =>
'com_phocacart_error_log.php'), JLog::ALL,
array('com_phocacart'));


if (! class_exists('PhocacartLoader')) {
    require_once(
JPATH_ADMINISTRATOR.'/components/com_phocacart/libraries/loader.php');
}

phocacartimport('phocacart.utils.log');

class PhocacartPaypalStandardIpnListener {
    
    /**
     *  If true, the recommended cURL PHP library is used to send the post
back 
     *  to PayPal. If flase then fsockopen() is used. Default true.
     *
     *  @var boolean
     */
    public $use_curl = true;     
    
    /**
     *  If true, explicitly sets cURL to use SSL version 3. Use this if
cURL
     *  is compiled with GnuTLS SSL.
     *
     *  @var boolean
     */
    public $force_ssl_v3 = false;     
   
    /**
     *  If true, cURL will use the CURLOPT_FOLLOWLOCATION to follow any 
     *  "Location: ..." headers in the response.
     *
     *  @var boolean
     */
    public $follow_location = false;     
    
    /**
     *  If true, an SSL secure connection (port 443) is used for the post
back 
     *  as recommended by PayPal. If false, a standard HTTP (port 80)
connection
     *  is used. Default true.
     *
     *  @var boolean
     */
    public $use_ssl = true;      
    
    /**
     *  If true, the paypal sandbox URI www.sandbox.paypal.com is used for
the
     *  post back. If false, the live URI www.paypal.com is used. Default
false.
     *
     *  @var boolean
     */
    public $use_sandbox = false; 
    
    /**
     *  The amount of time, in seconds, to wait for the PayPal server to
respond
     *  before timing out. Default 30 seconds.
     *
     *  @var int
     */
    public $timeout 	= 30;       
    private $post_data 	= array();
    private $post_uri 	= '';     
    private $response_status = '';
    private $response 	= '';

    const PAYPAL_HOST = 'www.paypal.com';
    const SANDBOX_HOST = 'www.sandbox.paypal.com';
	
	private $params = array();
	
	public function setParams($p) {
		$this->params = $p;
	}
    
    /**
     *  Post Back Using cURL
     *
     *  Sends the post back to PayPal using the cURL library. Called by
     *  the processIpn() method if the use_curl property is true. Throws an
     *  exception if the post fails. Populates the response,
response_status,
     *  and post_uri properties on success.
     *
     *  @param  string  The post data as a URL encoded string
     */
    protected function curlPost($encoded_data) {
	
        if ($this->use_ssl) {
            $uri =
'https://'.$this->getPaypalHost().'/cgi-bin/webscr';
            $this->post_uri = $uri;
        } else {
            $uri =
'http://'.$this->getPaypalHost().'/cgi-bin/webscr';
            $this->post_uri = $uri;
        }
        
        $ch = curl_init();

		if ($this->params['verify_ssl'] == 1) {
			curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
		} else {
			curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		}
		
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
		
		curl_setopt($ch, CURLOPT_CAINFO,
dirname(__FILE__)."/api_cert_chain.crt");

        curl_setopt($ch, CURLOPT_URL, $uri);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $encoded_data);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION,
$this->follow_location);
        curl_setopt($ch, CURLOPT_TIMEOUT, $this->timeout);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HEADER, true);

        if ($this->force_ssl_v3) {
            curl_setopt($ch, CURLOPT_SSLVERSION, 4); //Modified from 3 to 4
        } else {
			curl_setopt($ch, CURLOPT_SSLVERSION, 0);
		}

		$this->response = curl_exec($ch);
        $this->response_status = strval(curl_getinfo($ch,
CURLINFO_HTTP_CODE));
        
        if ($this->response === false || $this->response_status ==
'0') {
            $errno = curl_errno($ch);
            $errstr = curl_error($ch);
			
			//JLog::add('Paypal Standard: '."cURL error: [$errno]
$errstr", JLog::WARNING, 'com_phocacart');
			PhocacartLog::add(1, 'Payment - PayPal Standard - ERROR', 0,
"cURL error: [$errno] $errstr");
            throw new Exception("cURL error: [$errno] $errstr");
        }
    }
    
    /**
     *  Post Back Using fsockopen()
     *
     *  Sends the post back to PayPal using the fsockopen() function.
Called by
     *  the processIpn() method if the use_curl property is false. Throws
an
     *  exception if the post fails. Populates the response,
response_status,
     *  and post_uri properties on success.
     *
     *  @param  string  The post data as a URL encoded string
     */
    protected function fsockPost($encoded_data) {
    
        if ($this->use_ssl) {
            $uri = 'ssl://'.$this->getPaypalHost();
            $port = '443';
            $this->post_uri = $uri.'/cgi-bin/webscr';
        } else {
            $uri = $this->getPaypalHost(); // no "http://" in
call to fsockopen()
            $port = '80';
            $this->post_uri =
'http://'.$uri.'/cgi-bin/webscr';
        }

        $fp = fsockopen($uri, $port, $errno, $errstr, $this->timeout);
        
        if (!$fp) { 
            // fsockopen error
			//JLog::add('Paypal Standard: '."fsockopen error:
[$errno] $errstr", JLog::WARNING, 'com_phocacart');
			PhocacartLog::add(1, 'Payment - PayPal Standard - ERROR', 0,
"fsockopen error: [$errno] $errstr");
            throw new Exception("fsockopen error: [$errno]
$errstr");
        } 

        $header = "POST /cgi-bin/webscr HTTP/1.1\r\n";
        $header .= "Host:
".$this->getPaypalHost()."\r\n";
        $header .= "Content-Type:
application/x-www-form-urlencoded\r\n";
        $header .= "Content-Length:
".strlen($encoded_data)."\r\n";
        $header .= "Connection: Close\r\n\r\n";
        
        fputs($fp, $header.$encoded_data."\r\n\r\n");
        
        while(!feof($fp)) { 
            if (empty($this->response)) {
                // extract HTTP status from first line
                $this->response .= $status = fgets($fp, 1024); 
                $this->response_status = trim(substr($status, 9, 4));
            } else {
                $this->response .= fgets($fp, 1024); 
            }
        } 
        
        fclose($fp);
    }
    
    private function getPaypalHost() {
        if ($this->use_sandbox) return self::SANDBOX_HOST;
        else return self::PAYPAL_HOST;
    }
    
    /**
     *  Get POST URI
     *
     *  Returns the URI that was used to send the post back to PayPal. This
can
     *  be useful for troubleshooting connection problems. The default URI
     *  would be
"ssl://www.sandbox.paypal.com:443/cgi-bin/webscr"
     *
     *  @return string
     */
    public function getPostUri() {
        return $this->post_uri;
    }
    
    /**
     *  Get Response
     *
     *  Returns the entire response from PayPal as a string including all
the
     *  HTTP headers.
     *
     *  @return string
     */
    public function getResponse() {
        return $this->response;
    }
    
    /**
     *  Get Response Status
     *
     *  Returns the HTTP response status code from PayPal. This should be
"200"
     *  if the post back was successful. 
     *
     *  @return string
     */
    public function getResponseStatus() {
        return $this->response_status;
    }
    
    /**
     *  Get Text Report
     *
     *  Returns a report of the IPN transaction in plain text format. This
is
     *  useful in emails to order processors and system administrators.
Override
     *  this method in your own class to customize the report.
     *
     *  @return string
     */
    public function getTextReport() {
        
        $r = '';
        
        // date and POST url
        for ($i=0; $i<80; $i++) { $r .= '-'; }
        $r .= "\n[".date('m/d/Y g:i A').'] -
'.$this->getPostUri();
        if ($this->use_curl) $r .= " (curl)\n";
        else $r .= " (fsockopen)\n";
        
        // HTTP Response
        for ($i=0; $i<80; $i++) { $r .= '-'; }
        $r .= "\n{$this->getResponse()}\n";
        
        // POST vars
        for ($i=0; $i<80; $i++) { $r .= '-'; }
        $r .= "\n";
        
        foreach ($this->post_data as $key => $value) {
            $r .= str_pad($key, 25)."$value\n";
        }
        $r .= "\n\n";
        
        return $r;
    }
    
    /**
     *  Process IPN
     *
     *  Handles the IPN post back to PayPal and parsing the response. Call
this
     *  method from your IPN listener script. Returns true if the response
came
     *  back as "VERIFIED", false if the response came back
"INVALID", and 
     *  throws an exception if there is an error.
     *
     *  @param array
     *
     *  @return boolean
     */    
    public function processIpn($post_data=null) {

        $encoded_data = 'cmd=_notify-validate';
        
        if ($post_data === null) { 
            // use raw POST data 
            if (!empty($_POST)) {// FOR JED CHECKERS: POST IS NEEDED HERE
                $this->post_data = $_POST;// FOR JED CHECKERS: POST IS
NEEDED HERE
                $encoded_data .=
'&'.file_get_contents('php://input');
            } else {
				//JLog::add('Paypal Standard: '."No POST data
found.", JLog::WARNING, 'com_phocacart');
				PhocacartLog::add(1, 'Payment - PayPal Standard - ERROR', 0,
"No POST data found.");
                throw new Exception("No POST data found.");
            }
        } else { 
            // use provided data array
            $this->post_data = $post_data;
            
            foreach ($this->post_data as $key => $value) {
                $encoded_data .= "&$key=".urlencode($value);
            }
        }

        if ($this->use_curl) $this->curlPost($encoded_data); 
        else $this->fsockPost($encoded_data);
        
        if (strpos($this->response_status, '200') === false) {
			//JLog::add('Paypal Standard: '."Invalid response status:
".$this->response_status, JLog::WARNING,
'com_phocacart');
			PhocacartLog::add(1, 'Payment - PayPal Standard - ERROR', 0,
"Invalid response status: ".$this->response_status);
            throw new Exception("Invalid response status:
".$this->response_status);
        }
        
        if (strpos($this->response, "VERIFIED") !== false) {
            return true;
        } elseif (strpos($this->response, "INVALID") !==
false) {
            return false;
        } else {
			//JLog::add('Paypal Standard: '."Unexpected response from
PayPal.", 'com_phocacart');
			PhocacartLog::add(1, 'Payment - PayPal Standard - ERROR', 0,
"Unexpected response from PayPal.");
            throw new Exception("Unexpected response from
PayPal.");
        }
    }
    
    /**
     *  Require Post Method
     *
     *  Throws an exception and sets a HTTP 405 response header if the
request
     *  method was not POST. 
     */    
    public function requirePostMethod() {
        // require POST requests
        if ($_SERVER['REQUEST_METHOD'] &&
$_SERVER['REQUEST_METHOD'] != 'POST') {
			//JLog::add('Paypal Standard: '."Invalid HTTP request
method.", 'com_phocacart');
			//PhocacartLog::add(1, 'Payment - PayPal Standard - ERROR', 0,
"Invalid HTTP request method.");
            header('Allow: POST', true, 405);
            throw new Exception("Invalid HTTP request method.");
        }
    }
}
?>

helpers/main.php000064400000000527151160320200007635 0ustar00<?php
/* @package Joomla
 * @copyright Copyright (C) Open Source Matters. All rights reserved.
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
 * @extension Phoca Extension
 * @copyright Copyright (C) Jan Pavelka www.phoca.cz
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
 */
defined('_JEXEC') or die;


?>index.html000064400000000220151160320200006521
0ustar00<html><body>Plugin Payment Falno! - <a
style="color: red;"
href="http://www.Falno.com/">www.Falno.com</a> -
M.Deljou -
09355384337</body></html>zarinpal.php000064400000031607151160320200007072
0ustar00<?php

defined('_JEXEC') or die('Restricted access');
class plgHikashoppaymentZarinpal extends hikashopPaymentPlugin
{
    public $accepted_currencies = [
        'IRR', 'TOM',
    ];
    public $multiple = true;
    public $name = 'zarinpal';
    public $doc_form = 'zarinpal';

    public function __construct(&$subject, $config)
    {

        parent::__construct($subject, $config);
    }

    public function onBeforeOrderCreate(&$order, &$do)
    {

        $order->history->history_reason= 'sdf';
        $order->history->history_notified= 'sfds';
        $order->history->history_type= 'sfds';
        if (parent::onBeforeOrderCreate($order, $do) === true) {
            return true;
        }

        if (empty($this->payment_params->merchant)) {
            $this->app->enqueueMessage('Please check your
&quot;Zarinpal&quot; plugin configuration');
            $do = false;
        }
        require_once
JPATH_SITE.'/components/com_reservation/helpers/reservation.php';
        $sickid= ReservationHelper::exist('#__reservation_sick',
'userid', JFactory::getUser()->get('id', 0));
        $app= JFactory::getApplication();


        if (!$sickid)
        {
            $app->enqueueMessage('برای رزرو نوبت
مشاوره وارد حساب کاربری مخصوص کاربران
عادی خود شوید','warning');
            $app->redirect(JUri::root());
        }
    }

    public function onAfterOrderConfirm(&$order, &$methods,
$method_id)
    {
        parent::onAfterOrderConfirm($order, $methods, $method_id);

        require_once
JPATH_SITE.'/components/com_reservation/controllers/firstqst.php';
        $pid= current($order->cart->products)->order_product_code;
        $firstqst= new ReservationControllerFirstqst;

        $sessionid= $firstqst->createSession($pid);

        try {
            $client = new
SoapClient('https://sandbox.zarinpal.com/pg/services/WebGate/wsdl',
['encoding' => 'UTF-8']);
        } catch (SoapFault $ex) {
            die('System Error1: constructor error.');
        }
        try {
			$usergroupsids="usergroup:".json_encode(JAccess::getGroupsByUser($this->user->id));/*added
by mjt to send more description to zarinpal logs*/
			if($this->user){
				if(is_array($usergroupsids))
					$customdesc=$this->user->name . " آیدی کاربر:
" . $this->user->id ." نام کاربری:".
$this->user->username ." آیدی های گروه های
کاربری " .json_encode($usergroupsids) ;
				else
					$customdesc=$this->user->name . " آیدی کاربر:
" . $this->user->id ." نام کاربری:".
$this->user->username ." آیدی های گروه های
کاربری " .$usergroupsids;
			}
			else{
				$customdesc="کاربر میهمان" ;
			}
			/*added by mjt */
            $callBackUrl =
HIKASHOP_LIVE.'index.php?notif_payment='.$this->name.'&option=com_hikashop&ctrl=checkout&task=notify&tmpl=component&lang='.$this->locale.$this->url_itemid.'&orderID='.$order->order_id.'&seid='.$sessionid;

            $Description = 'پرداخت سفارش شماره:
'.$order->order_id ." توضیحات بیشتر:".
"$customdesc";
            $Description = (strlen($Description) > 490) ?
substr($Description,0,460).'طول اطلاعات زیاد
است' : $Description;
            $amount =
round($order->cart->full_total->prices[0]->price_value_with_tax,
(int) $this->currency->currency_locale['int_frac_digits']);


            $parameters = [
                'MerchantID'  =>
$this->payment_params->merchant,
                'Amount'      => $amount,
                'Email'       => '',
                'Description' => $Description ,
                'Mobile'      => '',
                'CallbackURL' => $callBackUrl,
            ];

            $result = $client->PaymentRequest($parameters);
            

            if ($result->Status == 100) {
                $this->payment_params->url =
'https://sandbox.zarinpal.com/pg/StartPay/'.$result->Authority.'/ZarinGate';
                return $this->showPage('end');
            } else {
                echo "<p align=center>Bank Error
$result->Status.<br />Order UNSUCCSESSFUL!</p>";
                exit;
                die;
            }
        } catch (SoapFault $ex) {
            die('System Error3: error in get data from bank');
        }
    }

    public function onPaymentNotification(&$statuses)
    {
        $filter = JFilterInput::getInstance();

        $dbOrder = $this->getOrder($_REQUEST['orderID']);
        $this->loadPaymentParams($dbOrder);
        if (empty($this->payment_params)) {
            return false;
        }
        $this->loadOrderData($dbOrder);
        if (empty($dbOrder)) {
            echo 'Could not load any order for your notification
'.$_REQUEST['orderID'];

            return false;
        }
        $order_id = $dbOrder->order_id;
        //$this->payment_params->merchant 
        $url =
HIKASHOP_LIVE.'administrator/index.php?option=com_hikashop&ctrl=order&task=edit&order_id='.$order_id;
        
        if(!empty($this->payment_params->return_url))
        	$return_url =
$this->payment_params->return_url.'/?order_id='.$order_id; 
      
        else
        	$return_url =
HIKASHOP_LIVE.'index.php?option=com_hikashop&ctrl=order&order_id='.$order_id;
        
        if(!empty($this->payment_params->cancel_url))
        	$cancel_url =
$this->payment_params->cancel_url.'/?order_id='.$order_id;
        else
        	$cancel_url =
HIKASHOP_LIVE.'index.php?option=com_hikashop&ctrl=order&order_id='.$order_id;

//       
http://lmsyaran.ir/index.php?option=com_reservation&view=messages&uid=71&pid=3&seid=8



        $order_text =
"\r\n".JText::sprintf('NOTIFICATION_OF_ORDER_ON_WEBSITE',
$dbOrder->order_number, HIKASHOP_LIVE);
        $order_text .=
"\r\n".str_replace('<br/>', "\r\n",
JText::sprintf('ACCESS_ORDER_WITH_LINK', $url));

        if (!empty($_GET['Authority'])) {
            $history = new stdClass();
            $history->notified = 0;
            $history->reason = 'sd';
            $history->amount = round($dbOrder->order_full_price,
(int) $this->currency->currency_locale['int_frac_digits']);
            $history->data = ob_get_clean();

            try {
                $client = new
SoapClient('https://sandbox.zarinpal.com/pg/services/WebGate/wsdl',
['encoding' => 'UTF-8']);
            } catch (SoapFault $ex) {
                die('System Error1: constructor error');
            }
            try {
                $msg = '';
                $parameters = [
                    'MerchantID' =>
$this->payment_params->merchant,
                    'Authority'  =>
$_GET['Authority'],
                    'Amount'     => $history->amount,
                ];
                $result = $client->PaymentVerification($parameters);
               
                if ($result->Status == 100) {
                    $order_status =
$this->payment_params->verified_status;
                    $msg = 'پرداخت شما با موفقیت
انجام شد.'; 
                    $dest_url=$return_url;



                    $app= JFactory::getApplication();
                    $seid= $app->input->get('seid', 0);


                    $db = JFactory::getDbo();
                    $query = $db->getQuery(true);
                    $fields = array(
                        $db->quoteName('pay') . ' =
1'
                    );
                    $conditions = array(
                        $db->quoteName('id') . ' ='.
$seid
                    );
                   
$query->update($db->quoteName('#__reservation_session'))->set($fields)->where($conditions);
                    $db->setQuery($query);
                    $result = $db->execute();



                    require_once
JPATH_SITE.'/components/com_reservation/helpers/reservation.php';
                    $seid_user_road=
ReservationHelper::seid_user_road($seid);
                    
                    $pid= $seid_user_road->planid;
                    $uid= $seid_user_road->userid;
        
                    $return_url=
'/index.php?option=com_reservation&view=messages&uid='.$uid.'&pid='.$pid.'&seid='.$seid;
                    $cancel_url= '/';
                    $dest_url= $return_url;


                } else {
                    $order_status =
$this->payment_params->pending_status;
                    $order_text =
JText::sprintf('CHECK_DOCUMENTATION',
HIKASHOP_HELPURL.'payment-zarinpal-error#verify')."\r\n\r\n".$order_text;
                    $msg = $this->getStatusMessage($result->Status);
                    $dest_url=$cancel_url;
                }
            } catch (SoapFault $ex) {
                die('System Error2: error in get data from
bank');
            }

            $config = &hikashop_config();
            if ($config->get('order_confirmed_status',
'confirmed') == $order_status) {
                $history->notified = 1;
            }

            $email = new stdClass();
            $email->subject =
JText::sprintf('PAYMENT_NOTIFICATION_FOR_ORDER',
'Zarinpal', $order_status, $dbOrder->order_number);
            $email->body = str_replace('<br/>',
"\r\n", JText::sprintf('PAYMENT_NOTIFICATION_STATUS',
'Zarinpal', $order_status)).'
'.JText::sprintf('ORDER_STATUS_CHANGED',
$order_status)."\r\n\r\n".$order_text;
            $this->modifyOrder($order_id, $order_status, $history,
$email);

        } else {
            $order_status = $this->payment_params->invalid_status;
            $email = new stdClass();
            $email->subject =
JText::sprintf('NOTIFICATION_REFUSED_FOR_THE_ORDER',
'Zarinpal').'invalid transaction';
            $email->body = JText::sprintf("Hello,\r\n A Zarinpal
notification was refused because it could not be verified by the zarinpal
server (or pay
cenceled)")."\r\n\r\n".JText::sprintf('CHECK_DOCUMENTATION',
HIKASHOP_HELPURL.'payment-zarinpal-error#invalidtnx');
            $action = false;
            $this->modifyOrder($order_id, $order_status, null, $email);
            $dest_url = $cancel_url;
        }

        if (headers_sent()){
	    die('<script
type="text/javascript">window.location.href="' .
$dest_url . '";</script>');
	}else{
	    header('location: '.$dest_url);
	    die();
	}  
        exit;
    }

    public function getStatusMessage($status)
    {
        $status = (string) $status;
        $statusCode = [
            '-1'  => 'اطلاعات ارسال شده
ناقص است.',
            '-2'  => 'IP و یا کد پذیرنده
اشتباه است',
            '-3'  => 'با توجه به محدودیت
های شاپرک امکان پرداخت با رقم درخواست شده
میسر نمی باشد',
            '-4'  => 'سطح تایید پذیرنده
پایین تر از سطح نقره ای است',
            '-11' => 'درخواست موردنظر
یافت نشد',
            '-12' => 'امکان ویرایش
درخواست میسر نمی باشد',
            '-21' => 'هیچ نوع عملیات مالی
برای این تراکنش یافت نشد',
            '-22' => 'تراکنش ناموفق می
باشد',
            '-33' => 'رقم تراکنش با رقم
پرداخت شده مطابقت ندارد',
            '-34' => 'سقف تقسیم تراکنش از
لحاظ تعداد یا رقم عبور نموده است',
            '-40' => 'اجازه دسترسی به متد
مربوطه وجود ندارد',
            '-41' => 'اطلاعات ارسالی
مربوط به اطلاعات اضافی غیرمعتبر می
باشد',
            '-42' => 'مدت زمان معتبر طول
عمر شناسه پرداخت باید بین ۳۰ دقیقه تا ۴۵
روز می باشد',
            '-54' => 'درخواست موردنظر
آرشیو شده است',
            '100' => 'عملیات با موفقیت
انجام شده است',
            '101' => 'عملیات پرداخت موفق
بوده و قبلا اعتبارسنجی تراکنش انجام شده
است',
        ];
        if (isset($statusCode[$status])) {
            return $statusCode[$status];
        }

        return 'خطای نامشخص. کد خطا: '.$status;
    }

    public function onPaymentConfiguration(&$element)
    {
        $subtask = JRequest::getCmd('subtask', '');

        parent::onPaymentConfiguration($element);
    }

    public function onPaymentConfigurationSave(&$element)
    {

        return true;
    }

    public function getPaymentDefaultValues(&$element)
    {
        $element->payment_name = 'درگاه پرداخت زرين
پال';
        $element->payment_description = '';
        $element->payment_images = '';

        $element->payment_params->invalid_status =
'cancelled';
        $element->payment_params->pending_status =
'created';
        $element->payment_params->verified_status =
'confirmed';
    }
    
    //need to help in programing
    public function
mjtTruncate($string,$length=480,$append="&hellip;") {
          $string = trim($string);

            if(strlen($string) > $length) {
              $string = wordwrap($string, $length);
              $string = explode("\n", $string, 2);
              $string = $string[0] . $append;
              }

        return $string;
      }
    
}
zarinpal.xml000064400000002602151160320200007074 0ustar00<?xml
version="1.0" encoding="utf-8"?>
<extension type="plugin" version="3.5"
method="upgrade" group="hikashoppayment">
	<name>Hikashop Zarinpal Payment Gateway</name>
	<version>1.0</version>
	<creationDate>2016/05/27</creationDate>
	<author>JOmega Team</author>
	<authorEmail>mahdipar2012@gmail.com.com</authorEmail>
	<authorUrl>http://www.omegaprogramming.ir</authorUrl>
	<copyright>Copyright (c) 2016 omegaprogramming.ir Iran Ltd. All
rights reserved.</copyright>
	<license>GNU/GPL license:
http://www.gnu.org/copyleft/gpl.html</license>
	<description></description>	
	<files>
		<filename>index.html</filename>
		<filename
plugin="zarinpal">zarinpal.php</filename>
		<filename>zarinpal_configuration.php</filename>
		<filename>zarinpal_end.php</filename>
	</files>
	<params addpath="/components/com_hikashop/params">
		<param name="pluginoptions" type="pluginoptions"
default="plugin" label="hikashop"
description="HikaShop options" />
	</params>
	<config>
		<fields name="params"
addfieldpath="/components/com_hikashop/fields">
			<fieldset name="basic">
				<field
                        id="pluginoptions"
                        name="pluginoptions"
                        type="pluginoptions"
                        label="hikashop"
                        description="HikaShop options"
                />
            </fieldset>
		</fields>
	</config>
</extension>zarinlog.txt000064400000000266151161113670007140
0ustar00Description = سفارش شماره: 130
بیشتر:farhad آیدی کاربر: 67 نام کاربری:farhad
آیدی های گروه های کاربری usergroup:[1,8]
 درس: 4
zarinpal_configuration.php000064400000003765151161113670012041
0ustar00<?php

defined('_JEXEC') or die('Restricted access');
?>
<tr>
	<td class="key">
		<label
for="data[payment][payment_params][merchant]"><?php
            echo JText::_('API زرین پال');
        ?></label>
	</td>
	<td>
		<input type="text"
name="data[payment][payment_params][merchant]"
value="<?php echo
$this->escape(@$this->element->payment_params->merchant);
?>" />
	</td>
</tr>
<tr>
	<td class="key">
		<label
for="data[payment][payment_params][cancel_url]"><?php
			echo JText::_('CANCEL_URL');
		?></label>
	</td>
	<td>
		<input type="text"
name="data[payment][payment_params][cancel_url]"
value="<?php echo
$this->escape(@$this->element->payment_params->cancel_url);
?>" />
	</td>
</tr>
<tr>
	<td class="key">
		<label
for="data[payment][payment_params][return_url]"><?php
			echo JText::_('RETURN_URL');
		?></label>
	</td>
	<td>
		<input type="text"
name="data[payment][payment_params][return_url]"
value="<?php echo
$this->escape(@$this->element->payment_params->return_url);
?>" />
	</td>
</tr>
<tr>
	<td class="key">
		<label
for="data[payment][payment_params][invalid_status]"><?php
            echo JText::_('INVALID_STATUS');
        ?></label>
	</td>
	<td><?php
        echo
$this->data['order_statuses']->display('data[payment][payment_params][invalid_status]',
@$this->element->payment_params->invalid_status);
    ?></td>
</tr>
<tr>
	<td class="key">
		<label
for="data[payment][payment_params][pending_status]"><?php
            echo JText::_('PENDING_STATUS');
        ?></label>
	</td>
	<td><?php
        echo
$this->data['order_statuses']->display('data[payment][payment_params][pending_status]',
@$this->element->payment_params->pending_status);
    ?></td>
</tr>
<tr>
	<td class="key">
		<label
for="data[payment][payment_params][verified_status]"><?php
            echo JText::_('VERIFIED_STATUS');
        ?></label>
	</td>
	<td><?php
        echo
$this->data['order_statuses']->display('data[payment][payment_params][verified_status]',
@$this->element->payment_params->verified_status);
    ?></td>
</tr>zarinpal_end.php000064400000001354151161113670007730
0ustar00<?php

defined('_JEXEC') or die('Restricted access');
?>
<div align="center" class="hikashop_zarinpal_end"
id="hikashop_zarinpal_end">
	<span id="hikashop_zarinpal_end_message"
class="hikashop_zarinpal_end_message">
		<?php echo
JText::sprintf('PLEASE_WAIT_BEFORE_REDIRECTION_TO_X',
$this->payment_name).'<br/>'.JText::_('CLICK_ON_BUTTON_IF_NOT_REDIRECTED');
?>
	</span>
	<span id="hikashop_zarinpal_end_spinner"
class="hikashop_zarinpal_end_spinner
hikashop_checkout_end_spinner">
	</span>
	<br/>
	در صورت عدم انتقال <a href="<?php echo
$this->payment_params->url; ?>">اينجا</a>
کليک کنيد.
	<script type="text/javascript">
		<!--
		window.location="<?php echo $this->payment_params->url;
?>";
		//-->
	</script>
</div>