Your IP : 216.73.216.41


Current Path : /home/purehotels/public_html/administrator/components/com_acymailing/views/diagram/tmpl/
Upload File :
Current File : /home/purehotels/public_html/administrator/components/com_acymailing/views/diagram/tmpl/mailing.php

<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.2.0
 * @author	acyba.com
 * @copyright	(C) 2009-2016 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<?php $app = JFactory::getApplication();
	$adminPath = $app->isAdmin() ? '../' : JURI::base(true)."/";
	if(empty($this->mailingstats->mailid)) die('No statistics recorded yet'); ?>
	<script language="JavaScript" type="text/javascript">
		function drawChartSendProcess(){
			document.getElementById('sendprocess').style.display = 'block';
			document.getElementById('open').style.display = 'block';
			var dataTable = new google.visualization.DataTable();
			dataTable.addColumn('string');
			dataTable.addColumn('number');
			dataTable.addRows(3);

			dataTable.setValue(0, 0, '<?php echo intval($this->mailingstats->senthtml).' '.JText::_('SENT_HTML',true); ?>');
			dataTable.setValue(1, 0, '<?php echo intval($this->mailingstats->senttext).' '.JText::_('SENT_TEXT',true); ?>');
			dataTable.setValue(2, 0, '<?php echo intval($this->mailingstats->fail).' '.JText::_('FAILED',true); ?>');

			dataTable.setValue(0, 1, <?php echo intval($this->mailingstats->senthtml); ?>);
			dataTable.setValue(1, 1, <?php echo intval($this->mailingstats->senttext); ?>);
			dataTable.setValue(2, 1, <?php echo intval($this->mailingstats->fail); ?>);

			var vis = new google.visualization.PieChart(document.getElementById('sendprocess'));
			var options = {
				width: 360, height: 300, colors: ['#40A640', '#5F78B5', '#A42B37'], title: '<?php echo JText::_('SEND_PROCESS',true);?>', is3D: true, legendTextStyle: {color: '#333333'}
			};
			vis.draw(dataTable, options);
		}

		function drawChartOpen(){
			var vis = new google.visualization.PieChart(document.getElementById('open'));
			var options = {
				width: 360, height: 300, colors: ['#40A640', '#5F78B5'], title: '<?php echo JText::_('OPEN',true);?>', is3D: true, legendTextStyle: {color: '#333333'}
			};
			vis.draw(getDatadrawChartOpen(), options);
		}
		function getDatadrawChartOpen(){
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(2);

			dataTable.addColumn('string');
			dataTable.addColumn('number');
			dataTable.setValue(0, 0, '<?php echo intval($this->mailingstats->openunique).' '.JText::_('OPEN',true); ?>');
			dataTable.setValue(0, 1, <?php echo intval($this->mailingstats->openunique); ?>);
			<?php if(acymailing_level(3)) {$bounceval = $this->mailingstats->bounceunique;}
			else $bounceval = 0;
			?>
			dataTable.setValue(1, 0, '<?php $notOpen = intval($this->mailingstats->senthtml - $this->mailingstats->openunique - $bounceval); echo $notOpen.' '.JText::_('NOT_OPEN',true); ?>');
			dataTable.setValue(1, 1, <?php echo $notOpen; ?>);

			return dataTable;
		}

		function getDatadrawChartOpenclick(){
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(<?php echo count($this->openclick->open); ?>);

			dataTable.addColumn('string');

			dataTable.addColumn('number', '<?php echo JText::_('OPEN',true); ?>');
			dataTable.addColumn('number', '<?php echo JText::_('CLICKED_LINK',true);?>');

			<?php foreach($this->openclick->open as $i => $oneResult){
				if(!empty($this->openclick->legend[$i])) echo "dataTable.setValue($i, 0, '".addslashes($this->openclick->legend[$i])."');";
				echo "dataTable.setValue($i, 1, $oneResult);";
				echo "dataTable.setValue($i,2,".$this->openclick->click[$i].");";
			}
					?>
			return dataTable;
		}
		function drawChartOpenclick(){


			var vis = new google.visualization.LineChart(document.getElementById('openclicktotal'));
			var options = {
				width: 730, height: 300, colors: ['#40A640', '#5F78B5'], legend: 'bottom', title: '<?php echo JText::_('ACY_STAT_OPEN_CLICK',true); ?>', legendTextStyle: {color: '#333333'}
			};
			vis.draw(getDatadrawChartOpenclick(), options);
		}

		function displayChart(chartname){
			if(chartname == 'all'){
				document.getElementById('chartopenratetable').style.display = 'block';
				document.getElementById('openclicktotal').style.display = 'block';
				<?php if(!empty($this->openclickday)){ ?>
				document.getElementById('openclickperday').style.display = 'block';
				<?php } ?>
				<?php if(!empty($this->browserstats)){ ?>
				document.getElementById('browser').style.display = 'block';
				<?php } ?>
				<?php if(!empty($this->ismobilestats) || !empty($this->mobileosstats)){ ?>
				document.getElementById('chartdevicetable').style.display = 'block';
				<?php } ?>

			}else{
				document.getElementById('chartopenratetable').style.display = 'none';
				document.getElementById('openclicktotal').style.display = 'none';
				document.getElementById('openclickperday').style.display = 'none';
				document.getElementById('browser').style.display = 'none';
				document.getElementById('chartdevicetable').style.display = 'none';

				document.getElementById(chartname).style.display = 'block';
			}

		}

		function getDatadrawChartOpenclickperday(){
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(<?php echo min(10,count($this->openclickday)); ?>);

			dataTable.addColumn('string');

			dataTable.addColumn('number', '<?php echo JText::_('OPEN',true); ?>');
			dataTable.addColumn('number', '<?php echo JText::_('CLICKED_LINK',true);?>');

			<?php $i=min(10,count($this->openclickday))-1;
			$nextDate = '';
			foreach($this->openclickday as $oneResult){
				if(!empty($nextDate) AND $nextDate != $oneResult['date']){
					echo "dataTable.setValue($i, 0, '...'); ";
					if($i-- == 0) break;
				}
				echo "dataTable.setValue($i, 0, '".addslashes($oneResult['date'])."'); ";
				echo "dataTable.setValue($i, 1, ".intval(@$oneResult['open']->totalopen)."); ";
				echo "dataTable.setValue($i,2,".intval(@$oneResult['click']->totalclick)."); ";
				$nextDate = $oneResult['nextdate'];
				if($i-- == 0) break;
			}
					?>

			return dataTable;
		}

		function drawChartOpenclickperday(){
			var vis = new google.visualization.ColumnChart(document.getElementById('openclickperday'));
			var options = {
				width: 730, height: 300, colors: ['#40A640', '#5F78B5'], legend: 'bottom', title: '<?php echo JText::_('ACY_STAT_OPEN_CLICK_DAY',true); ?>', legendTextStyle: {color: '#333333'}
			};
			vis.draw(getDatadrawChartOpenclickperday(), options);

		}
		<?php if(!empty($this->browserstats)){ ?>
		function drawChartBrowser(){
			var vis = new google.visualization.PieChart(document.getElementById('browser'));
			var options = {
				width: 730, height: 300, title: '<?php echo JText::_('ACY_STAT_BROWSER',true);?>', is3D: true, legendTextStyle: {color: '#333333'}
			};
			vis.draw(getDatadrawChartBrowser(), options);
		}
		function getDatadrawChartBrowser(){
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(<?php echo count($this->browserstats);?>);

			dataTable.addColumn('string');
			dataTable.addColumn('number');
			var i = 0;
			<?php foreach($this->browserstats as $oneBrowser => $detailBrowser){ ?>
			dataTable.setValue(i, 0, '<?php echo intval($detailBrowser->nbBrowser).' '.$oneBrowser; ?>');
			dataTable.setValue(i, 1, <?php echo intval($detailBrowser->nbBrowser); ?>);
			i += 1;
			<?php } ?>

			return dataTable;
		}
		<?php } ?>
		<?php if(!empty($this->ismobilestats)){ ?>
		function drawChartIsMobile(){
			var vis = new google.visualization.PieChart(document.getElementById('device'));
			var options = {
				width: 360, height: 300, colors: ['#40A640', '#5F78B5'], title: '<?php echo JText::_('ACY_STAT_MOBILE_USAGE',true);?>', is3D: true, legendTextStyle: {color: '#333333'}
			};
			vis.draw(getDatadrawChartIsMobile(), options);
		}
		function getDatadrawChartIsMobile(){
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(2);

			dataTable.addColumn('string');
			dataTable.addColumn('number');
			<?php $valNoMob = (empty($this->ismobilestats[0])?0:$this->ismobilestats[0]->nbMobile);
			$valMob = (empty($this->ismobilestats[1])?0:$this->ismobilestats[1]->nbMobile); ?>
			dataTable.setValue(0, 0, '<?php echo intval($valNoMob).' '.JText::_('ACY_STAT_NOMOBILE'); ?>');
			dataTable.setValue(0, 1, <?php echo intval($valNoMob); ?>);
			dataTable.setValue(1, 0, '<?php echo intval($valMob).' '.JText::_('ACY_STAT_MOBILE'); ?>');
			dataTable.setValue(1, 1, <?php echo intval($valMob); ?>);

			return dataTable;
		}
		<?php } else{ ?>
		function drawChartIsMobile(){
			document.getElementById('device').style.display = 'none';
		}
		<?php } ?>
		<?php if(!empty($this->mobileosstats)){ ?>
		function drawChartMobileOS(){
			var vis = new google.visualization.PieChart(document.getElementById('mobileos'));
			var options = {
				width: 360, height: 300, title: '<?php echo JText::_('ACY_STAT_MOBILEOS',true);?>', is3D: true, legendTextStyle: {color: '#333333'}, chartAreaLeft: 10
			};
			vis.draw(getDatadrawChartMobileOS(), options);
		}
		function getDatadrawChartMobileOS(){
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(<?php echo count($this->mobileosstats);?>);

			dataTable.addColumn('string');
			dataTable.addColumn('number');

			var i = 0;
			<?php foreach($this->mobileosstats as $oneOS => $detailOS){ ?>
			dataTable.setValue(i, 0, '<?php echo intval($detailOS->nbOS).' '.$oneOS; ?>');
			dataTable.setValue(i, 1, <?php echo intval($detailOS->nbOS); ?>);
			i += 1;
			<?php } ?>

			return dataTable;
		}
		<?php } else{ ?>
		function drawChartMobileOS(){
			document.getElementById('mobileos').style.display = 'none';

		}
		<?php } ?>

		google.load("visualization", "1", {packages: ["corechart"]});
		google.setOnLoadCallback(drawChartSendProcess);
		google.setOnLoadCallback(drawChartOpen);
	</script>
	<style type="text/css">
		div.miniacycharts{
			width: 80px;
			float: left;
			text-align: center;
		}

		span.statnumber{
			font-size: 14px
		}

		body{
			height: auto
		}
	</style>
	<h1 class="onlyprint acystatpopuptitle"><?php echo $this->mailing->subject; ?></h1>
	<?php if(!$app->isAdmin()){ ?>
		<form action="index.php?option=<?php echo ACYMAILING_COMPONENT ?>" method="post" name="adminForm" autocomplete="off" id="adminForm">
			<fieldset class="acyheaderarea">
				<div class="acyheader icon-48-stats" style="float: left;"><?php echo $this->mailing->subject; ?></div>
				<div class="toolbar" id="toolbar" style="float: right;">
					<table>
						<tr>
							<td><a onclick="window.print(); return false;" href="#"><span class="icon-32-acyprint" title="<?php echo JText::_('ACY_PRINT', true); ?>"></span><?php echo JText::_('ACY_PRINT'); ?></a></td>
						</tr>
					</table>
				</div>
			</fieldset>
		</form>
	<?php } ?>
	<table width="100%" style="border: none;">
		<tr style="border: none;">
			<td width="45%" style="border: none;">
				<div class="acyblockoptions acystatsummary">
					<span class="acyblocktitle"><?php echo JText::_('ACY_SUMMARY'); ?></span>
					<ul>
						<li>
							<?php
							$text = '<span class="statnumber">'.((int)$this->mailingstats->senthtml + (int)$this->mailingstats->senttext).'</span>';
							if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
								$link = 'stats&task=detaillisting';
								if(!$app->isAdmin()) $link = 'frontnewsletter&task=detailstats&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
								$text = '<a href="'.acymailing_completeLink($link.'&filter_status=0&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
							}
							echo JText::sprintf('TOTAL_EMAIL_SENT', $text) ?></li>
						<?php if(!empty($this->mailingstats->queue)){ ?>
							<li><?php echo JText::sprintf('NB_PENDING_EMAIL', $this->mailingstats->queue, '<b><i>'.$this->mailing->subject.'</i></b>'); ?></li>
						<?php } ?>
						<?php if(!empty($this->mailingstats->senddate)){ ?>
							<li><?php echo JText::_('SEND_DATE').' : <span class="statnumber">'.acymailing_getDate($this->mailingstats->senddate); ?></span></li>
						<?php } ?>
						<?php if(!empty($this->mailingstats->senthtml)){ ?>
							<li>
								<?php
								if(acymailing_level(3)){
									$cleanSent = $this->mailingstats->senthtml + $this->mailingstats->senttext - $this->mailingstats->bounceunique;
								}else $cleanSent = $this->mailingstats->senthtml + $this->mailingstats->senttext;
								$pourcent = ($cleanSent == 0 ? '0%' : (substr($this->mailingstats->openunique / $cleanSent * 100, 0, 5)).'%');
								$text = '<span class="statnumber">'.$pourcent.'</span>';
								if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
									$link = 'stats&task=detaillisting';
									if(!$app->isAdmin()) $link = 'frontnewsletter&task=detailstats&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
									$text = '<a href="'.acymailing_completeLink($link.'&filter_status=open&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
								}

								echo JText::sprintf('NB_OPEN_USERS', $text).' ( '.$this->mailingstats->openunique.' / '.$cleanSent.' )';
								?>
							</li>
							<li>
								<?php
								$pourcent = ($cleanSent == 0 ? '0%' : (substr($this->mailingstats->clickunique / $cleanSent * 100, 0, 5)).'%');
								$text = '<span class="statnumber">'.$pourcent.'</span>';
								if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
									$link = 'statsurl&task=detaillisting';
									if(!$app->isAdmin()) $link = 'frontnewsletter&task=statsclick&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
									$text = '<a href="'.acymailing_completeLink($link.'&filter_url=0&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
								}

								echo JText::sprintf('NB_CLICK_USERS', $text).' ( '.$this->mailingstats->clickunique.' / '.$cleanSent.' )';
								?>
							</li>
							<li>
								<?php
								$pourcent = ($this->mailingstats->openunique == 0 ? '0%' : (substr($this->mailingstats->clickunique / $this->mailingstats->openunique * 100, 0, 5)).'%');
								$text = '<span class="statnumber">'.$pourcent.'</span>';
								if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
									$link = 'statsurl&task=detaillisting';
									if(!$app->isAdmin()) $link = 'frontnewsletter&task=statsclick&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
									$text = '<a href="'.acymailing_completeLink($link.'&filter_url=0&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
								}
								echo JText::sprintf('ACY_CLICK_EFFICIENCY_DESC', $text).' ( '.$this->mailingstats->clickunique.' / '.$this->mailingstats->openunique.' )';
								?>
							</li>
						<?php } ?>

						<li><?php $pourcent = ($cleanSent == 0) ? '0%' : (substr($this->mailingstats->unsub / $cleanSent * 100, 0, 5)).'%';
							$text = '<span class="statnumber">'.$pourcent.'</span>';
							if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
								$link = 'stats&start=0&task=unsubscribed';
								if(!$app->isAdmin()) $link = 'frontnewsletter&task=unsubscribed&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
								$text = '<a href="'.acymailing_completeLink($link.'&fromdetail=1&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
							}
							echo JText::sprintf('NB_UNSUB_USERS', $text).' ( '.$this->mailingstats->unsub.' )'; ?></li>

						<?php if(acymailing_level(3)){ ?>
							<li>
								<?php
								$pourcent = (empty($this->mailingstats->senthtml) AND empty($this->mailingstats->senttext)) ? '0%' : (substr($this->mailingstats->bounceunique / ($this->mailingstats->senthtml + $this->mailingstats->senttext) * 100, 0, 5)).'%';
								$text = '<span class="statnumber">'.$pourcent.'</span>';
								if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
									$link = 'stats&task=detaillisting';
									if(!$app->isAdmin()) $link = 'frontnewsletter&task=detailstats&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
									$text = '<a href="'.acymailing_completeLink($link.'&filter_status=bounce&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
								}
								echo JText::sprintf('NB_BOUNCED_USERS', $text).' ( '.$this->mailingstats->bounceunique.' )';
								?>
							</li>
						<?php } ?>
					</ul>
				</div>
			</td>
			<td width="55%" valign="top" style="border: none;">
				<?php if(!empty($this->mailinglinks)){ ?>
					<div class="acyblockoptions acypopularlinks">
						<span class="acyblocktitle"><?php echo JText::_('MOST_POPULAR_LINKS'); ?></span>
						<ul>
							<?php foreach($this->mailinglinks as $oneLink){
								$urlName = $oneLink->name;
								if(strlen($urlName) > 45) $urlName = substr($oneLink->name, 0, 20).'...'.substr($oneLink->name, -20);
								$text = '<span class="statnumber">'.$oneLink->uniqueclick.'</span>';
								if(acymailing_isAllowed($this->config->get('acl_subscriber_view', 'all'))){
									$link = 'statsurl&task=detaillisting';
									if(!$app->isAdmin()) $link = 'frontnewsletter&task=statsclick&listid='.JRequest::getInt('listid').'&mailid='.$this->mailing->mailid;
									$text = '<a href="'.acymailing_completeLink($link.'&filter_url='.$oneLink->urlid.'&filter_mail='.$this->mailing->mailid, true).'">'.$text.'</a>';
								}
								echo '<li>'.JText::sprintf('NB_USERS_CLICKED_ON', $text, '<a target="_blank" href="'.$oneLink->url.'">'.$urlName.'</a>').'</li>';
							} ?>
						</ul>
					</div>
				<?php } ?>
			</td>
		</tr>
	</table>

	<div class="acyblockoptions" style="<?php echo $app->isAdmin() ? 'padding-left:0px;padding-right:0px;' : 'padding-left:7px;padding-right:7px;'; ?>">
		<div id="acy_selectChart" style="margin-left: 20px;">
			<label for="selectChartAll" class="selectChart"><input type="radio" name="selectchart"
																   onclick="displayChart('all'); drawChartSendProcess(); drawChartOpen(); drawChartOpenclick(); <?php if(!empty($this->openclickday)){ ?>drawChartOpenclickperday(); <?php } ?><?php if(!empty($this->browserstats)){ ?> drawChartBrowser(); <?php } ?><?php if(!empty($this->ismobilestats) || !empty($this->mobileosstats)){ ?>drawChartIsMobile(); drawChartMobileOS();<?php } ?>"
																   id="selectChartAll"/><?php echo JText::_('ACY_ALL'); ?></label>
			<label for="selectChartOpenRate" class="selectChart"><input type="radio" name="selectchart" checked="checked" onclick="displayChart('chartopenratetable');drawChartSendProcess();drawChartOpen();" id="selectChartOpenRate"/><?php echo JText::_('ACY_STAT_OPEN_RATE'); ?></label>
			<label for="selectChartOpenClick" class="selectChart"><input type="radio" name="selectchart" onclick="displayChart('openclicktotal');drawChartOpenclick();" id="selectChartOpenClick"/><?php echo JText::_('ACY_STAT_OPEN_CLICK'); ?></label>
			<?php if(!empty($this->openclickday)){ ?>
				<label for="selectChartOpenClickPerDay" class="selectChart"><input type="radio" name="selectchart" onclick="displayChart('openclickperday');drawChartOpenclickperday();" id="selectChartOpenClickPerDay"/><?php echo JText::_('ACY_STAT_OPEN_CLICK_DAY'); ?></label>
			<?php } ?>
			<?php if(!empty($this->browserstats)){ ?>
				<label for="selectChartBrowser" class="selectChart"><input type="radio" name="selectchart" onclick="displayChart('browser');drawChartBrowser();" id="selectChartBrowser"/><?php echo JText::_('ACY_STAT_BROWSER'); ?></label>
			<?php } ?>
			<?php if(!empty($this->ismobilestats) || !empty($this->mobileosstats)){ ?>
				<label for="selectChartMobile" class="selectChart"><input type="radio" name="selectchart" onclick="displayChart('chartdevicetable');drawChartIsMobile();drawChartMobileOS();" id="selectChartMobile"/><?php echo JText::_('ACY_STAT_MOBILE_USAGE'); ?></label>
			<?php } ?>
		</div>

		<table width="100%" border="0" id="chartopenratetable">
			<tr>
				<td width="50%">
					<div id="sendprocess" class="acychart acysmallchart"></div>
				</td>
				<td width="50%">
					<div id="open" class="acychart acysmallchart"></div>
				</td>
			</tr>
		</table>
		<div width="100%" style="display:none" id="openclicktotal" class="acychart acynormalchart"></div>
		<div width="100%" style="display:none" id="openclickperday" class="acychart acynormalchart"></div>
		<div width="100%" style="display:none" id="browser" class="acychart acynormalchart"></div>
		<table width="100%" style="display:none" border="0" id="chartdevicetable">
			<tr>
				<td width="50%">
					<div id="device" class="acychart acysmallchart"></div>
				</td>
				<td width="50%">
					<div id="mobileos" class="acychart acysmallchart"></div>
				</td>
			</tr>
		</table>
	</div>
	<div style="clear: both;"/>
</div>