From 97757ba6cdfd84f1c9cbb3f8443aa39fc91d5123 Mon Sep 17 00:00:00 2001 From: Isaac Connor Date: Mon, 30 Oct 2017 16:29:13 -0400 Subject: [PATCH] add Inserting when saving --- web/includes/MontageLayout.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/web/includes/MontageLayout.php b/web/includes/MontageLayout.php index fd105a8cd..ef915a069 100644 --- a/web/includes/MontageLayout.php +++ b/web/includes/MontageLayout.php @@ -111,10 +111,17 @@ class MontageLayout { $this->{$k} = $v; } } - - $sql = 'UPDATE MontageLayouts SET '.implode(', ', array_map( function($field) {return $field.'=?';}, array_keys( $this->defaults ) ) ) . ' WHERE Id=?'; - $values = array_map( function($field){return $this->{$field};}, $this->fields ); - $values[] = $this->{'Id'}; + + $fields = array_keys( $this->defaults ); + $values = null; + if ( $this->{'Id'} ) { + $sql = 'UPDATE MontageLayouts SET '.implode(', ', array_map( function($field) {return $field.'=?';}, $fields ) ) . ' WHERE Id=?'; + $values = array_map( function($field){return $this->{$field};}, $fields ); + $values[] = $this->{'Id'}; + } else { + $sql = 'INSERT INTO MontageLayouts ('.implode( ',', $fields ).') VALUES ('.implode(',',array_map( function(){return '?';}, $fields ) ).')'; + $values = array_map( function($field){return $this->{$field};}, $fields ); + } dbQuery( $sql, $values ); } // end function save