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/07/14 22:22:01 UTC

svn commit: r1610513 - in /roller/trunk/app/src/main: java/org/apache/roller/weblogger/business/themes/ java/org/apache/roller/weblogger/pojos/ java/org/apache/roller/weblogger/pojos/wrapper/ java/org/apache/roller/weblogger/ui/struts2/editor/ resource...

Author: gmazza
Date: Mon Jul 14 20:22:00 2014
New Revision: 1610513

URL: http://svn.apache.org/r1610513
Log:
ROL-2038 only dual themes have two tabs for mobile and standard, all others just standard.

Modified:
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/SharedThemeFromDir.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadata.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadataParser.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/WeblogCustomTheme.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Theme.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogWrapper.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/StylesheetEdit.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Templates.java
    roller/trunk/app/src/main/resources/sql/createdb.vm
    roller/trunk/app/src/main/resources/sql/droptables.sql
    roller/trunk/app/src/main/resources/sql/macros.vm
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/StylesheetEdit.jsp
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/TemplateEdit.jsp
    roller/trunk/app/src/main/webapp/themes/basicmobile/theme.xml

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/SharedThemeFromDir.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/SharedThemeFromDir.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/SharedThemeFromDir.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/SharedThemeFromDir.java Mon Jul 14 20:22:00 2014
@@ -205,10 +205,12 @@ public class SharedThemeFromDir extends 
                     themeMetadata.getPreviewImage(), previewFile);
         }
 
-        // avaialble types in the Roller
+        // available types with Roller
         List<String> availableTypesList = new ArrayList<String>();
         availableTypesList.add("standard");
-        availableTypesList.add("mobile");
+        if (themeMetadata.getDualTheme()) {
+            availableTypesList.add("mobile");
+        }
 
         // load stylesheet if possible
         if (themeMetadata.getStylesheet() != null) {
@@ -225,8 +227,8 @@ public class SharedThemeFromDir extends 
             if (standardTemplateCode == null && mobileTemplateCode == null) {
                 throw new ThemeInitializationException(
                         "Error in getting template codes for template");
-            } else if (mobileTemplateCode == null) {
-                // cloning the standard template code if no mobile is present
+            } else if (mobileTemplateCode == null && themeMetadata.getDualTheme()) {
+                // clone the standard template code if no mobile is present
                 mobileTemplateCode = new ThemeMetadataTemplateCode();
                 mobileTemplateCode.setContentsFile(standardTemplateCode
                         .getContentsFile());
@@ -330,7 +332,7 @@ public class SharedThemeFromDir extends 
             if (standardTemplateCode == null && mobileTemplateCode == null) {
                 throw new ThemeInitializationException(
                         "Error in getting template codes for template");
-            } else if (mobileTemplateCode == null) {
+            } else if (mobileTemplateCode == null && themeMetadata.getDualTheme()) {
                 // cloning the standard template code if no mobile is present
                 mobileTemplateCode = new ThemeMetadataTemplateCode();
                 mobileTemplateCode.setContentsFile(standardTemplateCode

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java Mon Jul 14 20:22:00 2014
@@ -58,7 +58,7 @@ import org.apache.roller.weblogger.util.
  * Base implementation of a ThemeManager.
  * 
  * This particular implementation reads theme data off the filesystem and
- * assumes that those themes are not changable at runtime.
+ * assumes that those themes are not changeable at runtime.
  */
 @com.google.inject.Singleton
 public class ThemeManagerImpl implements ThemeManager {

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadata.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadata.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadata.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadata.java Mon Jul 14 20:22:00 2014
@@ -31,6 +31,7 @@ public class ThemeMetadata {
     private String description = null;
     private String author = null;
     private String previewImage = null;
+    private Boolean dualTheme = false;
     private ThemeMetadataTemplate stylesheet = null;
     private Set<ThemeMetadataTemplate> templates = new HashSet<ThemeMetadataTemplate>();
     private Set<String> resources = new HashSet<String>();
@@ -110,4 +111,11 @@ public class ThemeMetadata {
         this.stylesheet = stylesheet;
     }
 
+    public Boolean getDualTheme() {
+        return dualTheme;
+    }
+
+    public void setDualTheme(Boolean dualTheme) {
+        this.dualTheme = dualTheme;
+    }
 }

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadataParser.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadataParser.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadataParser.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/ThemeMetadataParser.java Mon Jul 14 20:22:00 2014
@@ -60,6 +60,9 @@ public class ThemeMetadataParser {
         theme.setDescription(root.getChildText("description"));
         theme.setAuthor(root.getChildText("author"));
 
+        // dual-theme (standard & mobile) or one-theme-fits-all?
+        theme.setDualTheme("true".equalsIgnoreCase(root.getChildText("dualTheme")));
+
         // if either id or name is null then throw a parsing exception
         if(StringUtils.isEmpty(theme.getId()) || StringUtils.isEmpty(theme.getName())) {
             throw new ThemeParsingException("'id' and 'name' are required theme elements");

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/WeblogCustomTheme.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/WeblogCustomTheme.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/WeblogCustomTheme.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/themes/WeblogCustomTheme.java Mon Jul 14 20:22:00 2014
@@ -72,7 +72,7 @@ public class WeblogCustomTheme extends W
     /**
      * Get the collection of all templates associated with this Theme.
      */
-    public List getTemplates() throws WebloggerException {
+    public List<? extends ThemeTemplate> getTemplates() throws WebloggerException {
         return WebloggerFactory.getWeblogger().getWeblogManager().getPages(this.weblog);
     }
     

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Theme.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Theme.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Theme.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/Theme.java Mon Jul 14 20:22:00 2014
@@ -62,7 +62,7 @@ public interface Theme {
     /**
      * Get the list of all templates associated with this Theme.
      */
-    List<ThemeTemplate> getTemplates() throws WebloggerException;
+    List<? extends ThemeTemplate> getTemplates() throws WebloggerException;
     
     
     /**

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogWrapper.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogWrapper.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogWrapper.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogWrapper.java Mon Jul 14 20:22:00 2014
@@ -80,7 +80,7 @@ public final class WeblogWrapper {
     
     
     public List<ThemeTemplateWrapper> getPages() throws WebloggerException {
-        List<ThemeTemplate> unwrapped = this.pojo.getTheme().getTemplates();
+        List<? extends ThemeTemplate> unwrapped = this.pojo.getTheme().getTemplates();
         List<ThemeTemplateWrapper> wrapped = new ArrayList<ThemeTemplateWrapper>(unwrapped.size());
 
         int i = 0;

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/StylesheetEdit.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/StylesheetEdit.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/StylesheetEdit.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/StylesheetEdit.java Mon Jul 14 20:22:00 2014
@@ -112,26 +112,25 @@ public class StylesheetEdit extends UIAc
                             .getContents());
                     standardTemplateCode.setTemplateLanguage(stylesheetTmpl
                             .getTemplateLanguage());
-
-                    TemplateCode tCode = stylesheet
-                            .getTemplateCode(MOBILE_THEME_TYPE);
-
-                    WeblogThemeTemplateCode mobileTemplateCode = new WeblogThemeTemplateCode(
-                            stylesheetTmpl.getId(), MOBILE_THEME_TYPE);
-                    mobileTemplateCode.setTemplate(tCode.getTemplate());
-                    mobileTemplateCode.setTemplateLanguage(tCode
-                            .getTemplateLanguage());
-
                     WebloggerFactory.getWeblogger().getWeblogManager()
                             .saveTemplateCode(standardTemplateCode);
-                    WebloggerFactory.getWeblogger().getWeblogManager()
-                            .saveTemplateCode(mobileTemplateCode);
+
+                    TemplateCode tCode = stylesheet.getTemplateCode(MOBILE_THEME_TYPE);
+                    if (tCode != null) {
+                        WeblogThemeTemplateCode mobileTemplateCode = new WeblogThemeTemplateCode(
+                                stylesheetTmpl.getId(), MOBILE_THEME_TYPE);
+                        mobileTemplateCode.setTemplate(tCode.getTemplate());
+                        mobileTemplateCode.setTemplateLanguage(tCode
+                                .getTemplateLanguage());
+                        WebloggerFactory.getWeblogger().getWeblogManager()
+                                .saveTemplateCode(mobileTemplateCode);
+                    }
 
                     WebloggerFactory.getWeblogger().getWeblogManager()
                             .savePage(stylesheetTmpl);
+                    setTemplate(stylesheetTmpl);
                     WebloggerFactory.getWeblogger().flush();
 
-                    setTemplate(stylesheetTmpl);
 
                     // success message
                     addMessage("stylesheetEdit.create.success");
@@ -234,11 +233,6 @@ public class StylesheetEdit extends UIAc
                     WeblogThemeTemplateCode tc = stylesheet
                             .getTemplateCode(MOBILE_THEME_TYPE);
                     tc.setTemplate(getContentsMobile());
-                } else {
-                    WeblogThemeTemplateCode tc = new WeblogThemeTemplateCode(
-                            stylesheet.getId(), MOBILE_THEME_TYPE);
-                    // empty, we've got no default mobile template
-                    tc.setTemplate("");
                     WebloggerFactory.getWeblogger().getWeblogManager()
                             .saveTemplateCode(tc);
                 }

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java Mon Jul 14 20:22:00 2014
@@ -167,11 +167,6 @@ public class TemplateEditBean {
         if (dataHolder.getTemplateCode("mobile") != null) {
             WeblogThemeTemplateCode tc = dataHolder.getTemplateCode("mobile");
             tc.setTemplate(contentsMobile);
-        } else {
-            WeblogThemeTemplateCode tc = new WeblogThemeTemplateCode(dataHolder.getId(), "mobile");
-            // empty, we've got no default mobile template
-            tc.setTemplate("");
-            WebloggerFactory.getWeblogger().getWeblogManager().saveTemplateCode(tc);
         }
 
         // the rest of the template properties can only be modified when

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Templates.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Templates.java?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Templates.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Templates.java Mon Jul 14 20:22:00 2014
@@ -175,19 +175,19 @@ public class Templates extends UIAction 
                 // Create weblog template codes for available types.
                 WeblogThemeTemplateCode standardTemplCode = new WeblogThemeTemplateCode(
                         newTemplate.getId(), "standard");
-                WeblogThemeTemplateCode mobileTemplCode = new WeblogThemeTemplateCode(
-                        newTemplate.getId(), "mobile");
-
                 standardTemplCode.setTemplate(newTemplate.getContents());
                 standardTemplCode.setTemplateLanguage("velocity");
+                WebloggerFactory.getWeblogger().getWeblogManager()
+                        .saveTemplateCode(standardTemplCode);
 
+                /* TBI -- need a way for user to specify dual or single template
+                WeblogThemeTemplateCode mobileTemplCode = new WeblogThemeTemplateCode(
+                        newTemplate.getId(), "mobile");
                 mobileTemplCode.setTemplate(newTemplate.getContents());
                 mobileTemplCode.setTemplateLanguage("velocity");
-
-                WebloggerFactory.getWeblogger().getWeblogManager()
-                        .saveTemplateCode(standardTemplCode);
                 WebloggerFactory.getWeblogger().getWeblogManager()
                         .saveTemplateCode(mobileTemplCode);
+                */
 
                 // if this person happened to create a Weblog template from
                 // scratch then make sure and set the defaultPageId. What does

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=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/sql/createdb.vm (original)
+++ roller/trunk/app/src/main/resources/sql/createdb.vm Mon Jul 14 20:22:00 2014
@@ -531,13 +531,6 @@ alter table autoping add constraint ap_w
 alter table autoping add constraint ap_pingtargetid_fk
     foreign key (pingtargetid) references pingtarget(id) $!db.ADDL_FK_PARAMS ;
 
-
--- THE FOLLOWING CONSTRAINTS CAN NOT BE SUPPORTED FOR IMPORTING new-user.xml
--- alter table website add constraint website_defaultpageid_fk foreign key ( defaultpageid ) references webpage ( id );
--- alter table website add constraint website_weblogdayid_fk foreign key ( weblogdayid ) references webpage ( id );
--- alter table webpage add constraint webpage_websiteid_fk foreign key ( websiteid ) references website( id );
-
-
 -- oauth indexes
 
 create index oc_username_idx  on roller_oauthconsumer( username$!db.INDEXSIZE );

Modified: roller/trunk/app/src/main/resources/sql/droptables.sql
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/droptables.sql?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/sql/droptables.sql (original)
+++ roller/trunk/app/src/main/resources/sql/droptables.sql Mon Jul 14 20:22:00 2014
@@ -50,7 +50,6 @@ drop table entryattribute;
 drop table weblogentry;
 drop table weblogcategory;
 drop table webpage;
-drop table roller_weblogtheme;
 drop table roller_templatecode;
 
 -- core platform tables

Modified: roller/trunk/app/src/main/resources/sql/macros.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/sql/macros.vm (original)
+++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14 20:22:00 2014
@@ -82,6 +82,20 @@ Define non-null column with default valu
 #end
 #end
 
+#**
+Rename a table.
+For Derby, will not work if there is a view or foreign key that references the table.
+MySQL requires sp_rename command; unsure if works.
+**#
+#macro(renameTable $oldTableName $newTableName)
+#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
+alter table $oldTableName rename to $newTableName;
+#elseif ($db.DBTYPE == 'MYSQL')
+sp_rename '$oldTableName', '$newTableName';
+#else
+rename table $oldTableName TO $newTableName;
+#end
+#end
 
 #**
 Macro to account for lack of comparable long varchar in MySQL

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/StylesheetEdit.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/StylesheetEdit.jsp?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/StylesheetEdit.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/StylesheetEdit.jsp Mon Jul 14 20:22:00 2014
@@ -66,15 +66,19 @@
     <div id="template-code-tabs">
     <ul>
         <li class="selected"><a href="#tabStandard"><em>Standard</em></a></li>
-        <li><a href="#tabMobile"><em>Mobile</em></a></li>
-    </ul>            
+        <s:if test="contentsMobile != null">
+            <li><a href="#tabMobile"><em>Mobile</em></a></li>
+        </s:if>
+    </ul>
     <div>
         <div id="tabStandard">
             <s:textarea name="contentsStandard" cols="80" rows="30" cssStyle="width:100%" />
         </div>
-        <div id="tabMobile">
-            <s:textarea name="contentsMobile" cols="80" rows="30" cssStyle="width:100%" />
-        </div>
+        <s:if test="contentsMobile != null">
+            <div id="tabMobile">
+                <s:textarea name="contentsMobile" cols="80" rows="30" cssStyle="width:100%" />
+            </div>
+        </s:if>
     </div>
     </div>
     

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/TemplateEdit.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/TemplateEdit.jsp?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/TemplateEdit.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/TemplateEdit.jsp Mon Jul 14 20:22:00 2014
@@ -101,16 +101,19 @@
     <div id="template-code-tabs">
     <ul>
         <li class="selected"><a href="#tabStandard"><em>Standard</em></a></li>
-        <li><a href="#tabMobile"><em>Mobile</em></a></li>
-    </ul>            
+        <s:if test="bean.contentsMobile != null">
+            <li><a href="#tabMobile"><em>Mobile</em></a></li>
+        </s:if>
+    </ul>
     <div>
         <div id="tabStandard">
             <s:textarea name="bean.contentsStandard" cols="80" rows="30" cssStyle="width:100%" />
-
-        </div>
-        <div id="tabMobile">
-            <s:textarea name="bean.contentsMobile" cols="80" rows="30" cssStyle="width:100%" />
         </div>
+        <s:if test="bean.contentsMobile != null">
+            <div id="tabMobile">
+                <s:textarea name="bean.contentsMobile" cols="80" rows="30" cssStyle="width:100%" />
+            </div>
+        </s:if>
     </div>
     </div>
 

Modified: roller/trunk/app/src/main/webapp/themes/basicmobile/theme.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/themes/basicmobile/theme.xml?rev=1610513&r1=1610512&r2=1610513&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/themes/basicmobile/theme.xml (original)
+++ roller/trunk/app/src/main/webapp/themes/basicmobile/theme.xml Mon Jul 14 20:22:00 2014
@@ -5,7 +5,9 @@
     <name>Basic Mobile</name>
     <description>Offers wide margins for blogging programming language source code and a separate button for mobile viewing.</description>
     <author>Roller Weblogger</author>
-    <multiLayout>true</multiLayout>
+    <!-- dualTheme: Maintain separate mobile & standard templates and stylesheets, default false,
+         not needed with responsive themes or where multi-device support is not a concern. -->
+    <dualTheme>true</dualTheme>
     
     <!-- theme preview image -->
     <preview-image path="basic-preview.png" />



Re: svn commit: r1610513 - in /roller/trunk/app/src/main: java/org/apache/roller/weblogger/business/themes/ java/org/apache/roller/weblogger/pojos/ java/org/apache/roller/weblogger/pojos/wrapper/ java/org/apache/roller/weblogger/ui/struts2/editor/ resource...

Posted by Glen Mazza <gl...@gmail.com>.
Indeed, my bad, that's for MS SQL Server (I'm unsure that will work even 
for it, because sp_rename isn't standard SQL.)

Glen

On 07/20/2014 04:28 PM, Dave wrote:
> On Mon, Jul 14, 2014 at 4:22 PM, <gm...@apache.org> wrote:
>
>
>> Modified: roller/trunk/app/src/main/resources/sql/macros.vm
>> URL:
>> http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
>>
>> ==============================================================================
>> --- roller/trunk/app/src/main/resources/sql/macros.vm (original)
>> +++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14 20:22:00
>> 2014
>> @@ -82,6 +82,20 @@ Define non-null column with default valu
>>   #end
>>   #end
>>
>> +#**
>> +Rename a table.
>> +For Derby, will not work if there is a view or foreign key that
>> references the table.
>> +MySQL requires sp_rename command; unsure if works.
>> +**#
>> +#macro(renameTable $oldTableName $newTableName)
>> +#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
>> +alter table $oldTableName rename to $newTableName;
>> +#elseif ($db.DBTYPE == 'MYSQL')
>> +sp_rename '$oldTableName', '$newTableName';
>> +#else
>> +rename table $oldTableName TO $newTableName;
>> +#end
>> +#end
>>
>
> Hi Glenn,
>
> The correct syntax for MySQL is "rename table a to b" and not sp_rename.
>
> Did you mean to use sp_rename for MS SQL Server instead?
>
> - Dave
>


Re: WEBSITE --> WEBLOG? (Was Re: svn commit: r1610513...)

Posted by Glen Mazza <gl...@gmail.com>.
Yes, I blogged about that for others as well: 
http://rollerweblogger.org/project/entry/upgrading_roller_5_1_snapshot 
-- via Google searches I know a few others are on 5.1-SNAPSHOT.

Glen

On 07/21/2014 06:10 PM, Dave wrote:
> Oh, and I should mention that I ran the migration against my site (
> rollerweblogger.org) and had to make a series of fixes to get it to run
> without errors. Most of those were due to my site having an early version
> of 5.1 installed, and the fact that my site is the oldest Roller site in
> existence. I did make a commit to remove some "drop index" for indexes that
> do not exist in my site, and therefore may not exist in other older Roller
> sites; also, that MS SQL Server issue.
>
> I still have not upgraded rollerweblogger.org to the latest 5.1. I'll
> probably get to that this weekend.
>
> Also, I tested against the blogs.apache.org database and there were no
> errors there.
>
> - Dave
>
>
>
> On Mon, Jul 21, 2014 at 6:05 PM, Dave <sn...@gmail.com> wrote:
>
>> Sure, please go ahead. I'm setup to run the tests again with ease.
>>
>> - Dave
>>
>>
>>
>> On Mon, Jul 21, 2014 at 5:55 PM, Glen Mazza <gl...@gmail.com> wrote:
>>
>>> Hi Dave, I realize you may have finished your Apache blog migration
>>> tests, but before you update the team blog, could you tolerate one more
>>> minor DB change -- I'd like to rename WEBSITE to WEBLOG, as mentioned
>>> earlier.  It's a one-line statement in the upgrade script. The Derby folks
>>> are making good progress on fixing their renaming issue (
>>> https://issues.apache.org/jira/browse/DERBY-6672), but for the time
>>> being I'll mention on the team blog that automated upgrading for Derby
>>> users may not be possible due to this issue until the next release of Derby
>>> is out, that if Derby users have just a few blog entries they may wish to
>>> start with a fresh installation and manually copy the old blog entries
>>> over.  Derby users generally don't have tons of blog entries, I'd rather
>>> have a clearer data model for 100% even if it means a little bit more work
>>> for some upgraders.
>>>
>>> Thanks,
>>> Glen
>>>
>>>
>>> On 07/20/2014 04:28 PM, Dave wrote:
>>>
>>>> On Mon, Jul 14, 2014 at 4:22 PM, <gm...@apache.org> wrote:
>>>>
>>>>
>>>>   Modified: roller/trunk/app/src/main/resources/sql/macros.vm
>>>>> URL:
>>>>> http://svn.apache.org/viewvc/roller/trunk/app/src/main/
>>>>> resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
>>>>>
>>>>> ============================================================
>>>>> ==================
>>>>> --- roller/trunk/app/src/main/resources/sql/macros.vm (original)
>>>>> +++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14
>>>>> 20:22:00
>>>>> 2014
>>>>> @@ -82,6 +82,20 @@ Define non-null column with default valu
>>>>>    #end
>>>>>    #end
>>>>>
>>>>> +#**
>>>>> +Rename a table.
>>>>> +For Derby, will not work if there is a view or foreign key that
>>>>> references the table.
>>>>> +MySQL requires sp_rename command; unsure if works.
>>>>> +**#
>>>>> +#macro(renameTable $oldTableName $newTableName)
>>>>> +#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
>>>>> +alter table $oldTableName rename to $newTableName;
>>>>> +#elseif ($db.DBTYPE == 'MYSQL')
>>>>> +sp_rename '$oldTableName', '$newTableName';
>>>>> +#else
>>>>> +rename table $oldTableName TO $newTableName;
>>>>> +#end
>>>>> +#end
>>>>>
>>>>>
>>>> Hi Glenn,
>>>>
>>>> The correct syntax for MySQL is "rename table a to b" and not sp_rename.
>>>>
>>>> Did you mean to use sp_rename for MS SQL Server instead?
>>>>
>>>> - Dave
>>>>
>>>>


Re: WEBSITE --> WEBLOG? (Was Re: svn commit: r1610513...)

Posted by Dave <sn...@gmail.com>.
Oh, and I should mention that I ran the migration against my site (
rollerweblogger.org) and had to make a series of fixes to get it to run
without errors. Most of those were due to my site having an early version
of 5.1 installed, and the fact that my site is the oldest Roller site in
existence. I did make a commit to remove some "drop index" for indexes that
do not exist in my site, and therefore may not exist in other older Roller
sites; also, that MS SQL Server issue.

I still have not upgraded rollerweblogger.org to the latest 5.1. I'll
probably get to that this weekend.

Also, I tested against the blogs.apache.org database and there were no
errors there.

- Dave



On Mon, Jul 21, 2014 at 6:05 PM, Dave <sn...@gmail.com> wrote:

> Sure, please go ahead. I'm setup to run the tests again with ease.
>
> - Dave
>
>
>
> On Mon, Jul 21, 2014 at 5:55 PM, Glen Mazza <gl...@gmail.com> wrote:
>
>> Hi Dave, I realize you may have finished your Apache blog migration
>> tests, but before you update the team blog, could you tolerate one more
>> minor DB change -- I'd like to rename WEBSITE to WEBLOG, as mentioned
>> earlier.  It's a one-line statement in the upgrade script. The Derby folks
>> are making good progress on fixing their renaming issue (
>> https://issues.apache.org/jira/browse/DERBY-6672), but for the time
>> being I'll mention on the team blog that automated upgrading for Derby
>> users may not be possible due to this issue until the next release of Derby
>> is out, that if Derby users have just a few blog entries they may wish to
>> start with a fresh installation and manually copy the old blog entries
>> over.  Derby users generally don't have tons of blog entries, I'd rather
>> have a clearer data model for 100% even if it means a little bit more work
>> for some upgraders.
>>
>> Thanks,
>> Glen
>>
>>
>> On 07/20/2014 04:28 PM, Dave wrote:
>>
>>> On Mon, Jul 14, 2014 at 4:22 PM, <gm...@apache.org> wrote:
>>>
>>>
>>>  Modified: roller/trunk/app/src/main/resources/sql/macros.vm
>>>> URL:
>>>> http://svn.apache.org/viewvc/roller/trunk/app/src/main/
>>>> resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
>>>>
>>>> ============================================================
>>>> ==================
>>>> --- roller/trunk/app/src/main/resources/sql/macros.vm (original)
>>>> +++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14
>>>> 20:22:00
>>>> 2014
>>>> @@ -82,6 +82,20 @@ Define non-null column with default valu
>>>>   #end
>>>>   #end
>>>>
>>>> +#**
>>>> +Rename a table.
>>>> +For Derby, will not work if there is a view or foreign key that
>>>> references the table.
>>>> +MySQL requires sp_rename command; unsure if works.
>>>> +**#
>>>> +#macro(renameTable $oldTableName $newTableName)
>>>> +#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
>>>> +alter table $oldTableName rename to $newTableName;
>>>> +#elseif ($db.DBTYPE == 'MYSQL')
>>>> +sp_rename '$oldTableName', '$newTableName';
>>>> +#else
>>>> +rename table $oldTableName TO $newTableName;
>>>> +#end
>>>> +#end
>>>>
>>>>
>>> Hi Glenn,
>>>
>>> The correct syntax for MySQL is "rename table a to b" and not sp_rename.
>>>
>>> Did you mean to use sp_rename for MS SQL Server instead?
>>>
>>> - Dave
>>>
>>>
>>
>

Re: WEBSITE --> WEBLOG? (Was Re: svn commit: r1610513...)

Posted by Dave <sn...@gmail.com>.
Sure, please go ahead. I'm setup to run the tests again with ease.

- Dave



On Mon, Jul 21, 2014 at 5:55 PM, Glen Mazza <gl...@gmail.com> wrote:

> Hi Dave, I realize you may have finished your Apache blog migration tests,
> but before you update the team blog, could you tolerate one more minor DB
> change -- I'd like to rename WEBSITE to WEBLOG, as mentioned earlier.  It's
> a one-line statement in the upgrade script. The Derby folks are making good
> progress on fixing their renaming issue (https://issues.apache.org/
> jira/browse/DERBY-6672), but for the time being I'll mention on the team
> blog that automated upgrading for Derby users may not be possible due to
> this issue until the next release of Derby is out, that if Derby users have
> just a few blog entries they may wish to start with a fresh installation
> and manually copy the old blog entries over.  Derby users generally don't
> have tons of blog entries, I'd rather have a clearer data model for 100%
> even if it means a little bit more work for some upgraders.
>
> Thanks,
> Glen
>
>
> On 07/20/2014 04:28 PM, Dave wrote:
>
>> On Mon, Jul 14, 2014 at 4:22 PM, <gm...@apache.org> wrote:
>>
>>
>>  Modified: roller/trunk/app/src/main/resources/sql/macros.vm
>>> URL:
>>> http://svn.apache.org/viewvc/roller/trunk/app/src/main/
>>> resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
>>>
>>> ============================================================
>>> ==================
>>> --- roller/trunk/app/src/main/resources/sql/macros.vm (original)
>>> +++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14
>>> 20:22:00
>>> 2014
>>> @@ -82,6 +82,20 @@ Define non-null column with default valu
>>>   #end
>>>   #end
>>>
>>> +#**
>>> +Rename a table.
>>> +For Derby, will not work if there is a view or foreign key that
>>> references the table.
>>> +MySQL requires sp_rename command; unsure if works.
>>> +**#
>>> +#macro(renameTable $oldTableName $newTableName)
>>> +#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
>>> +alter table $oldTableName rename to $newTableName;
>>> +#elseif ($db.DBTYPE == 'MYSQL')
>>> +sp_rename '$oldTableName', '$newTableName';
>>> +#else
>>> +rename table $oldTableName TO $newTableName;
>>> +#end
>>> +#end
>>>
>>>
>> Hi Glenn,
>>
>> The correct syntax for MySQL is "rename table a to b" and not sp_rename.
>>
>> Did you mean to use sp_rename for MS SQL Server instead?
>>
>> - Dave
>>
>>
>

WEBSITE --> WEBLOG? (Was Re: svn commit: r1610513...)

Posted by Glen Mazza <gl...@gmail.com>.
Hi Dave, I realize you may have finished your Apache blog migration 
tests, but before you update the team blog, could you tolerate one more 
minor DB change -- I'd like to rename WEBSITE to WEBLOG, as mentioned 
earlier.  It's a one-line statement in the upgrade script. The Derby 
folks are making good progress on fixing their renaming issue 
(https://issues.apache.org/jira/browse/DERBY-6672), but for the time 
being I'll mention on the team blog that automated upgrading for Derby 
users may not be possible due to this issue until the next release of 
Derby is out, that if Derby users have just a few blog entries they may 
wish to start with a fresh installation and manually copy the old blog 
entries over.  Derby users generally don't have tons of blog entries, 
I'd rather have a clearer data model for 100% even if it means a little 
bit more work for some upgraders.

Thanks,
Glen


On 07/20/2014 04:28 PM, Dave wrote:
> On Mon, Jul 14, 2014 at 4:22 PM, <gm...@apache.org> wrote:
>
>
>> Modified: roller/trunk/app/src/main/resources/sql/macros.vm
>> URL:
>> http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
>>
>> ==============================================================================
>> --- roller/trunk/app/src/main/resources/sql/macros.vm (original)
>> +++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14 20:22:00
>> 2014
>> @@ -82,6 +82,20 @@ Define non-null column with default valu
>>   #end
>>   #end
>>
>> +#**
>> +Rename a table.
>> +For Derby, will not work if there is a view or foreign key that
>> references the table.
>> +MySQL requires sp_rename command; unsure if works.
>> +**#
>> +#macro(renameTable $oldTableName $newTableName)
>> +#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
>> +alter table $oldTableName rename to $newTableName;
>> +#elseif ($db.DBTYPE == 'MYSQL')
>> +sp_rename '$oldTableName', '$newTableName';
>> +#else
>> +rename table $oldTableName TO $newTableName;
>> +#end
>> +#end
>>
>
> Hi Glenn,
>
> The correct syntax for MySQL is "rename table a to b" and not sp_rename.
>
> Did you mean to use sp_rename for MS SQL Server instead?
>
> - Dave
>


Re: svn commit: r1610513 - in /roller/trunk/app/src/main: java/org/apache/roller/weblogger/business/themes/ java/org/apache/roller/weblogger/pojos/ java/org/apache/roller/weblogger/pojos/wrapper/ java/org/apache/roller/weblogger/ui/struts2/editor/ resource...

Posted by Dave <sn...@gmail.com>.
On Mon, Jul 14, 2014 at 4:22 PM, <gm...@apache.org> wrote:


> Modified: roller/trunk/app/src/main/resources/sql/macros.vm
> URL:
> http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/sql/macros.vm?rev=1610513&r1=1610512&r2=1610513&view=diff
>
> ==============================================================================
> --- roller/trunk/app/src/main/resources/sql/macros.vm (original)
> +++ roller/trunk/app/src/main/resources/sql/macros.vm Mon Jul 14 20:22:00
> 2014
> @@ -82,6 +82,20 @@ Define non-null column with default valu
>  #end
>  #end
>
> +#**
> +Rename a table.
> +For Derby, will not work if there is a view or foreign key that
> references the table.
> +MySQL requires sp_rename command; unsure if works.
> +**#
> +#macro(renameTable $oldTableName $newTableName)
> +#if ($db.DBTYPE == 'POSTGRESQL' || $db.DBTYPE == 'HSQLDB')
> +alter table $oldTableName rename to $newTableName;
> +#elseif ($db.DBTYPE == 'MYSQL')
> +sp_rename '$oldTableName', '$newTableName';
> +#else
> +rename table $oldTableName TO $newTableName;
> +#end
> +#end
>


Hi Glenn,

The correct syntax for MySQL is "rename table a to b" and not sp_rename.

Did you mean to use sp_rename for MS SQL Server instead?

- Dave