Index: ecard.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/ecard/ecard.module,v
retrieving revision 1.1.4.15
diff -u -p -r1.1.4.15 ecard.module
--- ecard.module	19 Nov 2009 18:27:48 -0000	1.1.4.15
+++ ecard.module	19 Nov 2009 20:49:41 -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'),
@@ -271,6 +276,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) {
@@ -282,13 +305,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.
