Пример #1
0
				else
					$icon = "unknown.png";
				$download_url = get_url('mail', 'download_attachment', array('email_id' => $email->getId(), 'attachment_id' => $c));
				include_once ROOT . "/library/browser/Browser.php";
				if (Browser::instance()->getBrowser() == Browser::BROWSER_IE) {
					$download_url = "javascript:location.href = '$download_url';";
				}
	      		$description .=	'<img src="' . get_image_url("filetypes/" . $icon) .'"></td>
				<td><a target="_self" href="' . $download_url . '">' . clean($fName) . " ($size)" . '</a></td></tr>';
			}
      		$c++;
		}
		$description .= '</table></div></fieldset></td></tr>';
  } //if
  $description .= '</table></div>';
		if (($email_count = MailContents::countMailsInConversation($email)) > 1) {
			$emails_info = MailContents::getMailsFromConversation($email);
			$conversation_block = '';
			$conversation_block .= '<div id="'.$genid.'conversation" style="margin-bottom:10px;' . 
				(count($emails_info) > 6 ? 'max-height:101px;overflow:auto' : ''  ) . '"><table style="width:100%;">';
			
			$unread = 0;
			foreach($emails_info as $count => $info) { 
				$row_cls = $count % 2 ? 'odd' : 'even';
				$is_current = $info->getId() == $email->getId();
				$style = $is_current ? "style='background-color:#FFDD78'" : "";
				$conversation_block .= '<tr class="'.$row_cls.'" ' . $style . '>';
				
				$state = $info->getState();
				$show_user_icon = false;
				if ($state == 1 || $state == 3 || $state == 5) {
Пример #2
0
<?php 
$icon_class = $linked_object->getObjectTypeName();

$belongs_to_conversation = MailContents::countMailsInConversation($linked_object) > 1;

?>
<tr class="<?php echo $counter % 2 ? 'even' : 'odd' ?>">
	<td style="padding-left:1px;vertical-align:middle;width:22px">
		<a class="internalLink" href="<?php echo $linked_object->getObjectUrl() ?>">
		<div class="db-ico unknown ico-<?php echo clean($icon_class) ?>" title="<?php echo clean($linked_object->getObjectTypeName()) ?>"></div>
	</a></td>
	
	<td><a class="internalLink" href="<?php echo $linked_object->getObjectUrl() ?>" title="<?php echo clean($linked_object->getObjectName()) ?>">
	<span><?php if ($linked_object->getState() == 2) {?><span style="color:red;font-weight:bold"><?php echo lang('draft') ?></span> - <?php } ?><?php echo clean($linked_object->getObjectName()) ?></span></a></td>
	
	<td><span class="desc"><?php echo lang('from')?>: </span><?php echo $linked_object->getFrom()?></td>
	
	<?php $date_str = $linked_object->getSentDate() instanceof DateTimeValue ? ($linked_object->getSentDate()->isToday() ? format_time($linked_object->getSentDate(), null, logged_user()->getTimezone()) : format_datetime($linked_object->getSentDate(), $date_format, logged_user()->getTimezone())) : lang('n/a') ?>
	<td><span class="desc"><?php echo lang('date')?>: </span><?php echo $date_str ?></td>
	
	<td>
	<?php if ($belongs_to_conversation) { ?>
		<div onclick="og.loadConversation('<?php echo $genid ?>', <?php echo $linked_object->getId()?>);" class="db-ico ico-comment" style="cursor: pointer;"></div>
	<?php } ?>
	</td>
	
	<td style="text-align:right;">
	<?php
	if ($linked_objects_object->canUnlinkObject(logged_user(), $linked_object)) { 
		echo '<a class="internalLink" href="' . $linked_objects_object->getUnlinkObjectUrl($linked_object) . '" onclick="return confirm(\'' . escape_single_quotes(lang('confirm unlink object')) . '\')" title="' . lang('unlink object') . '">' . lang('unlink') . '</a>';
	} ?>
 private function getMailProperties($msg, $i = 0)
 {
     $text = $msg->getTextBody();
     // plain body is already converted to UTF-8 (when mail was saved)
     if (strlen_utf($text) > 150) {
         $text = substr_utf($text, 0, 150) . "...";
     }
     $show_as_conv = user_config_option('show_emails_as_conversations');
     if ($show_as_conv) {
         $conv_total = MailContents::countMailsInConversation($msg);
         $conv_unread = MailContents::countUnreadMailsInConversation($msg);
         $conv_hasatt = MailContents::conversationHasAttachments($msg);
     }
     $properties = array("id" => $msg->getId(), "ix" => $i, "object_id" => $msg->getId(), "type" => 'email', "hasAttachment" => $msg->getHasAttachments(), "accountId" => $msg->getAccountId(), "accountName" => $msg->getAccount() instanceof MailAccount ? $msg->getAccount()->getName() : lang('n/a'), "projectId" => $msg->getWorkspacesIdsCSV(logged_user()->getWorkspacesQuery()), "subject" => $msg->getSubject(), "text" => $text, "date" => $msg->getReceivedDate() instanceof DateTimeValue ? $msg->getReceivedDate()->isToday() ? format_time($msg->getReceivedDate()) : format_datetime($msg->getReceivedDate()) : lang('n/a'), "userId" => $msg->getAccount() instanceof MailAccount && $msg->getAccount()->getOwner() instanceof User ? $msg->getAccount()->getOwner()->getId() : 0, "userName" => $msg->getAccount() instanceof MailAccount && $msg->getAccount()->getOwner() instanceof User ? $msg->getAccount()->getOwner()->getDisplayName() : lang('n/a'), "tags" => implode(", ", $msg->getTagNames()), "isRead" => $show_as_conv ? $conv_unread == 0 : $msg->getIsRead(logged_user()->getId()), "from" => $msg->getFromName() != '' ? $msg->getFromName() : $msg->getFrom(), "from_email" => $msg->getFrom(), "isDraft" => $msg->getIsDraft(), "isSent" => $msg->getIsSent(), "folder" => $msg->getImapFolderName(), "to" => $msg->getTo());
     if ($show_as_conv) {
         $properties["conv_total"] = $conv_total;
         $properties["conv_unread"] = $conv_unread;
         $properties["conv_hasatt"] = $conv_hasatt;
     }
     return $properties;
 }
 private function getMailProperties($msg, $i = 0)
 {
     $text = $msg->getTextBody();
     // plain body is already converted to UTF-8 (when mail was saved)
     if (strlen_utf($text) > 150) {
         $text = substr_utf($text, 0, 150) . "...";
     }
     $show_as_conv = user_config_option('show_emails_as_conversations');
     if ($show_as_conv) {
         $conv_total = MailContents::countMailsInConversation($msg);
         $conv_unread = MailContents::countUnreadMailsInConversation($msg);
         $conv_hasatt = MailContents::conversationHasAttachments($msg);
     }
     //if the variable is not set, make the query and set it.
     //seba
     // Comented by php TODO: Feng 2 context/members
     /*
     		if(!isset($this->user_workspaces_ids)){
     			$sql = logged_user()->getWorkspacesQuery();
     			$rows = DB::executeAll($sql);
     			if (count($rows)== 0) $this->user_workspaces_ids = "0";
     			else{
     				foreach ($rows as $row){
     						if ($this->user_workspaces_ids != "") $this->user_workspaces_ids .= ",";
     						$this->user_workspaces_ids .= $row['project_id'];						
     				}
     			}
     		}*/
     /* @var $msg MailContent */
     $persons_dim = Dimensions::findByCode('feng_persons');
     $persons_dim_id = $persons_dim instanceof Dimension ? $persons_dim->getId() : "0";
     $mail_member_ids = array_flat(DB::executeAll("SELECT om.member_id FROM " . TABLE_PREFIX . "object_members om\r\n\t\t\t\tINNER JOIN " . TABLE_PREFIX . "members m ON m.id=om.member_id \r\n\t\t\t\tWHERE om.object_id = '" . $msg->getId() . "' AND om.is_optimization = 0 AND m.dimension_id<>{$persons_dim_id}"));
     $properties = array("id" => $msg->getId(), "ix" => $i, "object_id" => $msg->getId(), "ot_id" => $msg->getObjectTypeId(), "type" => 'email', "hasAttachment" => $msg->getHasAttachments(), "accountId" => $msg->getAccountId(), "accountName" => $msg->getAccount() instanceof MailAccount ? $msg->getAccount()->getName() : lang('n/a'), "subject" => $msg->getSubject(), "text" => $text, "date" => $msg->getReceivedDate() instanceof DateTimeValue ? $msg->getReceivedDate()->isToday() ? format_time($msg->getReceivedDate()) : format_datetime($msg->getReceivedDate()) : lang('n/a'), "userId" => $msg->getAccount() instanceof MailAccount && $msg->getAccount()->getOwner() instanceof Contact ? $msg->getAccount()->getOwner()->getId() : 0, "userName" => $msg->getAccount() instanceof MailAccount && $msg->getAccount()->getOwner() instanceof Contact ? $msg->getAccount()->getOwner()->getObjectName() : lang('n/a'), "isRead" => $show_as_conv ? $conv_unread == 0 : $msg->getIsRead(logged_user()->getId()), "from" => $msg->getFromName() != '' ? $msg->getFromName() : $msg->getFrom(), "from_email" => $msg->getFrom(), "isDraft" => $msg->getIsDraft(), "isSent" => $msg->getIsSent(), "folder" => $msg->getImapFolderName(), "to" => $msg->getTo(), "memPath" => json_encode($msg->getMembersIdsToDisplayPath()), "memberIds" => implode(",", $mail_member_ids));
     if ($show_as_conv) {
         $properties["conv_total"] = $conv_total;
         $properties["conv_unread"] = $conv_unread;
         $properties["conv_hasatt"] = $conv_hasatt;
     }
     return $properties;
 }