Index: stormmail.info
===================================================================
--- stormmail.info	(revision 1)
+++ stormmail.info	(working copy)
@@ -1,6 +1,6 @@
-; $Id: storm.info,v 1.3.4.2 2009/07/29 22:42:24 magnity Exp $
-name = Storm mail
-description = "Send mails for \"assigned to\" person."
+; $Id$
+name = Storm Mail
+description = "Sends mail to assigned person or team"
 dependencies[] = storm 
 dependencies[] = stormproject
 dependencies[] = stormtask
@@ -8,3 +8,6 @@
 dependencies[] = stormperson
 core = 6.x
 package = Storm
+
+
+
Index: stormmail.module
===================================================================
--- stormmail.module	(revision 1)
+++ stormmail.module	(working copy)
@@ -1,86 +1,117 @@
 <?php
-// $Id:
+// $Id$
 
 /*
  * I pick up the modifications or the creation of ticket, task or of projects
  */
-function stormmail_nodeapi(&$node, $op, $teaser, $page){
-	switch ($op) {
-		case 'update':
-			if($node->type == "stormproject") {
-				stormmail_all($node, "project", "up");
-			}
-			if($node->type == "stormtask") {
-				stormmail_all($node, "task", "up");
-			}
-			if($node->type == "stormticket") {
-				stormmail_all($node, "tikcet", "up");
-			}
-			break;
-		case 'insert':
-			if($node->type == "stormproject") {
-				stormmail_all($node, "project", "ins");
-			}
-			if($node->type == "stormtask") {
-				stormmail_all($node, "task", "ins");
-			}
-			if($node->type == "stormticket") {
-				stormmail_all($node, "ticket", "ins");
-			}
-			break;
-	}
+function stormmail_nodeapi(&$node, $op, $teaser, $page) {
+  switch ($op) {
+case 'update':
+  if ($node->type == "stormproject") {
+  stormmail_all($node, "project", "up");
+  }
+  if ($node->type == "stormtask") {
+  stormmail_all($node, "task", "up");
+  }
+  if ($node->type == "stormticket") {
+  stormmail_all($node, "ticket", "up");
+  }
+  break;
+  case 'insert':
+  if ($node->type == "stormproject") {
+  stormmail_all($node, "project", "ins");
+  }
+  if ($node->type == "stormtask") {
+  stormmail_all($node, "task", "ins");
+  }
+  if ($node->type == "stormticket") {
+  stormmail_all($node, "ticket", "ins");
+  }
+  break;
+  }
 }
 
 /*
  * I prepare the data necessary for shipment of the mail
  */
-function stormmail_all($node, $type, $oper){
-	$result = db_query("SELECT * FROM {%s} WHERE nid = %d ", $node->type, $node->nid);
-    if ($data = db_fetch_object($result)) {
-       $assign = $data->assigned_nid;
-    } 
-	$result = db_query("SELECT * FROM {stormperson} WHERE nid = %d ", $assign);
-	if ($data = db_fetch_object($result)) {
-       $emailTo = $data->email;
-       $name = $data->fullname;
-    } 
-	
-	//Check if pathauto module exists and it's enabled
-	$exist_alias = db_result(db_query("SELECT dst FROM {url_alias} WHERE src = '%s' ", 'node/'.$node->nid));
-	if($exist_alias) {	
-		$result = db_query("SELECT * FROM {url_alias} WHERE src = '%s' ", 'node/'.$node->nid);
-		if ($data = db_fetch_object($result)) {
-		   $url = $data->dst;
-		}
-	}
-	else $url = 'node/'.$node->nid;
-    
-	//I obtain URL of the corresponding page to the rows unloaded
-	global $base_url;  
-	$url_down = $base_url.'/'.$url;
-    
-	$result = db_query("SELECT * FROM {node} WHERE nid = %d", $node->nid);
-    if ($data = db_fetch_object($result)) {
-       $titolo = $data->title;
-    }  
-	
-	//It passes the parameters to the mail 
-    $params = array(
-       'name' => $name,
-       'url' => $url_down,
-       'titolo' => $titolo,
-	   'type' => $type
-     );
+  function stormmail_all($node, $type, $oper) {
+//Grab the ticket
+$result = db_query("SELECT * FROM {%s} WHERE nid = %d ", $node->type, $node->nid);
+if ($data = db_fetch_object($result)) {
+$assign = $data->assigned_nid;
+//Check who has been assigned to it
+$sql = db_query("SELECT * FROM {node} WHERE nid = %d ", $assign);
+$type= db_fetch_object($sql);
 
-	//shipment mail all' awardee of the task
-	if($node->send_mail == 'yes' && $emailTo != '' && $oper == "up") {
-       drupal_mail('stormmail', 'assigned_to_update', $emailTo, language_default(), $params); 
-	}
-	if($node->send_mail == 'yes' && $emailTo != '' && $oper == "ins") {
-       drupal_mail('stormmail', 'assigned_to', $emailTo, language_default(), $params); 
-	}
+  if ($type->type == 'stormteam') {
+//getTicket Type
+$type= $type->type;
+//get Team name
+$name = $type->title;
+//get members
+$result = db_query("SELECT * FROM {stormteam} WHERE nid = %d ", $assign);
+$teammembers= db_fetch_object($result);
+$teammembers= unserialize($teammembers->members);
+$emailTo='';
+
+$counter_teammembers=0;
+foreach($teammembers as $key => $teammember) {
+if($counter_teammembers!=0) $emailTo .= ' , ';
+$counter_teammembers++;
+$result = db_query("SELECT * FROM {stormperson} WHERE nid = %d ", $key);
+if ($data = db_fetch_object($result)) {
+$emailTo .= $data->email;
+
 }
+}
+}
+else {
+$result = db_query("SELECT * FROM {stormperson} WHERE nid = %d ", $assign);
+if ($data = db_fetch_object($result)) {
+$emailTo = $data->email;
+$name = $data->fullname;
+}
+};
 
+
+}
+//Check if pathauto module exists and it's enabled
+  $exist_alias = db_result(db_query("SELECT dst FROM {url_alias} WHERE src = '%s' ", 'node/' . $node->nid));
+    if ($exist_alias) {
+  $result = db_query("SELECT * FROM {url_alias} WHERE src = '%s' ", 'node/' . $node->nid);
+  if ($data = db_fetch_object($result)) {
+  $url = $data->dst;
+  }
+    }
+  else $url = 'node/' . $node->nid;
+  //I obtain URL of the corresponding page to the rows unloaded
+  global $base_url;
+  $url_down = $base_url . '/' . $url;
+  $result = db_query("SELECT * FROM {node} WHERE nid = %d", $node->nid);
+    if ($data = db_fetch_object($result)) {
+  $titolo = $data->title;
+    }
+  //It passes the parameters to the mail
+  $params = array(
+'name' => $name,
+'url' => $url_down,
+'titolo' => $titolo,
+'type' => $type
+  );
+
+
+  //shipment mail all' awardee of the task
+  if ($node->send_mail == 'yes' && $emailTo != '' && $oper == "up") {
+drupal_mail('stormmail', 'assigned_to_update', $emailTo, language_default(), $params);
+drupal_set_message ('update mail sent ');
+  }
+  if ($node->send_mail == 'yes' && $emailTo != '' && $oper == "ins") {
+drupal_mail('stormmail', 'assigned_to', $emailTo, language_default(), $params);
+drupal_set_message ('mail sent ');
+
+  }
+  }
+
 /**
  * Function for the shipment of email
  */
@@ -88,25 +119,24 @@
   switch ($key) {
     case 'assigned_to':
       // note: data can be passed to this function in the $params array
-      $message['subject'] = t('assignment ').$params['type'];
-      $message['body'] = t('Hello ').$params['name'].t(', ')
-                        .t('The e\' state as soon as assigned the following one ').$params['type'].(': ').$params['url'].t(' dal titolo: "').$params['titolo'].t('"');
+      $message['subject'] = t('assignment ') . $params['type'];
+      $message['body'] = t('Hello ') . $params['name'] . t(', ')
+                        . t('The e\' state as soon as assigned the following one ') . $params['type'] . (': ') . $params['url'] . t(' dal titolo: "') . $params['titolo'] . t('"');
       break;
-      
       case 'assigned_to_update':
       // note: data can be passed to this function in the $params array
-      $message['subject'] = t('update ').$params['type'];
-      $message['body'] = t('Hello ').$params['name'].t(', ')
-                        .t('The ').$params['type'].(' "').$params['titolo'].t('", to which you are assigned has been modified: ').$params['url'];
+      $message['subject'] = t('update ') . $params['type'];
+      $message['body'] = t('Hello ') . $params['name'] . t(', ')
+                        . t('The ') . $params['type'] . (' "') . $params['titolo'] . t('", to which you are assigned has been modified: ') . $params['url'];
       break;
-   }
+  }
 }
 
 /**
- * Implementation of hook_form_alter()
+ * Implementation of hook_form_alter().
  */
- function stormmail_form_alter(&$form, $form_state, $form_id){
-    switch($form_id){
+  function stormmail_form_alter(&$form, $form_state, $form_id) {
+    switch ($form_id) {
         case 'stormproject_node_form':
         case 'stormtask_node_form':
         case 'stormticket_node_form':
@@ -122,6 +152,5 @@
             );
             return $form;
         break;
-    }
- }
- 
\ No newline at end of file
+  }
+  }
\ No newline at end of file
