diff options
Diffstat (limited to 'sca-cpp/branches/lightweight-sca/hosting/server/htdocs/create/index.html')
-rw-r--r-- | sca-cpp/branches/lightweight-sca/hosting/server/htdocs/create/index.html | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/sca-cpp/branches/lightweight-sca/hosting/server/htdocs/create/index.html b/sca-cpp/branches/lightweight-sca/hosting/server/htdocs/create/index.html new file mode 100644 index 0000000000..d8d2b30f3c --- /dev/null +++ b/sca-cpp/branches/lightweight-sca/hosting/server/htdocs/create/index.html @@ -0,0 +1,123 @@ +<!DOCTYPE html> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<div id="bodydiv" class="body"> + +<div class="viewform"> + +<form id="createAppForm"> +<table style="width: 100%;"> +<tr><td><b>App Name:</b></td></tr> +<tr><td><input type="text" id="appName" class="flatentry" size="15" autocapitalize="off" placeholder="Your app name"/></td></tr> +<tr><tr><td style="padding-top: 6px;"><b>App Icon:</b></td></tr> +<tr><td><img id="appimg" style="width: 50px; height: 50px; vertical-align: top;"></td></tr> +<tr><tr><td style="padding-top: 6px;"><b>App Title:</b></td></tr> +<tr><td><input type="text" id="appTitle" class="flatentry" size="30" placeholder="Enter the title of your app" style="width: 300px;"/></td></tr> +<tr><tr><td style="padding-top: 6px;"><b>Description:</b></td></tr> +<tr><td><textarea id="appDescription" class="flatentry" cols="40" rows="3" placeholder="Enter a short description of your app" style="width: 300px;"></textarea></td></tr> +<tr><td> +<input id="createAppOKButton" type="submit" class="graybutton bluebutton" style="font-weight: bold;" value="Create" title="Create the app"/> +<input id="createAppCancelButton" type="button" class="graybutton" value="Cancel"/> +</td></tr> +</table> +</form> + +</div> + +<script type="text/javascript"> +(function() { + +/** + * Set page titles. + */ +document.title = config.windowtitle() + ' - Create App'; +$('viewhead').innerHTML = '<span class="smenu">Create an App</span>'; + +/** + * Set images. + */ +$('appimg').src = ui.b64img(appcache.get('/public/app.b64')); + +/** + * Init service references. + */ +var editorComp = sca.component("Editor"); +var apps = sca.reference(editorComp, "apps"); + +/** + * The current app entry and corresponding saved XML content. + */ +var appentry; +var savedappentryxml = ''; + +/** + * Save an app. + */ +function save(name, entryxml) { + showStatus('Saving'); + savedappentryxml = entryxml; + apps.put(name, savedappentryxml, function(e) { + if (e) { + showStatus('Local copy'); + return false; + } + showStatus('Saved'); + + // Open it in the page editor + ui.navigate('/#view=page&app=' + name, '_view'); + return false; + }); + return false; +} + +/** + * Create an app. + */ +$('createAppForm').onsubmit = function() { + var name = $('appName').value; + if (name == '') { + showError('Missing app name'); + return false; + } + showStatus('Modified'); + + // Clone the 'new' app template + var title = $('appTitle').value; + var description = $('appDescription').value; + appentry = mklist("'entry", mklist("'title", title != ''? title : name), mklist("'id", 'new'), mklist("'content", mklist("'stats", mklist("'description", description)))); + var entryxml = car(atom.writeATOMEntry(valuesToElements(mklist(appentry)))); + return save(name, entryxml); +}; + +/** + * Cancel creating an app. + */ +$('createAppCancelButton').onclick = function() { + history.back(); +}; + +/** + * Show the status. + */ +showOnlineStatus(); + +})(); +</script> + +</div> |