Index: legal.module =================================================================== --- legal.module (revision 1893) +++ legal.module (working copy) @@ -306,7 +306,7 @@ // If new conditions are different from current permisions - enter in database if ( legal_conditions_updated($form_values) ) { - db_query("INSERT INTO {legal_conditions} (tc_id, conditions, date, extras, changes) VALUES (NULL, '%s', %d, '%s', '%s')", $form_values['conditions'], time(), serialize($form_values['extras']), $form_values['changes']); + db_query("INSERT INTO {legal_conditions} (conditions, date, extras, changes) VALUES ('%s', %d, '%s', '%s')", $form_values['conditions'], time(), serialize($form_values['extras']), $form_values['changes']); drupal_set_message (t('Terms & Conditions have been saved.')); } @@ -644,7 +644,7 @@ function legal_save_accept($uid, $tc_id) { - db_query("INSERT INTO {legal_accepted} (legal_id, uid, tc_id, accepted) VALUES (NULL, '%d', '%d', '%d')", $uid, $tc_id, time()); + db_query("INSERT INTO {legal_accepted} (uid, tc_id, accepted) VALUES ('%d', '%d', '%d')", $uid, $tc_id, time()); return; } Index: legal.install =================================================================== --- legal.install (revision 1893) +++ legal.install (working copy) @@ -37,7 +37,36 @@ $created = TRUE; } break; + + /** + * added schema for postgres + */ + case 'pgsql': + $query1 = db_query("CREATE TABLE {legal_accepted} ( + legal_id serial, + uid integer NOT NULL default '0', + tc_id integer NOT NULL default '0', + accepted integer NOT NULL default '0', + PRIMARY KEY (legal_id) + );"); + + $query2 = db_query("CREATE TABLE {legal_conditions} ( + tc_id serial, + conditions text NOT NULL, + date integer NOT NULL default '0', + extras text, + changes text, + PRIMARY KEY (tc_id) + );"); + + $query3 = db_query("CREATE INDEX {legal_accepted}_UID_IDX + ON {legal_accepted} (uid);"); + if ($query1 && $query2 && $query3 ) { + $created = TRUE; + } + break; + default: break; } @@ -59,6 +88,11 @@ switch ($GLOBALS['db_type']) { case 'mysqli': case 'mysql': + /** + * there is no change between mysql and pgsql for the following alter table + * statements + */ + case 'pgsql': $ret[] = update_sql("ALTER TABLE {legal_conditions} ADD extras TEXT"); $ret[] = update_sql("ALTER TABLE {legal_conditions} ADD changes TEXT"); break;