/**
 * Apply the filter-plugins on a given input
 * @param string Text to filter
 */
function applyFilterPlugins($text)
{
    $objectParser = new ObjectParser();
    $text = $objectParser->parse($text);
    $plugins = createDBCArray("modules", "MODULE_ID", "MODULE_TYPE_ID=4");
    for ($i = 0; $i < count($plugins); $i++) {
        includePGNSources();
        $plugin = createPGNRef($plugins[$i], 0);
        $text = $plugin->parseText($text);
    }
    return $text;
}
 private static function loadArray($object, &$result, $prefix = "")
 {
     $reflect = new ReflectionClass($object);
     $typeName = $reflect->getName();
     $properties = ObjectParser::getProperties($object);
     if (is_array($properties)) {
         foreach ($properties as $key => $prop) {
             $propertyName = $prop->getName();
             $propNameCamelCase = ucfirst($propertyName);
             $getMethodName = "get{$propNameCamelCase}";
             $setMethodName = "set{$propNameCamelCase}";
             $setIdMethodName = "{$setMethodName}_id";
             $setMethodParameter = new ReflectionParameter(array($typeName, $setMethodName), 0);
             if ($reflect->getMethod($setMethodName) && $setMethodParameter->getClass() && method_exists($object, $setIdMethodName)) {
                 continue;
             }
             $value = $object->{$getMethodName}();
             $name = $prefix . $propertyName;
             if (is_object($value)) {
                 ObjectParser::loadArray($value, $result, "{$name}.");
             } else {
                 $result[$name] = $value;
             }
         }
         return true;
     }
     return false;
 }
 public function update(Entidade $entity)
 {
     $result = $this->session->put("/{$this->entityName()}/altera/{$entity->getId()}", ObjectParser::toArray($entity));
     return $result;
 }
 public function baixar($id, BaixaVencimentoAReceber $baixa)
 {
     $result = $this->session->put("/{$this->entityName()}/{$id}/salvarBaixa", ObjectParser::toArray($baixa));
     return $this->parseResult($result);
 }
 public function testToJsonRemovePropriedadeComplexaQuePossuiPropriedadeId()
 {
     $municipio = new MunicipioTestObject();
     $municipio->setId(1);
     $municipio->setNome("Fortaleza");
     $conta = new ContaTestObject();
     $conta->setId(2);
     $conta->setNome("Banco do Brasil");
     $rateio = new RateioTestObject();
     $rateio->setMunicipio($municipio);
     $rateio->setConta($conta);
     $arr = ArrayEx::transform(ObjectParser::toArray($rateio));
     $this->assertEquals(2, count($arr));
     $this->assertEquals(1, $arr["Municipio_id"]);
     $this->assertEquals(2, $arr["Conta_id"]);
 }
		/**
		   * Create the sql-code for a version of the selected object
		   * @param integer ID of new Version.
		   * @returns string SQL Code for new Version.
		   */
		function createVersion($newid) {
			// query for content
			global $db;

			$querySQL = "SELECT CONTENT FROM $this->management_table WHERE $this->pk_name = $this->fkid";
			$query = new query($db, $querySQL);
			$query->getrow();
			$content = $query->field("CONTENT");
			$parser = new LaunchText(variation(), false);			
			$content = addslashes($parser->parseText($content));			
			$query->free();
			$launchparser = new ObjectParser();
			$launchparser->launch($content, variation());
			$sql = "INSERT INTO $this->management_table ($this->pk_name, CONTENT) VALUES ($newid, '$content')";
			return $sql;
		}