### Eclipse Workspace Patch 1.0 #P cck Index: nodereference.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/nodereference.module,v retrieving revision 1.25.2.11 diff -u -r1.25.2.11 nodereference.module --- nodereference.module 21 Aug 2006 03:06:45 -0000 1.25.2.11 +++ nodereference.module 29 Aug 2006 18:39:24 -0000 @@ -150,7 +150,7 @@ $form[$field['field_name']]['nids'] = array( '#type' => 'select', '#title' => t($field['widget']['label']), - '#default_value' => $node_field['default nids'], + '#default_value' => isset($node_field['default nids']) ? $node_field['default nids'] : $field['widget']['default_value'], '#multiple' => $field['multiple'], '#options' => _nodereference_potential_references($field), '#required' => $field['required'], @@ -193,7 +193,7 @@ '#type' => 'textfield', '#title' => '', '#autocomplete_path' => 'nodereference/autocomplete/'. $field['field_name'], - '#default_value' => $item['default node_name'], + '#default_value' => isset($item['default node_name']) ? $item['default node_name'] : $field['widget']['default_value'], '#required' => ($delta == 0) ? $field['required'] : FALSE, ); $delta++; @@ -214,7 +214,7 @@ '#type' => 'textfield', '#title' => t($field['widget']['label']), '#autocomplete_path' => 'nodereference/autocomplete/'. $field['field_name'], - '#default_value' => $node_field[0]['default node_name'], + '#default_value' => isset($node_field[0]['default node_name']) ? $node_field[0]['default node_name'] : $field['widget']['default_value'], '#required' => $field['required'], '#description' => $field['widget']['description'], ); Index: userreference.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/userreference.module,v retrieving revision 1.22.2.9 diff -u -r1.22.2.9 userreference.module --- userreference.module 21 Aug 2006 03:06:45 -0000 1.22.2.9 +++ userreference.module 29 Aug 2006 18:39:25 -0000 @@ -147,7 +147,7 @@ $form[$field['field_name']]['uids'] = array( '#type' => 'select', '#title' => t($field['widget']['label']), - '#default_value' => $node_field['default uids'], + '#default_value' => isset($node_field['default uids']) ? $node_field['default uids'] : $field['widget']['field'], '#multiple' => $field['multiple'], '#options' => _userreference_potential_references($field), '#required' => $field['required'], @@ -190,7 +190,7 @@ '#type' => 'textfield', '#title' => '', '#autocomplete_path' => 'user/autocomplete', - '#default_value' => $item['default user_name'], + '#default_value' => isset($item['default user_name']) ? $item['default user_name'] : $field['widget']['default_value'], '#required' => ($delta == 0) ? $field['required'] : FALSE, ); $delta++; @@ -211,7 +211,7 @@ '#type' => 'textfield', '#title' => t($field['widget']['label']), '#autocomplete_path' => 'user/autocomplete', - '#default_value' => $node_field[0]['default user_name'], + '#default_value' => isset($node_field[0]['default user_name']) ? $node_field[0]['default user_name'] : $field['widget']['default_value'], '#required' => $field['required'], '#description' => $field['widget']['description'], ); Index: content.install =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/content.install,v retrieving revision 1.9.2.5 diff -u -r1.9.2.5 content.install --- content.install 21 Aug 2006 13:07:35 -0000 1.9.2.5 +++ content.install 29 Aug 2006 18:39:22 -0000 @@ -242,3 +242,20 @@ return $ret; } + +function content_update_9() { + $ret = array(); + + switch ($GLOBALS['db_type']) { + case 'pgsql': + db_add_column($ret, 'node_field_instance', 'default_value', 'varchar', array('not null' => TRUE, 'default' => '')); + break; + + case 'mysql': + case 'mysqli': + $ret[] = update_sql("ALTER TABLE {node_field_instance} ADD COLUMN default_value varchar(255) NOT NULL"); + break; + } + + return $ret; +} Index: content_admin.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/content_admin.inc,v retrieving revision 1.12.2.7 diff -u -r1.12.2.7 content_admin.inc --- content_admin.inc 21 Aug 2006 13:07:35 -0000 1.12.2.7 +++ content_admin.inc 29 Aug 2006 18:39:24 -0000 @@ -176,7 +176,7 @@ if (isset($form_values['original_type_name'])) { // Duplicate the field structure from the old content type. - db_query("INSERT INTO {node_field_instance} (field_name, type_name, weight, label, widget_type, widget_settings, description) SELECT field_name, '%s', weight, label, widget_type, widget_settings, description FROM {node_field_instance} WHERE type_name = '%s'", $form_values['type_name'], $form_values['original_type_name']); + db_query("INSERT INTO {node_field_instance} (field_name, type_name, weight, label, widget_type, widget_settings, description, default_value) SELECT field_name, '%s', weight, label, widget_type, widget_settings, description, default_value FROM {node_field_instance} WHERE type_name = '%s'", $form_values['type_name'], $form_values['original_type_name']); } drupal_set_message(t('Saved content type %type.', array('%type' => theme('placeholder', $form_values['label'])))); @@ -375,7 +375,7 @@ } } - $prior_instance = db_fetch_array(db_query("SELECT weight, label, widget_type, widget_settings, description FROM {node_field_instance} WHERE field_name = '%s'", $form_values['field_name'])); + $prior_instance = db_fetch_array(db_query("SELECT weight, label, widget_type, widget_settings, description, default_value FROM {node_field_instance} WHERE field_name = '%s'", $form_values['field_name'])); if (!$prior_instance) { $prior_instance = array(); $prior_instance['weight'] = 0; @@ -383,8 +383,9 @@ $prior_instance['widget_type'] = ''; $prior_instance['widget_settings'] = ''; $prior_instance['description'] = ''; + $prior_instance['default_value'] = ''; } - db_query("INSERT INTO {node_field_instance} (field_name, type_name, weight, label, widget_type, widget_settings, description) VALUES ('%s', '%s', %d, '%s', '%s', '%s', '%s')", $form_values['field_name'], $form_values['type_name'], $prior_instance['weight'], $prior_instance['label'], $prior_instance['widget_type'], $prior_instance['widget_settings'], $prior_instance['description']); + db_query("INSERT INTO {node_field_instance} (field_name, type_name, weight, label, widget_type, widget_settings, description) VALUES ('%s', '%s', %d, '%s', '%s', '%s', '%s')", $form_values['field_name'], $form_values['type_name'], $prior_instance['weight'], $prior_instance['label'], $prior_instance['widget_type'], $prior_instance['widget_settings'], $prior_instance['description'], $prior_instance['default_value']); drupal_set_message(t('Added field %label.', array('%label' => theme('placeholder', $prior_instance['label'])))); content_clear_type_cache(); @@ -415,7 +416,7 @@ $field_widget_type = explode('-', $form_values['field_widget_type']); db_query("INSERT INTO {node_field} (field_name, type, global_settings, required, multiple, db_storage) VALUES ('%s', '%s', '%s', %d, %d, %d)", $field_name, $field_widget_type[0], serialize(array()), 0, 0, CONTENT_DB_STORAGE_PER_CONTENT_TYPE); - db_query("INSERT INTO {node_field_instance} (field_name, type_name, weight, label, widget_type, widget_settings, description) VALUES ('%s', '%s', %d, '%s', '%s', '%s', '%s')", $field_name, $form_values['type_name'], 0, $form_values['label'], $field_widget_type[1], serialize(array()), ''); + db_query("INSERT INTO {node_field_instance} (field_name, type_name, weight, label, widget_type, widget_settings, description, default_value) VALUES ('%s', '%s', %d, '%s', '%s', '%s', '%s', '%s')", $field_name, $form_values['type_name'], 0, $form_values['label'], $field_widget_type[1], serialize(array()), ''); content_clear_type_cache(); @@ -552,6 +553,11 @@ '#description' => t('Instructions to present to the user below this field on the editing form.'), '#required' => FALSE, ); + $form['widget']['default_value'] = array( + '#type' => 'textfield', + '#title' => t('Default value'), + '#default_value' => $field['widget']['default_value'], + ); $form['field'] = array( '#type' => 'fieldset', @@ -636,7 +642,7 @@ $prev_field = $field; $prev_columns = module_invoke($field_type['module'], 'field_settings', 'database columns', $field); - db_query("UPDATE {node_field_instance} SET weight = %d, label = '%s', widget_type = '%s', widget_settings = '%s', description = '%s' WHERE type_name = '%s' AND field_name = '%s'", $form_values['weight'], $form_values['label'], $form_values['widget_type'], serialize($widget_settings), $form_values['description'], $form_values['type_name'], $form_values['field_name']); + db_query("UPDATE {node_field_instance} SET weight = %d, label = '%s', widget_type = '%s', widget_settings = '%s', description = '%s', default_value = '%s' WHERE type_name = '%s' AND field_name = '%s'", $form_values['weight'], $form_values['label'], $form_values['widget_type'], serialize($widget_settings), $form_values['description'], $form_values['default_value'], $form_values['type_name'], $form_values['field_name']); if ($form_values['multiple']) { $field['db_storage'] = CONTENT_DB_STORAGE_PER_FIELD; Index: content.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/content.module,v retrieving revision 1.56.2.17 diff -u -r1.56.2.17 content.module --- content.module 21 Aug 2006 03:06:45 -0000 1.56.2.17 +++ content.module 29 Aug 2006 18:39:23 -0000 @@ -721,7 +721,7 @@ $type_result = db_query('SELECT * FROM {node_type_content} nt ORDER BY nt.type_name ASC'); while ($type = db_fetch_array($type_result)) { $type['fields'] = array(); - $field_result = db_query("SELECT nfi.field_name, nfi.weight, nfi.label, nfi.widget_type, nfi.widget_settings, nfi.description FROM {node_field_instance} nfi WHERE nfi.type_name = '%s' ORDER BY nfi.weight ASC, nfi.label ASC", $type['type_name']); + $field_result = db_query("SELECT nfi.field_name, nfi.weight, nfi.label, nfi.widget_type, nfi.widget_settings, nfi.description, nfi.default_value FROM {node_field_instance} nfi WHERE nfi.type_name = '%s' ORDER BY nfi.weight ASC, nfi.label ASC", $type['type_name']); while ($field = db_fetch_array($field_result)) { // Overwrite global field information with specific information $field = array_merge($info['fields'][$field['field_name']], $field); @@ -737,6 +737,8 @@ unset($field['label']); $field['widget']['description'] = $field['description']; unset($field['description']); + $field['widget']['default_value'] = $field['default_value']; + unset($field['default_value']); $field['type_name'] = $type['type_name']; $type['fields'][$field['field_name']] = $field; } Index: optionwidgets.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/optionwidgets.module,v retrieving revision 1.8.2.1 diff -u -r1.8.2.1 optionwidgets.module --- optionwidgets.module 8 Aug 2006 15:26:30 -0000 1.8.2.1 +++ optionwidgets.module 29 Aug 2006 18:39:25 -0000 @@ -72,7 +72,7 @@ $form[$field['field_name']]['keys'] = array( '#type' => 'select', '#title' => t($field['widget']['label']), - '#default_value' => $node_field['default keys'], + '#default_value' => isset($node_field['default keys']) ? $node_field['default keys'] : $field['widget']['default_value'], '#multiple' => TRUE, '#options' => $options, '#required' => $field['required'], @@ -83,7 +83,7 @@ $form[$field['field_name']]['key'] = array( '#type' => 'select', '#title' => t($field['widget']['label']), - '#default_value' => $node_field['default key'], + '#default_value' => isset($node_field['default key']) ? $node_field['default key'] : $field['widget']['default_value'], '#multiple' => FALSE, '#options' => $options, '#required' => $field['required'], @@ -97,7 +97,7 @@ $form[$field['field_name']]['keys'] = array( '#type' => 'checkboxes', '#title' => t($field['widget']['label']), - '#default_value' => $node_field['default keys'], + '#default_value' => isset($node_field['default keys']) ? $node_field['default keys'] : $field['widget']['default_value'], '#options' => $options, '#required' => $field['required'], '#description' => $field['widget']['description'], @@ -107,7 +107,7 @@ $form[$field['field_name']]['key'] = array( '#type' => 'radios', '#title' => t($field['widget']['label']), - '#default_value' => $node_field['default key'], + '#default_value' => isset($node_field['default key']) ? $node_field['default key'] : $field['widget']['default_value'], '#options' => $options, '#required' => $field['required'], '#description' => $field['widget']['description'], Index: text.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/text.module,v retrieving revision 1.32.2.10 diff -u -r1.32.2.10 text.module --- text.module 21 Aug 2006 03:06:45 -0000 1.32.2.10 +++ text.module 29 Aug 2006 18:39:25 -0000 @@ -239,7 +239,7 @@ $form[$field['field_name']][$delta]['value'] = array( '#type' => 'textfield', '#title' => '', - '#default_value' => $data['value'], + '#default_value' => isset($data['value']) ? $data['value'] : $field['widget']['default_value'], '#required' => ($delta == 0) ? $field['required'] : FALSE, '#maxlength' => $field['max_length'] ? $field['max_length'] : '', '#weight' => $field['widget']['weight'], @@ -249,7 +249,7 @@ $form[$field['field_name']][$delta]['value'] = array( '#type' => 'textarea', '#title' => '', - '#default_value' => $data['value'], + '#default_value' => isset($data['value']) ? $data['value'] : $field['widget']['default_value'], '#required' => ($delta == 0) ? $field['required'] : FALSE, '#rows' => $field['widget']['rows'], '#weight' => $field['widget']['weight'], @@ -292,7 +292,7 @@ $form[$field['field_name']][0]['value'] = array( '#type' => 'textfield', '#title' => t($field['widget']['label']), - '#default_value' => isset($items[0]['value']) ? $items[0]['value'] : '', + '#default_value' => isset($items[0]['value']) ? $items[0]['value'] : $field['widget']['default_value'], '#required' => $field['required'], '#description' => $field['widget']['description'], '#maxlength' => $field['max_length'] ? $field['max_length'] : '', @@ -303,7 +303,7 @@ $form[$field['field_name']][0]['value'] = array( '#type' => 'textarea', '#title' => t($field['widget']['label']), - '#default_value' => $items[0]['value'], + '#default_value' => isset($items[0]['value']) ? $items[0]['value'] : $field['widget']['default_value'], '#required' => $field['required'], '#rows' => $field['widget']['rows'], '#description' => $field['widget']['description'], Index: number.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/cck/number.module,v retrieving revision 1.27.2.8 diff -u -r1.27.2.8 number.module --- number.module 21 Aug 2006 03:06:45 -0000 1.27.2.8 +++ number.module 29 Aug 2006 18:39:24 -0000 @@ -188,7 +188,7 @@ $form[$field['field_name']][$delta]['value'] = array( '#type' => 'textfield', '#title' => '', - '#default_value' => $data['value'], + '#default_value' => isset($data['value']) ? $data['value'] : $field['widget']['default_value'], '#required' => ($delta == 0) ? $field['required'] : FALSE, '#maxlength' => 11, ); @@ -209,7 +209,7 @@ $form[$field['field_name']][0]['value'] = array( '#type' => 'textfield', '#title' => t($field['widget']['label']), - '#default_value' => isset($node_field[0]['value']) ? $node_field[0]['value'] : '', + '#default_value' => isset($node_field[0]['value']) ? $node_field[0]['value'] : $field['widget']['default_value'], '#required' => $field['required'], '#description' => $field['widget']['description'], '#maxlength' => 11,