public function setup() { $this->setWidgets(array('idDescompte' => new sfWidgetFormChoice(array('choices' => DescomptesPeer::getDescomptesArray($this->getOption('IDS'), true, true))), 'idExtern' => new sfWidgetNumber(array(), array()), 'Nom' => new sfWidgetFormInput(array(), array('style' => 'width:200px;')), 'Percentatge' => new sfWidgetFormInput(array(), array('style' => 'width:50px;')), 'Preu' => new sfWidgetFormInput(array(), array('style' => 'width:50px;')), 'Tipus' => new sfWidgetFormChoice(array('choices' => array(1 => 'Estàndard'))), 'actiu' => new sfWidgetFormChoice(array('choices' => array(1 => 'Sí', 0 => 'No')), array()), 'site_id' => new sfWidgetFormInputHidden())); $this->setValidators(array('idDescompte' => new sfValidatorChoice(array('choices' => array($this->getObject()->getIddescompte()), 'empty_value' => $this->getObject()->getIddescompte(), 'required' => false)), 'idExtern' => new sfValidatorInteger(array('required' => true)), 'Nom' => new sfValidatorString(), 'Percentatge' => new sfValidatorNumber(), 'Preu' => new sfValidatorNumber(), 'Tipus' => new sfValidatorInteger(array('min' => -32768, 'max' => 32767, 'required' => false)), 'actiu' => new sfValidatorInteger(array('min' => -128, 'max' => 127)), 'site_id' => new sfValidatorInteger(array('min' => -32768, 'max' => 32767)))); $this->widgetSchema->setNameFormat('descomptes[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->widgetSchema->setLabels(array('idDescompte' => 'Escull un descompte: ', 'idExtern' => 'Titol', 'Descripcio' => 'Descripció', 'Percentatge' => 'Descompte (%)', 'Percentatge_txt' => 'Descompte text (20%)', 'Tipus' => 'Tipus')); }
/** * Treu un llistat dels assistents a l'espectacle. * */ public static function DocLlistatEntrades($IDH, $IDA, $idS) { //Comença la càrrega d'informació. $LOER = self::getEntradesVenudes($IDA, $IDH, true); $desc = DescomptesPeer::getDescomptesArray($idS, false, false); $OA = ActivitatsPeer::retrieveByPK($IDA); //$HTML = file_get_contents('c:\temp\hola.html'); $HTML = OptionsPeer::getString('BODY_DOC_LLISTAT_ENTRADES', $idS); preg_match_all('/^\\s*####(.*?)####(.*?)####\\/(.*?)####\\s*$/sm', $HTML, $A); $FILA = ""; $PATTERN = $A[2][0]; $i = 1; $TMP = ""; foreach ($LOER as $OER) { $TMP = $PATTERN; $TMP = str_replace('@@ID@@', $i++, $TMP); $TMP = str_replace('@@NOM_USUARI@@', $OER->getNomUsuari(), $TMP); $TMP = str_replace('@@CODI_UNIC@@', substr(sha1($OER->getIdentrada()), 0, 4), $TMP); $TMP = str_replace('@@QUANTITAT@@', $OER->getQuantitat(), $TMP); $TMP = str_replace('@@ESTAT@@', $OER->getEstatString(), $TMP); $TMP = str_replace('@@DESCOMPTE@@', $desc[$OER->getDescompte()], $TMP); $TMP = str_replace('@@COMENTARI@@', $OER->getComentari(), $TMP); $FILA .= $TMP; } //CONSULTEM USUARI $HTML = str_replace('@@NOM_ESPECTACLE@@', $OA->getNom(), $HTML); $HTML = str_replace($A[0][0], $FILA, $HTML); return $HTML; }