public static function text2bundle($text)
 {
     $path = $text->getPath();
     $output = array();
     self::handleDirectory($output, $path);
     $data = array();
     foreach ($output as $k => $v) {
         $data[] = array('attributes' => array('name' => $k), 'element-content' => $v);
     }
     return Neuron_Core_Tools::output_xml($data, null, 'messagebundle', array(), 'msg');
 }
 public function send($sUrl)
 {
     $xml = Neuron_Core_Tools::output_xml($this->sXML, 1, 'userstats', array());
     // And now: send the notification!
     $postfields = array('userstats_xml' => $xml);
     // Make sure curl doesn't think that we're trying to upload files
     foreach ($postfields as $k => $v) {
         if (substr($v, 0, 1) == '@') {
             // Let's hope the receive will trim the response.
             // It's only used for the bare message anyway.
             $postfields[$k] = ' ' . $v;
         }
     }
     if (defined('NOTIFICATION_DEBUG')) {
         $postfields['debug'] = true;
         echo '<h2>Preparing data to send:</h2><pre>';
         echo htmlentities(print_r($postfields, true));
         echo '</pre>';
         echo '<h2>Sending data</h2>';
         echo '<p>Contacting <span style="color: red;">' . $sUrl . '</span>... ';
     }
     try {
         if (function_exists('curl_init')) {
             $ch = curl_init();
             curl_setopt($ch, CURLOPT_URL, $sUrl);
             //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects
             curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
             // return into a variable
             curl_setopt($ch, CURLOPT_TIMEOUT, 3);
             // times out after 4s
             curl_setopt($ch, CURLOPT_POST, true);
             // set POST method
             curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
             // add POST fields
             // execute curl command
             $result = curl_exec($ch);
             // run the whole process
         }
     } catch (Exception $e) {
         // Do nothing. The notification was not sent.
     }
     // Show if debug is on.
     if (defined('NOTIFICATION_DEBUG')) {
         if (!$result) {
             echo '<p>cURL error: ' . curl_error($ch) . '</p>';
         }
         echo 'Done!</p>';
         echo '<h2>Beginning notification output:</h2>';
         echo '<pre>' . htmlentities($result) . '</pre>';
         echo '<h2>End of notification output.</h2>';
     }
 }
Example #3
0
            break;
        default:
            $output['content'] = array();
            break;
    }
    $pgen->stop();
    $db = Neuron_Core_Database::__getInstance();
    $output['info'] = array();
    $output['info']['mysqlCount'] = $db->getCounter();
    $output['info']['runduration'] = $pgen->gen(6);
    $output['info']['contentCount'] = count($output['content']);
    // Output
    switch ($output_type) {
        case 'json':
            echo json_encode($output);
            break;
        case 'serialize':
            echo serialize($output);
            break;
        case 'xml':
            header('Content-type: text/xml');
            echo Neuron_Core_Tools::output_xml($output['content'], $xml_version, $xml_name, $parameters);
            break;
        case 'print':
        default:
            echo '<pre>';
            print_r($output);
            echo '</pre>';
            break;
    }
}
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License along
 *  with this program; if not, write to the Free Software Foundation, Inc.,
 *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
$_POST['regions'] = array(array('x' => 0, 'y' => 0, 'z' => 0, 'radius' => 100000));
$out = array();
$out['regions'] = array();
if (isset($_POST['regions']) && is_array($_POST['regions'])) {
    $objectManager = $this->getMap()->getMapObjectManager();
    $objectManager->clean();
    foreach ($_POST['regions'] as $v) {
        $x = isset($v['x']) ? $v['x'] : 0;
        $y = isset($v['y']) ? $v['y'] : 0;
        $z = isset($v['z']) ? $v['z'] : 0;
        $radius = isset($v['radius']) ? $v['radius'] : 1000;
        $location = new Neuron_GameServer_Map_Location($x, $y, $z);
        $rObject = new Neuron_GameServer_Map_Radius($radius);
        $area = new Neuron_GameServer_Map_Area($location, $rObject);
        $region = array();
        $region['attributes'] = array('x' => $x, 'y' => $y, 'z' => $z, 'radius' => $radius);
        $region['objects'] = array();
        foreach ($objectManager->getDisplayObjects($area) as $v) {
            $region['objects'][] = $v->getExportData();
        }
        $out['regions'][] = $region;
    }
}
echo Neuron_Core_Tools::output_xml($out);
$db = Neuron_DB_Database::getInstance();
$lastlog = Neuron_Core_Tools::getInput('_REQUEST', 'from', 'int');
$ll = intval($lastlog);
$out = array();
$attributes = array();
if ($ll < 1) {
    $db = Neuron_DB_Database::getInstance();
    $last = $db->query("\n\t\tSELECT\n\t\t\tMAX(mu_id) AS laatste\n\t\tFROM\n\t\t\tn_map_object_updates\n\t");
    $out = array();
    $attributes = array('last' => intval($last[0]['laatste']));
} else {
    $q = $db->query("\n\t\tSELECT\n\t\t\t*\n\t\tFROM\n\t\t\tn_map_object_updates\n\t\tWHERE\n\t\t\tmu_id > {$ll}\n\t");
    $last = $ll;
    $out['objects'] = array();
    $out['removes'] = array();
    foreach ($q as $v) {
        if ($last < $v['mu_id']) {
            $last = $v['mu_id'];
        }
        if ($v['mu_action'] == 'REMOVE') {
            $out['removes'][] = array('attributes' => array('id' => $v['mu_uoid']));
        } else {
            //$this->alert ('reloading ' . $v['mu_x'] . ',' . $v['mu_y']);
            $object = Neuron_GameServer::getInstance()->getMap()->getMapObjectManager()->getFromUOID($v['mu_uoid']);
            $out['objects'][] = $object->getExportData();
        }
    }
    $attributes['last'] = $last;
}
echo Neuron_Core_Tools::output_xml($out, '1', 'updates', $attributes);