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/09/05 04:59:39 UTC
svn commit: r1622601 -
/roller/trunk/app/src/main/webapp/WEB-INF/jsps/core/CreateWeblog.jsp
Author: gmazza
Date: Fri Sep 5 02:59:39 2014
New Revision: 1622601
URL: http://svn.apache.org/r1622601
Log:
Switch to angular.js on CreateWeblog.jsp
Modified:
roller/trunk/app/src/main/webapp/WEB-INF/jsps/core/CreateWeblog.jsp
Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/core/CreateWeblog.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/core/CreateWeblog.jsp?rev=1622601&r1=1622600&r2=1622601&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/core/CreateWeblog.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/core/CreateWeblog.jsp Fri Sep 5 02:59:39 2014
@@ -17,17 +17,9 @@
--%>
<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
<script src="<s:url value="/roller-ui/scripts/jquery-2.1.1.min.js" />"></script>
+<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script>
-function previewImage(themeId) {
- $.ajax({ url: "<s:property value='siteURL' />/roller-ui/authoring/themedata",
- data: {theme:themeId}, success: function(data) {
- $('#themedescription').html(data.description);
- $('#themeThumbnail').attr('src','<s:property value="siteURL" />' + data.previewPath);
- }
- });
-}
-
function handlePreview(handle) {
previewSpan = document.getElementById("handlePreview");
var n1 = previewSpan.childNodes[0];
@@ -97,23 +89,14 @@ function handlePreview(handle) {
<tr>
<td class="label"><label for="theme" /><s:text name="createWebsite.theme" /></label></td>
- <td class="field">
- <s:select name="bean.theme" size="1" list="themes" listKey="id" listValue="name" onchange="previewImage(this[selectedIndex].value)"/>
+ <td class="field" ng-app="themeSelectModule" ng-controller="themeController">
+ <select id="themeSelector" name="bean.theme" size="1"
+ ng-model="selectedTheme" ng-options="theme as theme.name for theme in themes track by theme.id"></select>
<br />
<br />
- <p id="themedescription"></p>
+ <p>{{ selectedTheme.description }}</p>
<br />
-
- <img id="themeThumbnail" src='' />
- <!-- initialize preview image at page load -->
- <script>
- <s:if test="bean.theme == null">
- previewImage('<s:property value="themes[0].id"/>');
- </s:if>
- <s:else>
- previewImage('<s:property value="bean.theme"/>');
- </s:else>
- </script>
+ <img src="<s:property value='siteURL'/>{{ selectedTheme.previewPath }}"/>
</td>
<td class="description"><s:text name="createWebsite.tip.theme" /></td>
</tr>
@@ -129,5 +112,13 @@ function handlePreview(handle) {
<script>
document.forms[0].elements[0].focus();
+
+ angular.module('themeSelectModule', [])
+ .controller('themeController', ['$scope', function($scope) {
+ $.ajax({ url: "<s:property value='siteURL' />/roller-ui/authoring/themedata", async:false,
+ success: function(data) { $scope.themes = data; }
+ });
+ $scope.selectedTheme = $scope.themes[0];
+ }]);
</script>