X-Git-Url: http://git.roojs.org/?p=Pman.Core;a=blobdiff_plain;f=VerifyAccess.php;h=ba8d6414a6cd4b141c51ecbcfd86de0499d466e9;hp=d4433e57b50282bb4e710863e86f8bda5a6d72e2;hb=1524f8b36295809a3eedd6da3c6494f8aa0d86f5;hpb=2216e5c2240f2b2a609954cded9b6c06494ab3c7 diff --git a/VerifyAccess.php b/VerifyAccess.php index d4433e57..ba8d6414 100644 --- a/VerifyAccess.php +++ b/VerifyAccess.php @@ -14,7 +14,7 @@ class Pman_Core_VerifyAccess extends Pman return true; } - function get($id) + function get($id='', $opts = array()) { @list($id, $key) = explode('/', $id); @@ -34,7 +34,7 @@ class Pman_Core_VerifyAccess extends Pman $this->jerr('[System Error] This site does not using IP management'); } - $ff->Pman['XMPP']['to'] = 'edward@roojs.com'; // testing... +// $ff->Pman['XMPP']['to'] = 'edward@roojs.com'; // testing... $core_person = DB_DataObject::factory('core_person'); @@ -46,45 +46,50 @@ class Pman_Core_VerifyAccess extends Pman } - function post() - { - if(!empty($_REQUEST['_to_data'])){ - $this->toData(); - } - - - } - - function toData() + function post($base) { $core_ip_access = DB_DataObject::factory('core_ip_access'); if( empty($_REQUEST['id']) || - empty($_REQUEST['verify_key']) || - !$core_ip_access->get($_REQUEST['id']) + empty($_REQUEST['authorized_key']) || + !$core_ip_access->get($_REQUEST['id']) || + $core_ip_access->authorized_key != $_REQUEST['authorized_key'] ){ - $this->jerr('broken_link'); - return; + $this->jerr('Invalid URL'); } - if(!empty($coba_application_signup->coba_application_id)){ - $this->jerr('already_registered'); - return; + if(!empty($_REQUEST['_to_data'])){ + $this->jdata($core_ip_access->toArray()); } - - if($coba_application_signup->verify_key != $_REQUEST['verify_key']){ - $this->jerr('broken_link'); - return; + + $ff = HTML_FlexyFramework::get(); + + if(empty($ff->Pman['ip_management']) || empty($ff->Pman['XMPP']) || empty($ff->Pman['XMPP']['to'])) { + $this->jerr('[System Error] This site does not using IP management'); } - - if(time() > strtotime($coba_application_signup->expiry_dt)) { - $this->jerr('expired'); - return; + +// $ff->Pman['XMPP']['to'] = 'edward@roojs.com'; // testing... + + $core_person = DB_DataObject::factory('core_person'); + + if(!$core_person->get('email', $ff->Pman['XMPP']['to'])) { + $this->jerr('[System Error] Please setup the XMPP correctly'); } - $this->jdata($coba_application_signup->toArray()); + $o = clone($core_ip_access); + + $core_ip_access->setFrom(array( + 'status' => empty($_REQUEST['status']) ? 0 : $_REQUEST['status'], + 'expire_dt' => ($_REQUEST['status'] != -2 || empty($_REQUEST['expire_dt'])) ? '' : date('Y-m-d', strtotime($_REQUEST['expire_dt'])), + 'authorized_by' => $core_person->id + )); + + $core_ip_access->update($o); + + $this->jok('OK'); } + }