Index: ecard.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/ecard/ecard.module,v
retrieving revision 1.6.2.6
diff -u -p -r1.6.2.6 ecard.module
--- ecard.module	19 Nov 2009 18:29:20 -0000	1.6.2.6
+++ ecard.module	19 Nov 2009 20:59:39 -0000
@@ -108,6 +108,11 @@ function ecard_admin() {
       '#title' => t('Require the sender to enter a personal message.'),
       '#default_value' => variable_get('ecard_require_message', 0),
   );
+  $form['settings']['ecard_fill_in_name_email'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Automatically fill in sender name and email for logged in users.'),
+    '#default_value' => variable_get('ecard_fill_in_name_email', 0),
+  );
   $form['settings']['fieldset'] = array(
       '#type' => 'fieldset',
       '#title' => t('Message fieldset settings'),
@@ -295,6 +300,24 @@ function ecard_nodeapi(&$node, $op, $tea
 }
 
 /**
+ * Returns name of authenticated user
+ */
+function get_user_name() {
+  if(user_is_logged_in() && variable_get('ecard_fill_in_name_email', 0)) {
+    return $GLOBALS['user']->name;
+  }
+}
+
+/**
+ * Returns email of authenticated user 
+ */
+function get_user_mail() {
+  if(user_is_logged_in() && variable_get('ecard_fill_in_name_email', 0)) {
+    return $GLOBALS['user']->mail;
+  }
+}
+
+/**
  * Function to define the e-card form.
  */
 function ecard_form($form_state, &$node) {
@@ -306,13 +329,15 @@ function ecard_form($form_state, &$node)
   $form['name'] = array(
       '#title' => t('Sender name'),
       '#type' => 'textfield',
-      '#required' => variable_get('ecard_require_name', 0)
+      '#required' => variable_get('ecard_require_name', 0),
+      '#default_value' => get_user_name()
   );
   // Sender's email.
   $form['from_email'] = array(
       '#title' => t('Sender email'),
       '#type' => 'textfield',
-      '#required' => TRUE
+      '#required' => TRUE,
+      '#default_value' => get_user_mail()
   );
 
   // Display box to type recipients emails.
