You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by gm...@apache.org on 2014/05/30 13:57:47 UTC

svn commit: r1598564 - in /roller/trunk/app/src/main: java/org/apache/roller/weblogger/pojos/ java/org/apache/roller/weblogger/ui/rendering/model/ java/org/apache/roller/weblogger/ui/struts2/editor/ resources/ resources/org/apache/roller/weblogger/conf...

Author: gmazza
Date: Fri May 30 11:57:47 2014
New Revision: 1598564

URL: http://svn.apache.org/r1598564
Log:
ROL-1999 Addition of fields for holding system- and blog-level analytics tracking codes (work in progress).

Modified:
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Weblog.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/rendering/model/ConfigModel.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfigBean.java
    roller/trunk/app/src/main/resources/ApplicationResources.properties
    roller/trunk/app/src/main/resources/org/apache/roller/weblogger/config/runtimeConfigDefs.xml
    roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/Weblog.orm.xml
    roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfig-validation.xml
    roller/trunk/app/src/main/resources/sql/500-to-510-migration.vm
    roller/trunk/app/src/main/resources/sql/createdb.vm
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/WeblogConfig.jsp

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Weblog.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Weblog.java?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Weblog.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Weblog.java Fri May 30 11:57:47 2014
@@ -89,6 +89,8 @@ public class Weblog implements Serializa
     private String  about            = null;
     private String  creator          = null;
 
+    private String  analyticsCode    = null;
+
     // Associated objects
     private WeblogCategory bloggerCategory = null;
 
@@ -685,7 +687,14 @@ public class Weblog implements Serializa
         this.iconPath = iconPath;
     }
 
-    
+    public String getAnalyticsCode() {
+        return analyticsCode;
+    }
+
+    public void setAnalyticsCode(String analyticsCode) {
+        this.analyticsCode = analyticsCode;
+    }
+
     /**
      * A description for the weblog (its purpose, authors, etc.)
      *

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/rendering/model/ConfigModel.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/rendering/model/ConfigModel.java?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/rendering/model/ConfigModel.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/rendering/model/ConfigModel.java Fri May 30 11:57:47 2014
@@ -64,7 +64,7 @@ public class ConfigModel implements Mode
     public String getRegistrationURL() {
         return getProperty("users.registration.url");
     }
-    
+
     public boolean getFeedHistoryEnabled() {
         return getBooleanProperty("site.newsfeeds.history.enabled");
     }
@@ -120,8 +120,15 @@ public class ConfigModel implements Mode
     public String getRollerBuildUser() {
         return WebloggerFactory.getWeblogger().getBuildUser();
     }
-    
-    
+
+    public String getDefaultAnalyticsTrackingCode() {
+        return getProperty("analytics.default.tracking.code");
+    }
+
+    public boolean getAnalyticsOverrideAllowed() {
+        return getBooleanProperty("analytics.code.override.allowed");
+    }
+
     private String getProperty(String name) {
         return WebloggerRuntimeConfig.getProperty(name);
     }

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfigBean.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfigBean.java?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfigBean.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfigBean.java Fri May 30 11:57:47 2014
@@ -51,6 +51,8 @@ public class WeblogConfigBean {
     private String pageModels = null;
     private String icon = null;
     private String about = null;
+
+    private String analyticsCode = null;
     
     private String bloggerCategoryId = null;
     private String[] defaultPluginsArray = null;
@@ -264,8 +266,15 @@ public class WeblogConfigBean {
     public void setActive(boolean active) {
         this.active = active;
     }
-    
-    
+
+    public String getAnalyticsCode() {
+        return analyticsCode;
+    }
+
+    public void setAnalyticsCode(String analyticsCode) {
+        this.analyticsCode = analyticsCode;
+    }
+
     public void copyFrom(Weblog dataHolder) {
         
         this.handle = dataHolder.getHandle();
@@ -290,6 +299,7 @@ public class WeblogConfigBean {
         this.enableMultiLang = dataHolder.isEnableMultiLang();
         this.showAllLangs = dataHolder.isShowAllLangs();
         this.pageModels = dataHolder.getPageModels();
+        this.analyticsCode = dataHolder.getAnalyticsCode();
         setIcon(dataHolder.getIconPath());
         setAbout(dataHolder.getAbout());
         if (dataHolder.getBloggerCategory() != null) {
@@ -325,6 +335,7 @@ public class WeblogConfigBean {
         dataHolder.setPageModels(this.pageModels);
         dataHolder.setIconPath(getIcon());
         dataHolder.setAbout(getAbout());
+        dataHolder.setAnalyticsCode(this.analyticsCode);
         
         dataHolder.setDefaultPlugins( StringUtils.join(this.defaultPluginsArray,",") );
         
@@ -333,4 +344,6 @@ public class WeblogConfigBean {
         dataHolder.setDefaultPlugins(StringUtils.join(this.defaultPluginsArray, ","));
     }
     
+
+
 }

Modified: roller/trunk/app/src/main/resources/ApplicationResources.properties
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/ApplicationResources.properties?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/ApplicationResources.properties (original)
+++ roller/trunk/app/src/main/resources/ApplicationResources.properties Fri May 30 11:57:47 2014
@@ -420,6 +420,10 @@ configForm.themeSettings=Theme Settings
 configForm.newUserThemes=Themes Directory
 configForm.allowCustomTheme=Allow Custom Themes?
 
+configForm.webAnalytics=Web Analytics
+configForm.defaultAnalyticsTrackingCode=Default tracking code
+configForm.allowAnalyticsCodeOverride=Allow individual blogs to override?
+
 configForm.save=Save
 configForm.rebuildIndex=Rebuild Search Index (All Users)
 
@@ -2325,6 +2329,7 @@ websiteSettings.bloggerApiCategory=Categ
 websiteSettings.formatting=Formatting
 websiteSettings.autoformat=Autoformat new entries?
 
+
 # --- Spam prevention
 
 websiteSettings.spamPrevention=Spam Prevention
@@ -2335,6 +2340,10 @@ websiteSettings.error.processingBlacklis
 websiteSettings.error.sameTemplate=CHANGES REJECTED: cannot set default page \
 template and day template to same template
 
+# --- web analytics
+
+websiteSettings.analyticsTrackingCode=Tracking code
+
 # --- Buttons
 
 websiteSettings.savedChanges=Saved changes to weblog settings
@@ -2373,6 +2382,7 @@ websiteSettings.label2=(applied in the l
 WeblogConfig.error.nameNull=Name is a required field
 WeblogConfig.error.nameSize=Name cannot be more than 255 characters
 WeblogConfig.error.descriptionSize=Description cannot be more than 255 characters
+WeblogConfig.error.analyticsCodeSize=Analytics tracking key(s) cannot be more than 1200 characters
 
 
 # ------------------------------------------------------------- Welcome new user

Modified: roller/trunk/app/src/main/resources/org/apache/roller/weblogger/config/runtimeConfigDefs.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/org/apache/roller/weblogger/config/runtimeConfigDefs.xml?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/org/apache/roller/weblogger/config/runtimeConfigDefs.xml (original)
+++ roller/trunk/app/src/main/resources/org/apache/roller/weblogger/config/runtimeConfigDefs.xml Fri May 30 11:57:47 2014
@@ -241,20 +241,33 @@
       </property-def>
       
    </display-group>
-   
-   
+
    <!-- Spam Prevention Settings Group -->
    <display-group name="spamSettings" key="websiteSettings.spamPrevention" >
    
       <property-def  name="spam.blacklist"  key="websiteSettings.ignoreUrls">
          <type>text</type>
-         <default-value></default-value>
+         <default-value/>
          <rows>7</rows>
          <cols>40</cols>
       </property-def>
 
    </display-group >
-   
+
+     <!-- Web Analytics (e.g., Google Analytics) Group -->
+     <display-group name="webAnalytics" key="configForm.webAnalytics">
+         <property-def  name="analytics.default.tracking.code"  key="configForm.defaultAnalyticsTrackingCode">
+             <type>text</type>
+             <default-value/>
+             <rows>10</rows>
+             <cols>70</cols>
+         </property-def>
+         <property-def  name="analytics.code.override.allowed"  key="configForm.allowAnalyticsCodeOverride">
+             <type>boolean</type>
+             <default-value>true</default-value>
+         </property-def>
+     </display-group>
+
  </config-def>
  
 </runtime-configs>

Modified: roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/Weblog.orm.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/Weblog.orm.xml?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/Weblog.orm.xml (original)
+++ roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/Weblog.orm.xml Fri May 30 11:57:47 2014
@@ -95,6 +95,9 @@
 			<basic name="blacklist">
 				<column name="blacklist" insertable="true" updatable="true" unique="false"/>
 			</basic>
+            <basic name="analyticsCode">
+                <column name="analyticscode" insertable="true" updatable="true" unique="false"/>
+            </basic>
 			<basic name="allowComments">
 				<column name="allowcomments" insertable="true" updatable="true" unique="false"/>
 			</basic>

Modified: roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfig-validation.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfig-validation.xml?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfig-validation.xml (original)
+++ roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/WeblogConfig-validation.xml Fri May 30 11:57:47 2014
@@ -20,5 +20,13 @@
             <message key="WeblogConfig.error.descriptionSize">unspecified key</message>
         </field-validator>
     </field>
-    
+
+    <field name="bean.analyticsCode">
+        <field-validator type="stringlength">
+            <param name="maxLength">1200</param>
+            <message key="WeblogConfig.error.analyticsCodeSize">unspecified key</message>
+        </field-validator>
+    </field>
+
+
 </validators>

Modified: roller/trunk/app/src/main/resources/sql/500-to-510-migration.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/500-to-510-migration.vm?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/sql/500-to-510-migration.vm (original)
+++ roller/trunk/app/src/main/resources/sql/500-to-510-migration.vm Fri May 30 11:57:47 2014
@@ -52,3 +52,6 @@ update roller_mediafiledir set name = #c
 update roller_mediafiledir set name = 'default' where name = 'root' and parentid is null;
 #dropColumn("roller_mediafiledir", "path")
 #dropColumn("roller_mediafiledir", "parentid")
+
+-- Adding blog-specific web analytics (e.g. Google Analytics) tracking code
+#addColumnNull("website" "analyticscode" $db.TEXT_SQL_TYPE)

Modified: roller/trunk/app/src/main/resources/sql/createdb.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/createdb.vm?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/sql/createdb.vm (original)
+++ roller/trunk/app/src/main/resources/sql/createdb.vm Fri May 30 11:57:47 2014
@@ -133,7 +133,8 @@ create table website (
     showalllangs      $db.BOOLEAN_SQL_TYPE_TRUE not null,
     customstylesheet  varchar(128),
     about             varchar(255),
-    icon              varchar(255)
+    icon              varchar(255),
+    analyticscode      $db.TEXT_SQL_TYPE
 );
 create index ws_isenabled_idx on website(isenabled);
 alter table website add constraint ws_handle_uq unique (handle$!db.INDEXSIZE);

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/WeblogConfig.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/WeblogConfig.jsp?rev=1598564&r1=1598563&r2=1598564&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/WeblogConfig.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/WeblogConfig.jsp Fri May 30 11:57:47 2014
@@ -235,6 +235,20 @@
         <td class="description"><%-- <s:text name="websiteSettings.tip." /> --%></td>
     </tr>
 
+
+    <%-- ***** Web analytics settings ***** --%>
+
+    <s:if test="getBooleanProp('analytics.code.override.allowed')">
+        <tr>
+            <td colspan="3"><h2><s:text name="configForm.webAnalytics" /></h2></td>
+        </tr>
+
+        <tr>
+            <td class="label"><s:text name="websiteSettings.analyticsTrackingCode" /></td>
+            <td class="field"><s:textarea name="bean.analyticsCode" rows="10" cols="70"/></td>
+        </tr>
+    </s:if>
+
     <%-- ***** Global admin only settings ***** --%>
     <s:if test="authenticatedUser.hasGlobalPermission('admin')">
         <tr>