Esempio n. 1
0
 /**
  * Takes a set of form data ($Form->_PostValues), validates them, and
  * inserts or updates them to the configuration file.
  *
  * @param array $FormPostValues An associative array of $Field => $Value pairs that represent data posted
  * from the form in the $_POST or $_GET collection.
  */
 public function Save($FormPostValues)
 {
     if (isset($this->_ConfigurationFile) === FALSE) {
         trigger_error(ErrorMessage('You must define the file where the configuration settings will be saved.', 'ConfigurationModel', 'Save'), E_USER_ERROR);
     }
     // Fudge your way through the schema application. This will allow me to
     // force the validation object to expect the fieldnames contained in
     // $this->Data.
     $this->Validation->ApplySchema($this->Data);
     // Validate the form posted values
     if ($this->Validation->Validate($FormPostValues)) {
         $Config = Gdn::Factory(Gdn::AliasConfig);
         $Config->Load($this->_ConfigurationFile, 'Save', $this->Name);
         // Merge the validation fields and the forced settings into a single array
         $Settings = $this->Validation->ValidationFields();
         if (is_array($this->_ForceSettings)) {
             $Settings = MergeArrays($Settings, $this->_ForceSettings);
         }
         foreach ($Settings as $Setting => $Value) {
             $Config->Set($Setting, $Value, TRUE);
         }
         // And save them to the conf file
         return $Config->Save();
     } else {
         return FALSE;
     }
 }
 /**
  * Takes a set of form data ($Form->_PostValues), validates them, and
  * inserts or updates them to the configuration file.
  *
  * @param array $FormPostValues An associative array of $Field => $Value pairs that represent data posted
  * from the form in the $_POST or $_GET collection.
  */
 public function Save($FormPostValues)
 {
     // Fudge your way through the schema application. This will allow me to
     // force the validation object to expect the fieldnames contained in
     // $this->Data.
     $this->Validation->ApplySchema($this->Data);
     // Validate the form posted values
     if ($this->Validation->Validate($FormPostValues)) {
         // Merge the validation fields and the forced settings into a single array
         $Settings = $this->Validation->ValidationFields();
         if (is_array($this->_ForceSettings)) {
             $Settings = MergeArrays($Settings, $this->_ForceSettings);
         }
         return SaveToConfig($Settings);
     } else {
         return FALSE;
     }
 }
 /**
  * Takes a set of form data ($Form->_PostValues), validates them, and
  * inserts or updates them to the configuration file.
  *
  * @param array $FormPostValues An associative array of $Field => $Value pairs that represent data posted
  * from the form in the $_POST or $_GET collection.
  */
 public function Save($FormPostValues, $Live = FALSE)
 {
     // Fudge your way through the schema application. This will allow me to
     // force the validation object to expect the fieldnames contained in
     // $this->Data.
     $this->Validation->ApplySchema($this->Data);
     // Validate the form posted values
     if ($this->Validation->Validate($FormPostValues)) {
         // Merge the validation fields and the forced settings into a single array
         $Settings = $this->Validation->ValidationFields();
         if (is_array($this->_ForceSettings)) {
             $Settings = MergeArrays($Settings, $this->_ForceSettings);
         }
         $SaveResults = SaveToConfig($Settings);
         // If the Live flag is true, set these in memory too
         if ($SaveResults && $Live) {
             Gdn::Config()->Set($Settings, TRUE);
         }
         return $SaveResults;
     } else {
         return FALSE;
     }
 }
Esempio n. 4
0
 /**
  *  Takes a set of form data ($Form->_PostValues), validates them, and
  * inserts or updates them to the datatabase.
  *
  * @param array $FormPostValues An associative array of $Field => $Value pairs that represent data posted
  * from the form in the $_POST or $_GET collection.
  * @param array $Settings If a custom model needs special settings in order to perform a save, they
  * would be passed in using this variable as an associative array.
  * @return unknown
  */
 public function Save($FormPostValues, $Settings = FALSE)
 {
     // Define the primary key in this model's table.
     $this->DefineSchema();
     // See if a primary key value was posted and decide how to save
     $PrimaryKeyVal = ArrayValue($this->PrimaryKey, $FormPostValues);
     $Insert = $PrimaryKeyVal === FALSE ? TRUE : FALSE;
     if ($Insert) {
         $this->AddInsertFields($FormPostValues);
     } else {
         $this->AddUpdateFields($FormPostValues);
     }
     // Validate the form posted values
     if ($this->Validate($FormPostValues, $Insert) === TRUE) {
         $Fields = $this->Validation->ValidationFields();
         $Fields = RemoveKeyFromArray($Fields, $this->PrimaryKey);
         // Don't try to insert or update the primary key
         if ($Insert === FALSE) {
             $this->Update($Fields, array($this->PrimaryKey => $PrimaryKeyVal));
         } else {
             $PrimaryKeyVal = $this->Insert($Fields);
         }
     } else {
         $PrimaryKeyVal = FALSE;
     }
     return $PrimaryKeyVal;
 }