添加 Piwik 到代码库中。

+YUCHENG HU+

git-svn-id: https://svn.code.sf.net/p/hawebs/svn@484 a2543c7e-f6e9-4f8a-8bff-1ffc34733512
This commit is contained in:
YuCheng Hu
2010-07-10 04:53:17 +00:00
parent b282d1a279
commit 49c48e9cec
66 changed files with 5166 additions and 0 deletions
@@ -0,0 +1,92 @@
<?php
/**
* Piwik - Open source web analytics
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html Gpl v3 or later
* @version $Id: Controller.php 2067 2010-04-09 09:18:01Z matt $
*
* @category Piwik_Plugins
* @package Piwik_CoreHome
*/
/**
*
* @package Piwik_CoreHome
*/
class Piwik_CoreHome_Controller extends Piwik_Controller
{
function getDefaultAction()
{
return 'redirectToCoreHomeIndex';
}
function redirectToCoreHomeIndex()
{
$defaultReport = Piwik_UsersManager_API::getInstance()->getUserPreference(Piwik::getCurrentUserLogin(), Piwik_UsersManager_API::PREFERENCE_DEFAULT_REPORT);
$module = 'CoreHome';
$action = 'index';
// User preference: default report to load is the All Websites dashboard
if($defaultReport == 'MultiSites'
&& Piwik_PluginsManager::getInstance()->isPluginActivated('MultiSites'))
{
$module = 'MultiSites';
}
if($defaultReport == Piwik::getLoginPluginName())
{
$module = Piwik::getLoginPluginName();
}
parent::redirectToIndex($module, $action);
}
public function showInContext()
{
$controllerName = Piwik_Common::getRequestVar('moduleToLoad');
$actionName = Piwik_Common::getRequestVar('actionToLoad', 'index');
$view = $this->getDefaultIndexView();
$view->content = Piwik_FrontController::getInstance()->fetchDispatch( $controllerName, $actionName );
echo $view->render();
}
protected function getDefaultIndexView()
{
$view = Piwik_View::factory('index');
$this->setGeneralVariablesView($view);
$view->menu = Piwik_GetMenu();
$view->content = '';
return $view;
}
protected function setDateTodayIfWebsiteCreatedToday()
{
$date = Piwik_Common::getRequestVar('date', false);
if($date == 'today')
{
return;
}
$websiteId = Piwik_Common::getRequestVar('idSite', false);
if ($websiteId) {
$website = new Piwik_Site($websiteId);
$datetimeCreationDate = $this->site->getCreationDate()->getDatetime();
$creationDateLocalTimezone = Piwik_Date::factory($datetimeCreationDate, $website->getTimezone())->toString('Y-m-d');
$todayLocalTimezone = Piwik_Date::factory('now', $website->getTimezone())->toString('Y-m-d');
if( $creationDateLocalTimezone == $todayLocalTimezone )
{
Piwik::redirectToModule( 'CoreHome', 'index',
array( 'date' => 'today',
'idSite' => $websiteId,
'period' => Piwik_Common::getRequestVar('period'))
);
}
}
}
public function index()
{
$this->setDateTodayIfWebsiteCreatedToday();
$view = $this->getDefaultIndexView();
echo $view->render();
}
}
@@ -0,0 +1,28 @@
<?php
/**
* Piwik - Open source web analytics
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html Gpl v3 or later
* @version $Id: CoreHome.php 2264 2010-06-03 16:53:43Z vipsoft $
*
* @category Piwik_Plugins
* @package Piwik_CoreHome
*/
/**
*
* @package Piwik_CoreHome
*/
class Piwik_CoreHome extends Piwik_Plugin
{
public function getInformation()
{
return array(
'description' => Piwik_Translate('CoreHome_PluginDescription'),
'author' => 'Piwik',
'author_homepage' => 'http://piwik.org/',
'version' => Piwik_Version::VERSION,
);
}
}
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8" ?>
<dwsync>
<file name="index.tpl" server="hawebs.net//www/hawebs.net/piwik/" local="129230032218750000" remote="129229996200000000" />
<file name="piwik_tag.tpl" server="hawebs.net//www/hawebs.net/piwik/" local="129230031367031250" remote="129229995000000000" />
</dwsync>
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,164 @@
Date.prototype.getWeek = function() {
var onejan = new Date(this.getFullYear(),0,1);
return Math.ceil((((this - onejan) / 86400000) + onejan.getDay())/7);
}
var splitDate = piwik.currentDateString.split("-");
var currentYear = splitDate[0];
var currentMonth = splitDate[1] - 1;
var currentDay = splitDate[2];
var currentDate = new Date(currentYear, currentMonth, currentDay);
var todayDate = new Date;
var todayMonth = todayDate.getMonth();
var todayYear = todayDate.getFullYear();
var todayDay = todayDate.getDate();
function highlightCurrentPeriod( date )
{
var valid = false;
var dateMonth = date.getMonth();
var dateYear = date.getFullYear();
var dateDay = date.getDate();
var style = '';
// we don't color dates in the future
if( dateMonth == todayMonth
&& dateYear == todayYear
&& dateDay >= todayDay
)
{
return [true, ''];
}
// we don't color dates before the minimum date
if( dateYear < piwik.minDateYear
|| ( dateYear == piwik.minDateYear
&&
(
(dateMonth == piwik.minDateMonth - 1
&& dateDay < piwik.minDateDay)
|| (dateMonth < piwik.minDateMonth - 1)
)
)
)
{
return [true, ''];
}
// we color all day of the month for the same year for the month period
if(piwik.period == "month"
&& dateMonth == currentMonth
&& dateYear == currentYear
)
{
valid = true;
}
// we color all day of the year for the year period
else if(piwik.period == "year"
&& dateYear == currentYear
)
{
valid = true;
}
else if(piwik.period == "week"
&& date.getWeek() == currentDate.getWeek()
&& dateYear == currentYear
)
{
valid = true;
}
else if( piwik.period == "day"
&& dateDay == currentDay
&& dateMonth == currentMonth
&& dateYear == currentYear
)
{
valid = true;
}
if(valid)
{
return [true, 'ui-datepicker-current-period'];
}
return [true, ''];
}
function updateDate(dateText, inst)
{
var date = dateText;
// Let broadcast do its job:
// It will replace date value to both search query and hash and load the new page.
broadcast.propagateNewPage('date=' + date);
}
$(document).ready(function(){
$('#datepicker').datepicker({
onSelect: updateDate,
showOtherMonths: false,
dateFormat: 'yy-mm-dd',
firstDay: 1,
minDate: new Date(piwik.minDateYear, piwik.minDateMonth - 1, piwik.minDateDay),
maxDate: new Date(piwik.maxDateYear, piwik.maxDateMonth - 1, piwik.maxDateDay),
prevText: "",
nextText: "",
currentText: "",
beforeShowDay: highlightCurrentPeriod,
defaultDate: currentDate,
changeMonth: true,
changeYear: true,
// jquery-ui-i18n 1.7.2 lacks some translations, so we use our own
dayNamesMin: [
_pk_translate('CoreHome_DaySu_js'),
_pk_translate('CoreHome_DayMo_js'),
_pk_translate('CoreHome_DayTu_js'),
_pk_translate('CoreHome_DayWe_js'),
_pk_translate('CoreHome_DayTh_js'),
_pk_translate('CoreHome_DayFr_js'),
_pk_translate('CoreHome_DaySa_js')],
dayNamesShort: [
_pk_translate('CoreHome_ShortDay_1_js'),
_pk_translate('CoreHome_ShortDay_2_js'),
_pk_translate('CoreHome_ShortDay_3_js'),
_pk_translate('CoreHome_ShortDay_4_js'),
_pk_translate('CoreHome_ShortDay_5_js'),
_pk_translate('CoreHome_ShortDay_6_js'),
_pk_translate('CoreHome_ShortDay_7_js')],
dayNames: [
_pk_translate('CoreHome_LongDay_1_js'),
_pk_translate('CoreHome_LongDay_2_js'),
_pk_translate('CoreHome_LongDay_3_js'),
_pk_translate('CoreHome_LongDay_4_js'),
_pk_translate('CoreHome_LongDay_5_js'),
_pk_translate('CoreHome_LongDay_6_js'),
_pk_translate('CoreHome_LongDay_7_js')],
monthNamesShort: [
_pk_translate('CoreHome_ShortMonth_1_js'),
_pk_translate('CoreHome_ShortMonth_2_js'),
_pk_translate('CoreHome_ShortMonth_3_js'),
_pk_translate('CoreHome_ShortMonth_4_js'),
_pk_translate('CoreHome_ShortMonth_5_js'),
_pk_translate('CoreHome_ShortMonth_6_js'),
_pk_translate('CoreHome_ShortMonth_7_js'),
_pk_translate('CoreHome_ShortMonth_8_js'),
_pk_translate('CoreHome_ShortMonth_9_js'),
_pk_translate('CoreHome_ShortMonth_10_js'),
_pk_translate('CoreHome_ShortMonth_11_js'),
_pk_translate('CoreHome_ShortMonth_12_js')],
monthNames: [
_pk_translate('CoreHome_MonthJanuary_js'),
_pk_translate('CoreHome_MonthFebruary_js'),
_pk_translate('CoreHome_MonthMarch_js'),
_pk_translate('CoreHome_MonthApril_js'),
_pk_translate('CoreHome_MonthMay_js'),
_pk_translate('CoreHome_MonthJune_js'),
_pk_translate('CoreHome_MonthJuly_js'),
_pk_translate('CoreHome_MonthAugust_js'),
_pk_translate('CoreHome_MonthSeptember_js'),
_pk_translate('CoreHome_MonthOctober_js'),
_pk_translate('CoreHome_MonthNovember_js'),
_pk_translate('CoreHome_MonthDecember_js')]
});
});
@@ -0,0 +1,44 @@
.tagCloud {
width:100%;
}
.tagCloud img {
border:0;
}
.tagCloud .word a {
text-decoration:none;
}
.tagCloud .word {
padding: 4px 8px 4px 0;
white-space: nowrap;
}
.tagCloud .valueIsZero {
text-decoration: line-through;
}
.tagCloud span.size0, .tagCloud span.size0 a {
color: #344971;
font-size: 28px;
}
.tagCloud span.size1, .tagCloud span.size1 a {
color: #344971;
font-size: 24px;
}
.tagCloud span.size2, .tagCloud span.size2 a {
color: #4B74AD;
font-size:20px;
}
.tagCloud span.size3, .tagCloud span.size3 a {
color: #A3A8B6;
font-size: 16px;
}
.tagCloud span.size4, .tagCloud span.size4 a {
color: #A3A8B6;
font-size: 15px;
}
.tagCloud span.size5, .tagCloud span.size5 a {
color: #A3A8B6;
font-size: 14px;
}
.tagCloud span.size6, .tagCloud span.size6 a {
color: #A3A8B6;
font-size: 11px;
}
@@ -0,0 +1,18 @@
<div id="{$properties.uniqueId}">
<div class="tagCloud">
{if count($cloudValues) == 0}
<div class="pk-emptyDataTable">{'General_NoDataForTagCloud'|translate}</div>
{else}
{foreach from=$cloudValues key=word item=value}
<span title="{$value.word} ({$value.value} {$columnTranslation})" class="word size{$value.size} {* we strike tags with 0 hits *} {if $value.value == 0}valueIsZero{/if}">
{if false !== $labelMetadata[$value.word].url}<a href="{$labelMetadata[$value.word].url}" target="_blank">{/if}
{if false !== $labelMetadata[$value.word].logo}<img src="{$labelMetadata[$value.word].logo}" width="{$value.logoWidth}" />{else}
{$value.wordTruncated}{/if}{if false !== $labelMetadata[$value.word].url}</a>{/if}</span>
{/foreach}
{/if}
{if $properties.show_footer}
{include file="CoreHome/templates/datatable_footer.tpl"}
{/if}
{include file="CoreHome/templates/datatable_js.tpl"}
</div>
</div>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,41 @@
<div id="{$properties.uniqueId}">
<div class="{if isset($javascriptVariablesToSet.idSubtable)&& $javascriptVariablesToSet.idSubtable!=0}sub{/if}{if $javascriptVariablesToSet.viewDataTable=='tableAllColumns'}dataTableAllColumnsWrapper{elseif $javascriptVariablesToSet.viewDataTable=='tableGoals'}dataTableAllColumnsWrapper{else}dataTableWrapper{/if}">
{if isset($arrayDataTable.result) and $arrayDataTable.result == 'error'}
{$arrayDataTable.message}
{else}
{if count($arrayDataTable) == 0}
<div class="pk-emptyDataTable">{'CoreHome_TableNoData'|translate}</div>
{else}
<a name="{$properties.uniqueId}"></a>
<table cellspacing="0" class="dataTable">
<thead>
<tr>
{foreach from=$dataTableColumns item=column name=head}
<th class="sortable {if $smarty.foreach.head.first}first{elseif $smarty.foreach.head.last}last{/if}" id="{$column}"><div id="thDIV">{$columnTranslations[$column]}</div></th>
{/foreach}
</tr>
</thead>
<tbody>
{foreach from=$arrayDataTable item=row}
<tr {if $row.idsubdatatable && $javascriptVariablesToSet.controllerActionCalledWhenRequestSubTable != null}class="subDataTable" id="{$row.idsubdatatable}"{/if}>
{foreach from=$dataTableColumns item=column}
<td>
{if !$row.idsubdatatable && $column=='label' && !empty($row.metadata.url)}<span class="urlLink">{$row.metadata.url}</span>{/if}
{if $column=='label'}{logoHtml metadata=$row.metadata alt=$row.columns.label}{/if}
{if isset($row.columns[$column])}{$row.columns[$column]}{else}{$defaultWhenColumnValueNotDefined}{/if}
</td>
{/foreach}
</tr>
{/foreach}
</tbody>
</table>
{/if}
{if $properties.show_footer}
{include file="CoreHome/templates/datatable_footer.tpl"}
{/if}
{include file="CoreHome/templates/datatable_js.tpl"}
{/if}
</div>
</div>
@@ -0,0 +1,39 @@
<div id="{$properties.uniqueId}">
<div class="dataTableActionsWrapper">
{if isset($arrayDataTable.result) and $arrayDataTable.result == 'error'}
{$arrayDataTable.message}
{else}
{if count($arrayDataTable) == 0}
<div class="pk-emptyDataTable">{'CoreHome_TableNoData'|translate}</div>
{else}
<table cellspacing="0" class="dataTable dataTableActions">
<thead>
<tr>
{foreach from=$dataTableColumns item=column name=head}
<th class="sortable {if $smarty.foreach.head.first}first{elseif $smarty.foreach.head.last}last{/if}" id="{$column}"><div id="thDIV">{if !empty($columnDescriptions[$column])}<label title='{$columnDescriptions[$column]|escape:'html'}'>{/if}{$columnTranslations[$column]|escape:'html'}{if !empty($columnDescriptions[$column])}</label>{/if}</div></td>
{/foreach}
</tr>
</thead>
<tbody>
{foreach from=$arrayDataTable item=row}
<tr {if $row.idsubdatatable}class="rowToProcess subActionsDataTable" id="{$row.idsubdatatable}"{else} class="actionsDataTable rowToProcess"{/if}>
{foreach from=$dataTableColumns item=column}
<td>
{if !$row.idsubdatatable && $column=='label' && isset($row.metadata.url)}<span class="urlLink">{$row.metadata.url}</span>{/if}
{if isset($row.columns[$column])}{$row.columns[$column]}{else}{$defaultWhenColumnValueNotDefined}{/if}
</td>
{/foreach}
</tr>
{/foreach}
</tbody>
</table>
{/if}
{if $properties.show_footer}
{include file="CoreHome/templates/datatable_footer.tpl"}
{/if}
{include file="CoreHome/templates/datatable_actions_js.tpl"}
{/if}
</div>
</div>
@@ -0,0 +1,12 @@
<script type="text/javascript" defer="defer">
$(document).ready(function(){literal}{{/literal}
actionDataTables['{$properties.uniqueId}'] = new actionDataTable();
actionDataTables['{$properties.uniqueId}'].param = {literal}{{/literal}
{foreach from=$javascriptVariablesToSet key=name item=value name=loop}
{$name}: '{$value}'{if !$smarty.foreach.loop.last},{/if}
{/foreach}
{literal}};{/literal}
actionDataTables['{$properties.uniqueId}'].init('{$properties.uniqueId}');
{literal}}{/literal});
</script>
@@ -0,0 +1,36 @@
<div id="{$properties.uniqueId}">
<div class="dataTableActionsWrapper">
{if isset($arrayDataTable.result) and $arrayDataTable.result == 'error'}
{$arrayDataTable.message}
{else}
{if count($arrayDataTable) == 0}
<div class="pk-emptyDataTable">{'CoreHome_TableNoData'|translate}</div>
{else}
<table cellspacing="0" class="dataTable dataTableActions">
<thead>
<tr>
{foreach from=$dataTableColumns item=column}
<th class="sortable" id="{$column}">{$columnTranslations[$column]}</td>
{/foreach}
</tr>
</thead>
<tbody>
{foreach from=$arrayDataTable item=row}
<tr {if $row.idsubdatatable}class="level{$row.level} rowToProcess subActionsDataTable" id="{$row.idsubdatatable}"{else}class="actionsDataTable rowToProcess level{$row.level}"{/if}>
{foreach from=$dataTableColumns item=column}
<td>
{if isset($row.columns[$column])}{$row.columns[$column]}{else}{$defaultWhenColumnValueNotDefined}{/if}
</td>
{/foreach}
</tr>
{/foreach}
</tbody>
</table>
{/if}
{include file="CoreHome/templates/datatable_footer.tpl"}
{include file="CoreHome/templates/datatable_actions_js.tpl"}
{/if}
</div>
</div>
@@ -0,0 +1,19 @@
<tr id="{$properties.uniqueId}"></tr>
{if isset($arrayDataTable.result) and $arrayDataTable.result == 'error'}
{$arrayDataTable.message}
{else}
{if count($arrayDataTable) == 0}
<tr><td colspan="{$nbColumns}">{'CoreHome_CategoryNoData'|translate}</td></tr>
{else}
{foreach from=$arrayDataTable item=row}
<tr {if $row.idsubdatatable}class="subActionsDataTable" id="{$row.idsubdatatable}"{else}class="actionsDataTable"{/if}>
{foreach from=$dataTableColumns item=column}
<td>
{if !$row.idsubdatatable && $column=='label' && isset($row.metadata.url)}<span class="urlLink">{$row.metadata.url}</span>{/if}
{if isset($row.columns[$column])}{$row.columns[$column]}{else}{$defaultWhenColumnValueNotDefined}{/if}
</td>
{/foreach}
</tr>
{/foreach}
{/if}
{/if}
@@ -0,0 +1,73 @@
<div class="dataTableFeatures">
{if $properties.show_exclude_low_population}
<span class="dataTableExcludeLowPopulation"></span>
{/if}
{if $properties.show_offset_information}
<div>
<span class="dataTablePages"></span>
<span class="dataTablePrevious">&lsaquo; {'General_Previous'|translate}</span>
<span class="dataTableNext">{'General_Next'|translate} &rsaquo;</span>
</div>
{/if}
{if $properties.show_search}
<span class="dataTableSearchPattern">
<input id="keyword" type="text" length="15" />
<input type="submit" value="{'General_Search'|translate}" />
</span>
{/if}
{if $properties.show_footer_icons}
<div>
<span class="dataTableFooterIcons">
<span class="exportToFormatIcons" style="display:none;padding-left:4px;">
{if $properties.show_export_as_image_icon}
<span id="dataTableFooterExportAsImageIcon">
<a href="javascript:piwikHelper.OFC.jquery.popup('{$chartDivId}');"><img title="{'General_ExportAsImage_js'|translate}" src="themes/default/images/image.png" /></a>
</span>
{/if}
<img width="16" height="16" src="themes/default/images/export.png" title="{'General_Export'|translate}" />
<span class="linksExportToFormat" style="display:none">
<a target="_blank" class="exportToFormat" methodToCall="{$properties.apiMethodToRequestDataTable}" format="CSV" filter_limit="100">CSV</a> |
<a target="_blank" class="exportToFormat" methodToCall="{$properties.apiMethodToRequestDataTable}" format="TSV" filter_limit="100">TSV (Excel)</a> |
<a target="_blank" class="exportToFormat" methodToCall="{$properties.apiMethodToRequestDataTable}" format="XML" filter_limit="100">XML</a> |
<a target="_blank" class="exportToFormat" methodToCall="{$properties.apiMethodToRequestDataTable}" format="JSON" filter_limit="100">Json</a> |
<a target="_blank" class="exportToFormat" methodToCall="{$properties.apiMethodToRequestDataTable}" format="PHP" filter_limit="100">Php</a> |
<a target="_blank" class="exportToFormat" methodToCall="{$properties.apiMethodToRequestDataTable}" format="RSS" filter_limit="100" date="last10"><img border="0" src="themes/default/images/feed.png" /></a>
</span>
{if $properties.show_all_views_icons}
<a class="viewDataTable" format="cloud"><img width="16" height="16" src="themes/default/images/tagcloud.png" title="{'General_TagCloud'|translate}" /></a>
<a class="viewDataTable" format="graphVerticalBar"><img width="16" height="16" src="themes/default/images/chart_bar.png" title="{'General_VBarGraph'|translate}" /></a>
<a class="viewDataTable" format="graphPie"><img width="16" height="16" src="themes/default/images/chart_pie.png" title="{'General_Piechart'|translate}" /></a>
{/if}
</span>
<span class="dataTableFooterIconsShow" style="display:none;padding-left:4px;">
<img src="plugins/CoreHome/templates/images/more.png" />
</span>
{if $properties.show_table}
<span class="tableAllColumnsSwitch" style="display:none;float:right;padding-right:4px;border-right:1px solid #82A1D2;">
{if $javascriptVariablesToSet.viewDataTable != 'table'}
<img title="{'General_DisplayNormalTable'|translate}" src="themes/default/images/table.png" />
{elseif $properties.show_table_all_columns}
<img title="{'General_DisplayMoreData'|translate}" src="themes/default/images/table_more.png" />
{/if}
</span>
{/if}
{if $properties.show_goals}
<span class="tableGoals" style="display:none;float:right;padding-right:4px;">
{if $javascriptVariablesToSet.viewDataTable != 'tableGoals'}
<img title="{'General_DisplayGoals'|translate}" src="themes/default/images/goal.png" />
{/if}
</span>
{/if}
</span>
</div>
{/if}
<span class="pk-loadingDataTable"><img src="themes/default/images/loading-blue.gif" /> {'General_LoadingData'|translate}</span>
</div>
<div class="dataTableSpacer" />
@@ -0,0 +1,12 @@
<script type="text/javascript" defer="defer">
$(document).ready(function(){literal}{{/literal}
dataTables['{$properties.uniqueId}'] = new dataTable();
dataTables['{$properties.uniqueId}'].param = {literal}{{/literal}
{foreach from=$javascriptVariablesToSet key=name item=value name=loop}
{$name}: '{$value}'{if !$smarty.foreach.loop.last},{/if}
{/foreach}
{literal}};{/literal}
dataTables['{$properties.uniqueId}'].init('{$properties.uniqueId}');
{literal}}{/literal});
</script>
@@ -0,0 +1,92 @@
$(document).ready(function(){
$("#periodString").hide();
$("#otherPeriods").hide();
$("#datepicker").hide();
$("#periodString").show();
// we get the content of the div before modifying it (append image, etc.)
// so we can restore its value when we want
var savedCurrentPeriod = $("#periodString #currentPeriod").html();
// timeout used to fadeout the menu
var timeout = null;
var timeoutLength;
// restore the normal style of the current period type eg "DAY"
function restoreCurrentPeriod()
{
$("#currentPeriod")
.removeClass("hoverPeriod")
.html(savedCurrentPeriod);
}
// remove the sub menu created that contains the other periods availble
// eg. week | month | year
function removePeriodMenu() {
$("#otherPeriods").fadeOut('fast');
setCurrentPeriodStyle = true;
}
// state machine a bit complex and was hard to come up with
// there should be a simpler way to do it with jquery...
// if set to true, means that we want to style our current period
// for example add bold and append the image
var setCurrentPeriodStyle = true;
$("#periodString #periods")
.hover(function(){
$(this).css({ cursor: "pointer"});
// cancel the timeout
// indeed if the user goes away of the div and goes back on
// we don't hide the submenu!
if(timeout != null)
{
clearTimeout(timeout);
timeout = null;
timeoutLength = 500;
}
else
{
timeoutLength = 0;
setCurrentPeriodStyle = true;
}
if( setCurrentPeriodStyle == true)
{
$("#currentPeriod:not(.hoverPeriod)")
.addClass("hoverPeriod")
.append('&nbsp;<img src="plugins/CoreHome/templates/images/more_period.gif" style="vertical-align:middle" />');
}
}, function(){
restoreCurrentPeriod();
// we callback the function to hide the sub menu
// only if it was visible (otherwise it messes the state machine)
if($("#otherPeriods").is(":visible"))
{
timeout = setTimeout( removePeriodMenu , timeoutLength);
}
setCurrentPeriodStyle = false;
})
.click( function() {
// we restore the initial style on the DAY link
restoreCurrentPeriod();
// the menu shall fadeout after 500ms
timeoutLength = 500;
// appearance!
$("#otherPeriods").fadeIn();
});
$("#periodString #date")
.hover( function(){
$(this).css({ cursor: "pointer"});
}, function(){
})
.click(function(){
$("#datepicker").toggle();
if($("#datepicker").is(":visible"))
{
$("#datepicker .ui-state-highlight").removeClass('ui-state-highlight');
}
});
} );
@@ -0,0 +1,48 @@
<div id="{$properties.uniqueId}">
<div class="{if $graphType=='evolution'}dataTableGraphEvolutionWrapper{else}dataTableGraphWrapper{/if}">
{if $flashParameters.isDataAvailable || !$flashParameters.includeData}
<div><div id="{$chartDivId}">
{'General_RequiresFlash'|translate} >= {$flashParameters.requiredFlashVersion}. <a target="_blank" href="misc/redirectToUrl.php?url={'http://piwik.org/faq/troubleshooting/#faq_53'|escape:"url"}">{'General_GraphHelp'|translate}</a>
</div></div>
<script type="text/javascript">
<!--
{if $flashParameters.includeData}
piwikHelper.OFC.set("{$chartDivId}", '{$flashParameters.data}');
{/if}
swfobject.embedSWF(
"{$flashParameters.ofcLibraryPath}open-flash-chart.swf?{$tag}",
"{$chartDivId}",
"{$flashParameters.width}", "{$flashParameters.height}",
"{$flashParameters.requiredFlashVersion}",
"{$flashParameters.swfLibraryPath}expressInstall.swf",
{literal}{{/literal}
"{if $flashParameters.includeData}x-{/if}data-file":"{$urlGraphData|escape:"url"}",
{if $flashParameters.includeData}
"id":"{$chartDivId}",
{/if}
"loading":"{'General_Loading'|translate|escape:"html"}"
{literal}},
{{/literal}
"allowScriptAccess":"always",
"wmode":"transparent"
{literal}},
{{/literal}
"bgcolor":"#FFFFFF"
{literal}}{/literal}
);
//-->
</script>
{else}
<div><div id="{$chartDivId}" class="pk-emptyGraph">
{'General_NoDataForGraph'|translate}
</div></div>
{/if}
{if $properties.show_footer}
{include file="CoreHome/templates/datatable_footer.tpl"}
{include file="CoreHome/templates/datatable_js.tpl"}
{/if}
</div>
</div>
@@ -0,0 +1,15 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Piwik &rsaquo; {'CoreHome_WebAnalyticsReports'|translate}</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Piwik {$piwik_version}" />
<link rel="shortcut icon" href="plugins/CoreHome/templates/images/favicon.ico" />
{loadJavascriptTranslations plugins='CoreHome'}
{include file="CoreHome/templates/js_global_variables.tpl"}
{include file="CoreHome/templates/js_css_includes.tpl"}
</head>
<body>
{include file="CoreHome/templates/top_bar.tpl"}
{include file="CoreHome/templates/top_screen.tpl"}
@@ -0,0 +1,14 @@
<span id="header_message">
{if $piwikUrl == 'http://piwik.org/demo/'}
{'General_YouAreCurrentlyViewingDemoOfPiwik'|translate:"<a target='_blank' href='http://piwik.org'>Piwik</a>":"<a href='http://piwik.org/'>":"</a>":"<a href='http://piwik.org'>piwik.org</a>"}
{elseif $latest_version_available}
<img src='themes/default/images/warning_small.png' alt='' style="vertical-align: middle;" />
{if $isSuperUser}
{'General_PiwikXIsAvailablePleaseUpdateNow'|translate:$latest_version_available:"<br /><a href='index.php?module=CoreUpdater&action=newVersionAvailable'>":"</a>":"<a href='misc/redirectToUrl.php?url=http://piwik.org/changelog/' target='_blank'>":"</a>"}
{else}
{'General_PiwikXIsAvailablePleaseNotifyPiwikAdmin'|translate:"<a href='misc/redirectToUrl.php?url=http://piwik.org/' target='_blank'>Piwik</a> <a href='misc/redirectToUrl.php?url=http://piwik.org/changelog/' target='_blank'>$latest_version_available</a>"}
{/if}
{else}
{'General_PiwikIsACollaborativeProjectYouCanContribute'|translate:"<a href='misc/redirectToUrl.php?url=http://piwik.org'>":"$piwik_version</a>":"<br />":"<a target='_blank' href='misc/redirectToUrl.php?url=http://piwik.org/contribute/'>":"</a>"}
{/if}
</span>
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1021 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 B

@@ -0,0 +1,49 @@
{assign var=showSitesSelection value=true}
{include file="CoreHome/templates/header.tpl"}
{if isset($menu) && $menu}{include file="CoreHome/templates/menu.tpl"}{/if}
<div style="clear:both;"></div>
{ajaxLoadingDiv}
{ajaxRequestErrorDiv}
<div id="content">
{if $content}{$content}{/if}
</div>
{include file="CoreHome/templates/piwik_tag.tpl"}
{literal}
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-13048050-1']);
_gaq.push(['_setDomainName', '.hawebs.net']);
_gaq.push(['_setLocalRemoteServerMode']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<!-- Piwik -->
<script type="text/javascript">
var pkBaseURL = (("https:" == document.location.protocol) ? "https://wa.hawebs.net/" : "http://wa.hawebs.net/");
document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
</script><script type="text/javascript">
try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 7);
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
} catch( err ) {}
</script><noscript><p><img src="http://wa.hawebs.net/piwik.php?idsite=7" style="border:0" alt="" /></p></noscript>
<!-- End Piwik Tag -->
{/literal}
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More