コード例 #1
0
ファイル: jaxl.0133.php プロジェクト: rahijain/JAXL
 public static function handleForm($payload)
 {
     $id = $payload['iq']['@']['id'];
     $domain = $payload['iq']['@']['from'];
     $node = $payload['iq']['#']['command'][0]['@']['node'];
     $sid = $payload['iq']['#']['command'][0]['@']['sessionid'];
     $status = $payload['iq']['#']['command'][0]['@']['status'];
     if ($status == "completed") {
         $callback = self::$buffer[self::$buffer[$id]]['callback'];
         unset(self::$buffer[self::$buffer[$id]]);
         unset(self::$buffer[$id]);
         call_user_func($callback, $payload);
     } else {
         if ($status == "executing") {
             $fields = JAXL0004::getFormField($payload['iq']['#']['command'][0]['#']['x'][0]['#']['field']);
             foreach ($fields as $key => $field) {
                 switch ($field['var']) {
                     case 'accountjids':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['jid'] . '@' . $domain;
                         break;
                     case 'accountjid':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['jid'] . '@' . $domain;
                         break;
                     case 'password':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['pass'];
                         break;
                     case 'password-verify':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['pass'];
                         break;
                     case 'email':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['email'];
                         break;
                     case 'given_name':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['fname'];
                         break;
                     case 'surname':
                         $fields[$key]['value'] = self::$buffer[$id]['user']['lname'];
                         break;
                 }
             }
             $payload = JAXL0004::setFormField($fields, false, false, 'submit');
             self::$buffer[self::submitForm($domain, false, $payload, $node, $sid)] = $id;
         } else {
             JAXLog::log("Unhandled form status type...");
         }
     }
 }
コード例 #2
0
ファイル: jaxl.0045.php プロジェクト: pavl00/Kalkun
 public static function setRoomConfig($jaxl, $jid, $roomJid, $fields, $callback = false)
 {
     $payload = JAXL0004::setFormField($fields, false, false, 'submit');
     $payload = '<query xmlns="' . self::$ns . '#owner">' . $payload . '</query>';
     return XMPPSend::iq($jaxl, "set", $payload, $roomJid, $jid, $callback);
 }