--- services 2/resources/node_resource.inc	2014-01-31 23:32:48.000000000 +0100
+++ services/resources/node_resource.inc	2014-03-24 16:46:57.000000000 +0100
@@ -263,6 +263,39 @@
 }
 
 /**
+ * Builds a form including multiple values for a field
+ *
+ *
+ * @param &$form_state
+ *   Array representing the current form state
+ * @param $node
+ *   Array representing the node values
+ * @param $expand_values
+ *   Array representing the key value pairs for multi-value fields
+ * @param $form_name
+ *   String of the form which is to be built
+ * @return
+ *   The form
+ *
+ * @see drupal_rebuild_form()
+ */
+
+function _services_multivalue_extend_node_form($array_, &$form_state, $node, $expand_values, $form_name ) {
+  $form = drupal_retrieve_form($form_name, $form_state);
+  // Increment items_count if more than	one value is to	be added
+  if ( count($expand_values) > 0 ) {
+      foreach ( $expand_values as $key => $value ) {
+          $form_state['field'][$key]['und']['items_count'] = $value;
+      }
+  }
+  // Rebuild the form including new item_count
+  $form = drupal_rebuild_form($form_name, $form_state, $form);
+  return $form;
+}
+
+
+
+/**
  * Creates a new node based on submitted values.
  *
  * Note that this function uses drupal_form_submit() to create new nodes,
@@ -311,7 +344,24 @@
   // default when the form is submitted).
   $stub_node = (object) array_intersect_key($node, array_flip(array('type', 'language')));
   $stub_node->name = $user->name;
-  drupal_form_submit($node_type . '_node_form', $form_state, (object)$stub_node);
+
+  // Old submit function
+  // drupal_form_submit($node_type . '_node_form', $form_state, (object)$stub_node);
+
+  // Save key and value pairs to be expanded on drupal_form_submit() later on
+  $tmp_vals = array();
+
+  foreach ( $form_state['values'] as $key => $value ) {
+      if( preg_match('/^field_/', $key) ) {
+         $num = count($form_state['values'][$key]['und']);
+         if ($num >= 2) {
+           $tmp_vals[$key]=$num;
+         }
+      }
+  }
+
+  // New submit function for multiple values
+  drupal_form_submit('_services_multivalue_extend_node_form', $form_state, (object)$stub_node, $tmp_vals, $node_type . '_node_form');
 
   if ($errors = form_get_errors()) {
     return services_error(implode(" ", $errors), 406, array('form_errors' => $errors));
