Просмотр исходного кода

Merge branch 'master' of https://github.com/unaio/una

AntonLV 8 лет назад
Родитель
Сommit
833f3ea842

+ 5 - 4
modules/boonex/analytics/classes/BxAnalyticsModule.php

@@ -136,7 +136,7 @@ class BxAnalyticsModule extends BxDolModule
         header('Content-Type: application/json');
               
         $iDateFrom = strtotime($sDateFrom);
-        $iDateTo = strtotime($sDateTo);
+        $iDateTo = strtotime($sDateTo) + 86400;
         $sType = "bar";
         $bIsTimeX = false;
         $iMinValueY = 0;
@@ -187,12 +187,13 @@ class BxAnalyticsModule extends BxDolModule
                     for ($i = $iDateFrom; $i < $iDateTo ; $i = $i + 86400 ){
                         $sX = date('Y-m-d', $i);
                         if (!array_key_exists($sX, $aTmpDates)){
-                        array_push($aValues['values'][0]['data'], array('x' => $sX, 'y' => $sReportName == BX_ANALYTICS_CONTENT_TOTAL ? $iValuePrev : 0));
+                            array_push($aValues['values'][0]['data'], array('x' => $sX, 'y' => $sReportName == BX_ANALYTICS_CONTENT_TOTAL ? $iValuePrev : 0));
                         }
                         else{
-                            array_push($aValues['values'][0]['data'], array('x' => $sX, 'y' => $sReportName == BX_ANALYTICS_CONTENT_TOTAL ? $iValuePrev : $aTmpDates[$sX]));
+                            array_push($aValues['values'][0]['data'], array('x' => $sX, 'y' => $sReportName == BX_ANALYTICS_CONTENT_TOTAL ? ($iValuePrev + $aTmpDates[$sX]) : $aTmpDates[$sX]));
                             $iValuePrev += $aTmpDates[$sX];
                         }
+                        array_push($aValues['labels'], $sX);
                         if ($sReportName == BX_ANALYTICS_CONTENT_TOTAL){
                             if ($iValuePrev > $iMaxValueY)
                                 $iMaxValueY = $iValuePrev;
@@ -200,7 +201,7 @@ class BxAnalyticsModule extends BxDolModule
                         else{
                             if (array_key_exists($sX, $aTmpDates) && $aTmpDates[$sX] > $iMaxValueY)
                                 $iMaxValueY = $aTmpDates[$sX];
-                        }
+                        } 
                     }
                 }
                 break;

+ 2 - 2
modules/boonex/channels/install/sql/enable.sql

@@ -25,10 +25,10 @@ INSERT INTO `sys_options` (`name`, `value`, `category_id`, `caption`, `type`, `e
 -- PAGE: create profile
 
 INSERT INTO `sys_objects_page`(`object`, `uri`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`) VALUES 
-('bx_channels_create_profile', 'create-channel-profile', '_bx_channels_page_title_sys_create_profile', '_bx_channels_page_title_create_profile', 'bx_channels', 5, 2147483647, 1, 'page.php?i=create-channel-profile', '', '', '', 0, 1, 0, '', '');
+('bx_channels_create_profile', 'create-channel-profile', '_bx_channels_page_title_sys_create_profile', '_bx_channels_page_title_create_profile', 'bx_channels', 5, 128, 1, 'page.php?i=create-channel-profile', '', '', '', 0, 1, 0, '', '');
 
 INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `order`) VALUES 
-('bx_channels_create_profile', 1, 'bx_channels', '_bx_channels_page_block_title_create_profile', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:11:\"bx_channels\";s:6:\"method\";s:13:\"entity_create\";}', 0, 1, 1);
+('bx_channels_create_profile', 1, 'bx_channels', '_bx_channels_page_block_title_create_profile', 11, 128, 'service', 'a:2:{s:6:\"module\";s:11:\"bx_channels\";s:6:\"method\";s:13:\"entity_create\";}', 0, 1, 1);
 
 -- PAGE: view profile
 

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerAlertsResponse.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerConfig.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerDb.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerFormEntry.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerFormsEntryHelper.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerGridCampaigns.php

@@ -3,7 +3,7 @@
 * Copyright (c) UNA, Inc - https://una.io
 * MIT License - https://opensource.org/licenses/MIT
 *
-* @defgroup    Mass mailer
+* @defgroup    MassMailer Mass Mailer
 * @ingroup     UnaModules
 * 
 * @{

+ 8 - 5
modules/boonex/massmailer/classes/BxMassMailerModule.php

@@ -3,7 +3,7 @@
 * Copyright (c) UNA, Inc - https://una.io
 * MIT License - https://opensource.org/licenses/MIT
 *
-* @defgroup    Mass mailer
+* @defgroup    MassMailer Mass Mailer
 * @ingroup     UnaModules
 *
 * @{
@@ -526,10 +526,13 @@ class BxMassMailerModule extends BxBaseModGeneralModule
         $aTemplate['Subject'] = $aCampaign['subject'];
               
         $aCustomHeaders = array();
-        if ($aCampaign['from_name'] != '')
-            $aCustomHeaders['From'] = $aCampaign['from_name'] . " <" . getParam('site_email_notify') . ">" ;
-        if ($aCampaign['reply_to'] != '')
-            $aCustomHeaders['Reply-To'] = $aCampaign['reply_to'];
+        $sFrom = $aCampaign['from_name'] != '' ? $aCampaign['from_name'] : getParam('bx_massmailer_initial_from_email');
+        $aCustomHeaders['From'] = "=?UTF-8?B?" . base64_encode($sFrom) . "?= <" . getParam('site_email_notify') . ">" ;
+        if ($aCampaign['reply_to'] != ''){
+            $sFrom = $aCampaign['from_name'] != '' ? $aCampaign['from_name'] : getParam('site_title');
+            $aCustomHeaders['Reply-To'] = "=?UTF-8?B?" . base64_encode($sFrom) . '?= <' . bx_process_output($aCampaign['reply_to']) . '>';
+            $aCustomHeaders['X-Original-From'] = "=?UTF-8?B?" . base64_encode($sFrom) . '?= <' . bx_process_output($aCampaign['reply_to']) . '>';
+        }
               
         return array($aTemplate, $aCustomHeaders, $aCampaign);
     }

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerPageBrowse.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerPageEntry.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/classes/BxMassMailerTemplate.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/install/config.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/install/installer.php

@@ -3,7 +3,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 3 - 0
modules/boonex/massmailer/install/langs/en.xml

@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources name="en" flag="gb" title="English">
   <string name="_bx_massmailer"><![CDATA[Mass Mailer]]></string>
+  <string name="_bx_massmailer_adm_stg_cpt_type"><![CDATA[Mass Mailer]]></string>
+  <string name="_bx_massmailer_adm_stg_cpt_category_general"><![CDATA[General]]></string>
+  <string name="_bx_massmailer_initial_from_name"><![CDATA[Letter's header "From"]]></string>
   <string name="_bx_massmailer_page_title_sys_manage_campaigns"><![CDATA[Campaigns]]></string>
   <string name="_bx_massmailer_page_title_manage_campaigns"><![CDATA[Campaigns]]></string>
   <string name="_bx_massmailer_page_title_sys_manage_campaigns"><![CDATA[Campaigns]]></string>

+ 7 - 0
modules/boonex/massmailer/install/sql/disable.sql

@@ -1,5 +1,12 @@
 SET @sName = 'bx_massmailer';
 
+-- SETTINGS
+SET @iTypeId = (SELECT `ID` FROM `sys_options_types` WHERE `name` = @sName LIMIT 1);
+SET @iCategId = (SELECT `ID` FROM `sys_options_categories` WHERE `type_id` = @iTypeId LIMIT 1);
+DELETE FROM `sys_options` WHERE `category_id` = @iCategId;
+DELETE FROM `sys_options_categories` WHERE `type_id` = @iTypeId;
+DELETE FROM `sys_options_types` WHERE `id` = @iTypeId;
+
 -- PAGES
 DELETE FROM `sys_objects_page` WHERE `module` = @sName;
 DELETE FROM `sys_pages_blocks` WHERE `module` = @sName;

+ 15 - 0
modules/boonex/massmailer/install/sql/enable.sql

@@ -1,5 +1,20 @@
 SET @sName = 'bx_massmailer';
 
+-- SETTINGS
+SET @iTypeOrder = (SELECT IFNULL(MAX(`order`), 0) + 1 FROM `sys_options_types` WHERE `group` = 'modules');
+
+INSERT INTO `sys_options_types` (`group`, `name`, `caption`, `icon`, `order`) 
+VALUES('modules', @sName, '_bx_massmailer_adm_stg_cpt_type', 'bx_massmailer@modules/boonex/massmailer/|std-icon.svg', IF(ISNULL(@iTypeOrder), 1, @iTypeOrder + 1));
+
+SET @iTypeId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options_categories` (`type_id`, `name`, `caption`, `hidden`, `order`) VALUES(@iTypeId,  'bx_massmailer_general', '_bx_massmailer_adm_stg_cpt_category_general', 0, 1);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options` (`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_params`, `check_error`, `order`) VALUES
+(@iCategoryId, 'bx_massmailer_initial_from_email', '_bx_massmailer_initial_from_name', 'UNA Mass mailer', 'digit', '', '', '', '', 1);
+
+
 -- PAGE: create campaign
 INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `uri`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`) VALUES 
 ('bx_massmailer_create_campaign', '_bx_massmailer_page_title_sys_create_campaign', '_bx_massmailer_page_title_create_campaign', 'bx_massmailer', 7, 128, 1, 'create-campaign', 'page.php?i=create-campaign', '', '', '', 0, 1, 0, 'BxMassMailerPageBrowse', 'modules/boonex/massmailer/classes/BxMassMailerPageBrowse.php');

+ 2 - 2
modules/boonex/massmailer/install/sql/install.sql

@@ -85,8 +85,8 @@ INSERT INTO `sys_form_inputs` (`object`, `module`, `name`, `value`, `values`, `c
 (@sName, @sName, 'title', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_title', '_bx_massmailer_form_campaign_input_title', '', 1, 0, 0, 2, '', '', '', 'Avail', '', '_bx_massmailer_form_campaign_input_title_err', 'XssHtml', '', 1, 0),
 (@sName, @sName, 'segments', '', '', 0, 'select', '_bx_massmailer_form_campaign_input_sys_segments', '_bx_massmailer_form_campaign_input_segments', '', 1, 0, 0, 2, '', '', '', 'Avail', '', '_bx_massmailer_form_campaign_input_segments_err', 'XssHtml', '', 1, 0),
 (@sName, @sName, 'subject', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_subject', '_bx_massmailer_form_campaign_input_subject', '', 1, 0, 0, 2, '', '', '', 'Avail', '', '_bx_massmailer_form_campaign_input_subject_err', 'XssHtml', '', 1, 0),
-(@sName, @sName, 'from_name', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_from_name', '_bx_massmailer_form_campaign_input_from_name', '_bx_massmailer_form_campaign_input_from_name_info', 1, 0, 0, 2, '', '', '', '', '', '', 'XssHtml', '', 1, 0),
-(@sName, @sName, 'reply_to', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_reply_to', '_bx_massmailer_form_campaign_input_reply_to', '_bx_massmailer_form_campaign_input_reply_to_info', 1, 0, 0, 2, '', '', '', 'EmailOrEmpty', '', '_bx_massmailer_form_campaign_input_reply_to_err', 'XssHtml', '', 1, 0),
+(@sName, @sName, 'from_name', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_from_name', '_bx_massmailer_form_campaign_input_from_name', '_bx_massmailer_form_campaign_input_from_name_info', 0, 0, 0, 2, '', '', '', '', '', '', 'XssHtml', '', 1, 0),
+(@sName, @sName, 'reply_to', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_reply_to', '_bx_massmailer_form_campaign_input_reply_to', '_bx_massmailer_form_campaign_input_reply_to_info', 0, 0, 0, 2, '', '', '', 'EmailOrEmpty', '', '_bx_massmailer_form_campaign_input_reply_to_err', 'XssHtml', '', 1, 0),
 (@sName, @sName, 'body', '', '', 0, 'textarea', '_bx_massmailer_form_campaign_input_sys_body', '_bx_massmailer_form_campaign_input_body', '', 1, 0, 0, 2, '', '', '', 'Avail', '', '_bx_massmailer_form_campaign_input_body_err', 'XssHtml', '', 1, 0),
 (@sName, @sName, 'email', '', '', 0, 'text', '_bx_massmailer_form_campaign_input_sys_test_email', '_bx_massmailer_form_campaign_input_email', '', 1, 0, 0, 2, '', '', '', 'Email', '', '_sys_form_account_input_email_error', 'XssHtml', '', 1, 0),
 (@sName, @sName, 'campaign_info', '_bx_massmailer_form_campaign_input_from_name_info_value', '', 0, 'value', '_bx_massmailer_form_campaign_input_sys_campaign_info', '', '', 0, 0, 0, 2, '', '', '', '', '', '', 'XssHtml', '', 1, 0),

+ 1 - 1
modules/boonex/massmailer/js/chart.js

@@ -2,7 +2,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/js/manage_tools.js

@@ -2,7 +2,7 @@
  * Copyright (c) UNA, Inc - https://una.io
  * MIT License - https://opensource.org/licenses/MIT
  *
- * @defgroup    Mass mailer
+ * @defgroup    MassMailer Mass Mailer
  * @ingroup     UnaModules
  *
  * @{

+ 1 - 1
modules/boonex/massmailer/request.php

@@ -3,7 +3,7 @@
 * Copyright (c) UNA, Inc - https://una.io
 * MIT License - https://opensource.org/licenses/MIT
 *
-* @defgroup    Mass mailer
+* @defgroup    MassMailer Mass Mailer
 * @ingroup     UnaModules
 *
 * @{

+ 17 - 0
modules/boonex/massmailer/template/subscribers_info.html

@@ -0,0 +1,17 @@
+<div id="bx_massmailer_chart_container">
+    <div class="bx_massmailer_filters">
+        <select class="bx-def-font-inputs bx-form-input-select bx_massmailer_segments_selector">
+            <bx_repeat:items>
+                <option value="__value__">__title__</option>
+            </bx_repeat:items>
+        </select>
+        <select class="bx-def-font-inputs bx-form-input-select bx_massmailer_report_selector">
+            <option value="content_total">__title_content_total__</option>
+            <option value="content_speed">__title_content_speed__</option>
+        </select>
+        <input type="text" class="bx-def-font-inputs bx-form-input-select bx_massmailer_date_picker" value="__interval__" />
+    </div>
+    <div class="bx_massmailer_chart_cnt bx-def-margin-top">
+        <canvas class="bx_massmailer_chart"></canvas>
+    </div>
+</div>