| <!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> |