root / snf-app / synnefo / ui / templates / home.html @ 6c32043b
History | View | Annotate | Download (26.8 kB)
1 | 8d08f18a | Kostas Papadimitriou | <!doctype html> |
---|---|---|---|
2 | 4ea5cc44 | Mike Muzurakis | <html>
|
3 | 4ea5cc44 | Mike Muzurakis | |
4 | d7f0ad6e | provetza | {% load i18n %} |
5 | cc7c5902 | Dimitris Moraitis | <head>
|
6 | a226ff9f | Christodoulos Psaltis | <title>~okeanos</title> |
7 | 4a57745c | Kostas Papadimitriou | |
8 | 8d08f18a | Kostas Papadimitriou | <!--<meta http-equiv="X-UA-Compatible" content="IE=7">-->
|
9 | 4a57745c | Kostas Papadimitriou | <meta http-equiv="content-type" content="text/html; charset=UTF-8"> |
10 | 4a57745c | Kostas Papadimitriou | |
11 | 9ebf573f | Kostas Papadimitriou | <link href="https://fonts.googleapis.com/css?family=Ubuntu&subset=latin,greek" rel="stylesheet" type="text/css" > |
12 | 9ebf573f | Kostas Papadimitriou | <link href='https://fonts.googleapis.com/css?family=Open+Sans&subset=latin,greek' rel='stylesheet' type='text/css'> |
13 | 8d08f18a | Kostas Papadimitriou | |
14 | 4f946967 | Kostas Papadimitriou | <link rel="shortcut icon" href="{{ SYNNEFO_IMAGES_URL }}favicon.ico" /> |
15 | fbeba614 | Kostas Papadimitriou | |
16 | 8d08f18a | Kostas Papadimitriou | {% comment %} |
17 | 8d08f18a | Kostas Papadimitriou | <script type="text/javascript" src="{% url javascript_catalog %}"></script> |
18 | 8d08f18a | Kostas Papadimitriou | {% endcomment %} |
19 | 19e01943 | Kostas Papadimitriou | |
20 | 7970aa87 | Kostas Papadimitriou | <link rel="stylesheet" type="text/css" href="{{ SYNNEFO_CSS_URL }}main.css"/> |
21 | 5fe07577 | Kostas Papadimitriou | |
22 | 8d08f18a | Kostas Papadimitriou | <!--[if IE]>
|
23 | 7970aa87 | Kostas Papadimitriou | <style type="text/css" media="all">@import url({{ SYNNEFO_CSS_URL }}ie.css);</style>
|
24 | 8d08f18a | Kostas Papadimitriou | <![endif]-->
|
25 | 5fe07577 | Kostas Papadimitriou | <!--[if (lte IE 7)]>
|
26 | 5fe07577 | Kostas Papadimitriou | <style type="text/css" media="all">@import url({{ SYNNEFO_CSS_URL }}ie7.css);</style>
|
27 | 5fe07577 | Kostas Papadimitriou | <![endif]-->
|
28 | 8d08f18a | Kostas Papadimitriou | |
29 | 43a89bfd | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL }}jquery-1.7.1.js"></script> |
30 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.cookie.js"></script> |
31 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.client.js"></script> |
32 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.tools.min.js"></script> |
33 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.dataTables.min.js"></script> |
34 | 1e827d67 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.pagination.js"></script> |
35 | 35584d80 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.zclip.js"></script> |
36 | e97e7c44 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}jquery.base64.js"></script> |
37 | 8d08f18a | Kostas Papadimitriou | |
38 | 23a3bb8e | Kostas Papadimitriou | |
39 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}underscore.js"></script> |
40 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}underscore.string.js"></script> |
41 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}backbone.js"></script> |
42 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}json2.js"></script> |
43 | c62c6b91 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL}}stacktrace.js"></script> |
44 | 23a3bb8e | Kostas Papadimitriou | |
45 | 8e701482 | Kostas Papadimitriou | <!--[if (lt IE 7)]>
|
46 | 556dcd88 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_LIB_URL }}selectivizr.js"></script>
|
47 | 8d08f18a | Kostas Papadimitriou | <! [endif] -->
|
48 | 8d08f18a | Kostas Papadimitriou | |
49 | 8d08f18a | Kostas Papadimitriou | <!--[if IE]>
|
50 | 556dcd88 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}ui/ie_fixes.js"></script>
|
51 | 8d08f18a | Kostas Papadimitriou | <![endif]-->
|
52 | 1956fd41 | Kostas Papadimitriou | |
53 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}utils.js"></script> |
54 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}sync.js"></script> |
55 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}models.js"></script> |
56 | 1a947bb7 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}glance_models.js"></script> |
57 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}views.js"></script> |
58 | c62c6b91 | Kostas Papadimitriou | |
59 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_vms_base_view.js"></script> |
60 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_model_views.js"></script> |
61 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_error_view.js"></script> |
62 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_icon_view.js"></script> |
63 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_single_view.js"></script> |
64 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_list_view.js"></script> |
65 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_networks_view.js"></script> |
66 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_metadata_view.js"></script> |
67 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_feedback_view.js"></script> |
68 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_invitations_view.js"></script> |
69 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_create_view.js"></script> |
70 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_connect_view.js"></script> |
71 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_public_keys_view.js"></script> |
72 | 8b71ea92 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_custom_images.js"></script> |
73 | 38dc3895 | Kostas Papadimitriou | |
74 | 38dc3895 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_router.js"></script> |
75 | 12a0db5d | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_WEB_URL }}ui_main_view.js"></script> |
76 | 8d08f18a | Kostas Papadimitriou | |
77 | 8d08f18a | Kostas Papadimitriou | <!-- the following views require refactor -->
|
78 | 7970aa87 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}invitations.js"></script> |
79 | 7970aa87 | Kostas Papadimitriou | <script src="{{ SYNNEFO_JS_URL }}synnefo.js"></script> |
80 | 8d08f18a | Kostas Papadimitriou | |
81 | 42f67a2a | Dimitris Moraitis | <script>
|
82 | a657c49e | Kostas Papadimitriou | // empty object for console to avoid errors in browsers that don't support it
|
83 | 2b837adf | Kostas Papadimitriou | if (!window.console) {window.console = {}; window.console.log = window.console.info = window.console.debug =
|
84 | 2b837adf | Kostas Papadimitriou | window.console.error = function() {}};
|
85 | 49772990 | Kostas Papadimitriou |
|
86 | f533f224 | Vangelis Koukis | //populate available image icons array
|
87 | f533f224 | Vangelis Koukis | var os_icons = {{image_icons|safe}};
|
88 | 8d08f18a | Kostas Papadimitriou |
|
89 | eae0a59a | Dimitris Moraitis | // timeout value from settings.py
|
90 | f4098dee | Kostas Papadimitriou | var TIMEOUT = {{ timeout }};
|
91 | ec027295 | Kostas Papadimitriou | var TIMEOUTS_OCCURED = 0;
|
92 | ec027295 | Kostas Papadimitriou | var SKIP_TIMEOUTS = 1;
|
93 | ec027295 | Kostas Papadimitriou | var UPDATE_INTERVAL = {{ update_interval }};
|
94 | dacd179a | Kostas Papadimitriou | var LOGOUT_REDIRECT = '{{ logout_redirect }}';
|
95 | 54417a11 | Kostas Papadimitriou | var INVITATIONS_URL = "{% url invitations %}";
|
96 | 67921b5c | Kostas Papadimitriou | var INVITATIONS_TITLE = "{% trans "Invite people" %}";
|
97 | 9040e9fe | Kostas Papadimitriou | var APP_DEBUG = {% if DEBUG %}true{% else %}false{% endif %};
|
98 | 54417a11 | Kostas Papadimitriou | var FEEDBACK_URL = "{% url feedback %}";
|
99 | f860d8a3 | Vangelis Koukis | var FEEDBACK_TITLE = "{% trans "Send feedback" %}";
|
100 | 3c08f055 | Kostas Papadimitriou | var API_OVERLAY_TITLE = "{% trans "API access" %}";
|
101 | 79f287b1 | Kostas Papadimitriou | var API_OVERLAY_SUBCONTENT = "{% trans "The API key provides full access to your <em>~okeanos</em> account, so always keep it private." %}";
|
102 | 8d08f18a | Kostas Papadimitriou |
|
103 | 8d08f18a | Kostas Papadimitriou | STATE_TEXTS = {
|
104 | 8d08f18a | Kostas Papadimitriou | 'UNKNOWN': '{% trans "Unknown" %}',
|
105 | 8d08f18a | Kostas Papadimitriou | 'BUILD': '{% trans "Building..." %}',
|
106 | 8d08f18a | Kostas Papadimitriou | 'FIREWALL': '{% trans "Firewall change..." %}',
|
107 | 8d08f18a | Kostas Papadimitriou | 'REBOOT': '{% trans "Rebooting..." %}',
|
108 | 8d08f18a | Kostas Papadimitriou | 'STOPPED':'{% trans "Stopped" %}',
|
109 | 8d08f18a | Kostas Papadimitriou | 'ACTIVE': '{% trans "Running" %}',
|
110 | 8d08f18a | Kostas Papadimitriou | 'ERROR': '{% trans "Error" %}',
|
111 | 8d08f18a | Kostas Papadimitriou | 'DELETE': '',
|
112 | 8d08f18a | Kostas Papadimitriou | 'DESTROY': '{% trans "Destroying..." %}',
|
113 | 8d08f18a | Kostas Papadimitriou | 'BUILD_INIT': '{% trans "Building..." %}',
|
114 | 8d08f18a | Kostas Papadimitriou | 'BUILD_COPY': '{% trans "Building..." %}',
|
115 | 8d08f18a | Kostas Papadimitriou | 'BUILD_FINAL': '{% trans "Building..." %}',
|
116 | 8d08f18a | Kostas Papadimitriou | 'SHUTDOWN': '{% trans "Shutting down..." %}',
|
117 | 8d08f18a | Kostas Papadimitriou | 'START': '{% trans "Starting..." %}',
|
118 | 8d08f18a | Kostas Papadimitriou | 'CONNECT': '{% trans "Connecting..." %}',
|
119 | 8d08f18a | Kostas Papadimitriou | 'DISCONNECT': '{% trans "Disconnecting..." %}'
|
120 | 8d08f18a | Kostas Papadimitriou | }
|
121 | 8d08f18a | Kostas Papadimitriou |
|
122 | 8d08f18a | Kostas Papadimitriou |
|
123 | 8d08f18a | Kostas Papadimitriou |
|
124 | 55e4b353 | Kostas Papadimitriou | // building statuses
|
125 | 8d08f18a | Kostas Papadimitriou | var BUILDING_MESSAGES = {
|
126 | 55e4b353 | Kostas Papadimitriou | 'INIT': '{% trans "Initializing..." %}',
|
127 | 8d08f18a | Kostas Papadimitriou | 'COPY': '{% trans "{0} of {1} ({2}%)" %}',
|
128 | 8d08f18a | Kostas Papadimitriou | 'FINAL': '{% trans "Finalizing..." %}'
|
129 | 55e4b353 | Kostas Papadimitriou | }
|
130 | 3df307d7 | Christodoulos Psaltis | |
131 | 8d08f18a | Kostas Papadimitriou | var ERROR_OVERRIDES = {
|
132 | eae0a59a | Dimitris Moraitis | // error message header
|
133 | f533f224 | Vangelis Koukis | 'HEADER' : '{% trans "Error" %}',
|
134 | eae0a59a | Dimitris Moraitis | // default
|
135 | 146b6003 | Dimitris Moraitis | 'DEFAULT' : '{% trans "Could not contact the service. Please check your network connectivity and try again." %}',
|
136 | eae0a59a | Dimitris Moraitis | // bad request
|
137 | eae0a59a | Dimitris Moraitis | '400' : '{% trans "Malformed request." %}',
|
138 | eae0a59a | Dimitris Moraitis | // not found
|
139 | eae0a59a | Dimitris Moraitis | '404' : '{% trans "Your request has failed. Resource not found." %}',
|
140 | eae0a59a | Dimitris Moraitis | // internal server error
|
141 | ccd40764 | Markos Gogoulos | '500' : '{% trans "There has been an Internal Error. Our administrators have been notified." %}',
|
142 | ccd40764 | Markos Gogoulos | // service unavailable
|
143 | ccd40764 | Markos Gogoulos | '501' : '{% trans "This server has not been implemented yet." %}',
|
144 | eae0a59a | Dimitris Moraitis | // service unavailable
|
145 | f533f224 | Vangelis Koukis | '502' : '{% trans "Bad Gateway error." %}',
|
146 | f533f224 | Vangelis Koukis | // service unavailable
|
147 | a5093da5 | Markos Gogoulos | '503' : '{% trans "This service is unavailable right now, please try again later." %}',
|
148 | 80a8f602 | Christodoulos Psaltis | // no server handshake
|
149 | 80a8f602 | Christodoulos Psaltis | '0' : '{% trans "Could not contact the server." %}',
|
150 | e2ccad35 | Dimitris Moraitis | // no images found
|
151 | 8d08f18a | Kostas Papadimitriou | '-212' : '{% trans "Cannot show the Create machine wizard: No images found." %}',
|
152 | e2ccad35 | Dimitris Moraitis | // no flavors found
|
153 | 8d08f18a | Kostas Papadimitriou | '-213' : '{% trans "Cannot show the Create machine wizard: No machine configurations found." %}',
|
154 | f533f224 | Vangelis Koukis | // error box title
|
155 | f533f224 | Vangelis Koukis | 'GENERIC_POPUP_HEADER' : '{% trans "Something seems to have gone wrong :( Here is what happened:" %}',
|
156 | f533f224 | Vangelis Koukis | // no advanced details
|
157 | b15a0cc4 | Kostas Papadimitriou | 'NO_DETAILS' : '{% trans "Νο advanced details provided" %}',
|
158 | b15a0cc4 | Kostas Papadimitriou | // timeout message
|
159 | b15a0cc4 | Kostas Papadimitriou | 'TIMEOUT' : '{% trans "It seems the server takes too long to respond, please check your network connectivity" %}'
|
160 | eae0a59a | Dimitris Moraitis | };
|
161 | f533f224 | Vangelis Koukis | |
162 | e0dea91a | Kostas Papadimitriou | var SUGGESTED_FLAVORS = {{ suggested_flavors|safe }};
|
163 | 73e25ce2 | Kostas Papadimitriou | var SUGGESTED_ROLES = {{ suggested_roles|safe }}
|
164 | e9b14cb8 | Kostas Papadimitriou | |
165 | eae0a59a | Dimitris Moraitis | var SUCCESS = {
|
166 | f533f224 | Vangelis Koukis | 'HEADER' : '{% trans "Success" %}',
|
167 | 146b6003 | Dimitris Moraitis | 'DEFAULT' : '{% trans "Your request has been succefully executed." %}',
|
168 | f533f224 | Vangelis Koukis | 'PASSWORD' : '{% trans "Password:" %}',
|
169 | aa0801aa | Markos Gogoulos | 'CREATE_VM_SUCCESS' : '{% trans "Success" %}',
|
170 | f533f224 | Vangelis Koukis | 'CREATE_VM_SUCCESS_ONE' : '{% trans "Your new machine is now buidling... (this might take a few minutes)" %}',
|
171 | def71253 | Markos Gogoulos | 'CREATE_VM_SUCCESS_TWO' : '{% trans "Write down your password now:" %}',
|
172 | f533f224 | Vangelis Koukis | 'CREATE_VM_SUCCESS_THREE' : '{% trans "You will need this later to connect to your machine." %}',
|
173 | f533f224 | Vangelis Koukis | 'CREATE_VM_SUCCESS_FOUR' : '{% trans "After closing this window you will NOT be able to retrieve it again." %}'
|
174 | eae0a59a | Dimitris Moraitis | };
|
175 | f533f224 | Vangelis Koukis | |
176 | b495fe50 | Mike Muzurakis | var VARIOUS = {
|
177 | b495fe50 | Mike Muzurakis | 'CONFIRM' : '{% trans "Confirm" %}',
|
178 | 372f6c81 | Mike Muzurakis | 'CANCEL' : '{% trans "Cancel" %}',
|
179 | d6872a51 | Christodoulos Psaltis | 'APPLY' : '{% trans "Apply" %}',
|
180 | d6872a51 | Christodoulos Psaltis | 'OFF' : '{% trans "Off" %}',
|
181 | d6872a51 | Christodoulos Psaltis | 'ON' : '{% trans "On" %}'
|
182 | b495fe50 | Mike Muzurakis | };
|
183 | b495fe50 | Mike Muzurakis | |
184 | 42f67a2a | Dimitris Moraitis | </script>
|
185 | cc7c5902 | Dimitris Moraitis | </head>
|
186 | 8d08f18a | Kostas Papadimitriou | |
187 | 23a3bb8e | Kostas Papadimitriou | <body id="app"> |
188 | 46990631 | Kostas Papadimitriou | <!--<img id="okeanos-image" src="{{ SYNNEFO_IMAGES_URL }}body-bg2.png" />-->
|
189 | f533f224 | Vangelis Koukis | <div id="container"> |
190 | 8d08f18a | Kostas Papadimitriou | <div id="header"> |
191 | 8d08f18a | Kostas Papadimitriou | <div id="user"> |
192 | ce88aad7 | Kostas Papadimitriou | <div class="usermenu"> |
193 | 3f545a3e | Kostas Papadimitriou | <div class="username">{{ request.user.uniq }}</div> |
194 | ce88aad7 | Kostas Papadimitriou | <ul class="useractions"> |
195 | f860d8a3 | Vangelis Koukis | <li class="invitations"><a class="action" href="#">{% trans "invite friends..." %}</a></li> |
196 | f860d8a3 | Vangelis Koukis | <li class="feedback"><a class="action" href="#">{% trans "send feedback..." %}</a></li> |
197 | 3c08f055 | Kostas Papadimitriou | <li class="api"><a class="action" href="#">{% trans "API access..." %}</a></li> |
198 | 1892dd0d | Kostas Papadimitriou | <li class="public_keys"><a class="action" href="#">{% trans "ssh public keys..." %}</a></li> |
199 | 6c32043b | Kostas Papadimitriou | <!--<li class="custom_images"><a class="action" href="#">{% trans "custom images..." %}</a></li>-->
|
200 | d389b440 | Kostas Papadimitriou | <li class="logout last"><a class="action" href="#">{% trans "logout" %}</a></li> |
201 | ce88aad7 | Kostas Papadimitriou | </ul>
|
202 | ce88aad7 | Kostas Papadimitriou | </div>
|
203 | ce88aad7 | Kostas Papadimitriou | <div class="langmenu"> |
204 | 8d08f18a | Kostas Papadimitriou | <a class="current_lang">en</a> |
205 | 8d08f18a | Kostas Papadimitriou | {% comment %} |
206 | f533f224 | Vangelis Koukis | {% get_available_languages as LANGUAGES %} |
207 | f533f224 | Vangelis Koukis | {% for lang in LANGUAGES %} |
208 | 8d08f18a | Kostas Papadimitriou | <a {% if == lang.0 %} |
209 | 8d08f18a | Kostas Papadimitriou | class="current_lang" {% else %} href="/lang/?l={{lang.0}}" {% endif %}>{{lang.0}}</a> |
210 | 8d08f18a | Kostas Papadimitriou | |
211 | ce88aad7 | Kostas Papadimitriou | {% if not forloop.last %}<span class="sep">~</span>{% endif %} |
212 | ce88aad7 | Kostas Papadimitriou | {% endfor %} |
213 | 2797d46a | Kostas Papadimitriou | {% endcomment %} |
214 | ce88aad7 | Kostas Papadimitriou | </div>
|
215 | f533f224 | Vangelis Koukis | </div>
|
216 | f533f224 | Vangelis Koukis | <div class="header-logo"> |
217 | f533f224 | Vangelis Koukis | <a href="/"> |
218 | 7970aa87 | Kostas Papadimitriou | <img src="{{ SYNNEFO_IMAGES_URL }}okeanos-logo-alpha.png" alt="okeanos (alpha)"/> |
219 | f533f224 | Vangelis Koukis | </a>
|
220 | f533f224 | Vangelis Koukis | </div>
|
221 | cc7c5902 | Dimitris Moraitis | </div>
|
222 | f533f224 | Vangelis Koukis | <div id="content"> |
223 | 8d08f18a | Kostas Papadimitriou | <div id="wrapper" class="clearfix"> |
224 | 8d08f18a | Kostas Papadimitriou | |
225 | 8d08f18a | Kostas Papadimitriou | <div class="panes-menu clearfix"> |
226 | f533f224 | Vangelis Koukis | <!-- tabs -->
|
227 | f533f224 | Vangelis Koukis | <div class="tab-name">{% trans "machines" %}</div> |
228 | f533f224 | Vangelis Koukis | <ul class="css-tabs"> |
229 | 8d08f18a | Kostas Papadimitriou | <li><a href="machines" title="{% trans "manage virtual " %}" |
230 | 8d08f18a | Kostas Papadimitriou | class="primary" id="machines_view_link"> |
231 | 7970aa87 | Kostas Papadimitriou | <img src="{{ SYNNEFO_IMAGES_URL }}machines-icon.png" /></a></li> |
232 | 8d08f18a | Kostas Papadimitriou | <li><a href="networks" title="{% trans "configure " %}" |
233 | 8d08f18a | Kostas Papadimitriou | class="primary" id="networks_view_link"> |
234 | 7970aa87 | Kostas Papadimitriou | <img src="{{ SYNNEFO_IMAGES_URL }}networks-icon.png" /></a></li> |
235 | 5cac72a2 | Kostas Papadimitriou | <li class="hidden"><a href="disks" title="{% trans "manage storage " %}" |
236 | 8d08f18a | Kostas Papadimitriou | class="primary" id="disks_view_link"> |
237 | 7970aa87 | Kostas Papadimitriou | <img src="{{ SYNNEFO_IMAGES_URL }}disks-icon.png" /></a></li> |
238 | f533f224 | Vangelis Koukis | </ul>
|
239 | 8d08f18a | Kostas Papadimitriou | </div>
|
240 | f533f224 | Vangelis Koukis | <div class="css-panes"> |
241 | 8d08f18a | Kostas Papadimitriou | <div id="machines-pane" class="pane" style="display:block;"> |
242 | 8d08f18a | Kostas Papadimitriou | {% include "partials/machines.html" %} |
243 | 8d08f18a | Kostas Papadimitriou | </div>
|
244 | 8d08f18a | Kostas Papadimitriou | <div id="networks-pane" class="pane"> |
245 | 8d08f18a | Kostas Papadimitriou | {% include "partials/networks.html" %} |
246 | 8d08f18a | Kostas Papadimitriou | </div>
|
247 | f533f224 | Vangelis Koukis | <div id="disks-pane" class="pane"></div> |
248 | 8d08f18a | Kostas Papadimitriou | |
249 | 122850c5 | Kostas Papadimitriou | <div class="confirm_multiple clearfix" id="multiple_actions_container"> |
250 | 101e6604 | Kostas Papadimitriou | <div class="confirm_multiple_actions confirm-all-cont global hidden confirm_multiple_cont clearfix"> |
251 | 101e6604 | Kostas Papadimitriou | <div class="confirm-all msg"> |
252 | 101e6604 | Kostas Papadimitriou | <p>You requested multiple actions to execute (<span |
253 | 101e6604 | Kostas Papadimitriou | class"show">show all</span>)</p> |
254 | 101e6604 | Kostas Papadimitriou | <button class="yes">Confirm all</button> |
255 | 101e6604 | Kostas Papadimitriou | <button class="no">Cancel all</button> |
256 | 101e6604 | Kostas Papadimitriou | </div>
|
257 | 101e6604 | Kostas Papadimitriou | <div class="details"></div> |
258 | 122850c5 | Kostas Papadimitriou | </div>
|
259 | 101e6604 | Kostas Papadimitriou | <div class="ns-confirms-cont"> |
260 | 101e6604 | Kostas Papadimitriou | <div class="confirm_multiple_actions hidden confirm_multiple_cont |
261 | 101e6604 | Kostas Papadimitriou | ns-confirm clearfix"
|
262 | 101e6604 | Kostas Papadimitriou | id="conirm_multiple_cont_template"> |
263 | 101e6604 | Kostas Papadimitriou | <div class="confirm-all msg"> |
264 | 101e6604 | Kostas Papadimitriou | <p></p> |
265 | 101e6604 | Kostas Papadimitriou | <button class="yes"></button> |
266 | 101e6604 | Kostas Papadimitriou | <button class="no"></button> |
267 | 101e6604 | Kostas Papadimitriou | </div>
|
268 | 101e6604 | Kostas Papadimitriou | <div class="details"></div> |
269 | 101e6604 | Kostas Papadimitriou | </div>
|
270 | 122850c5 | Kostas Papadimitriou | </div>
|
271 | 8d08f18a | Kostas Papadimitriou | </div>
|
272 | 8d08f18a | Kostas Papadimitriou | |
273 | f533f224 | Vangelis Koukis | </div>
|
274 | f533f224 | Vangelis Koukis | </div>
|
275 | cc7c5902 | Dimitris Moraitis | </div>
|
276 | cc7c5902 | Dimitris Moraitis | </div>
|
277 | f533f224 | Vangelis Koukis | |
278 | cc7c5902 | Dimitris Moraitis | <!-- activate tabs with JavaScript -->
|
279 | cc7c5902 | Dimitris Moraitis | <script>
|
280 | f533f224 | Vangelis Koukis | |
281 | d681d3a6 | Mike Muzurakis | //load opera css fixes
|
282 | d681d3a6 | Mike Muzurakis | if ($.browser.opera) {
|
283 | d681d3a6 | Mike Muzurakis | $("<link/>", {
|
284 | d681d3a6 | Mike Muzurakis | rel: "stylesheet",
|
285 | d681d3a6 | Mike Muzurakis | type: "text/css",
|
286 | 7970aa87 | Kostas Papadimitriou | href: "{{ SYNNEFO_CSS_URL }}opera.css"
|
287 | d681d3a6 | Mike Muzurakis | }).appendTo("head");
|
288 | d681d3a6 | Mike Muzurakis | }
|
289 | ce88aad7 | Kostas Papadimitriou | |
290 | ce88aad7 | Kostas Papadimitriou | $(document).ready(function(){
|
291 | f277a1cd | Kostas Papadimitriou | |
292 | 01e254be | Kostas Papadimitriou | {% if current_lang == "el" and not DEBUG %}
|
293 | 01e254be | Kostas Papadimitriou | window.location = "/lang/?l=en";
|
294 | 01e254be | Kostas Papadimitriou | {% endif %}
|
295 | 01e254be | Kostas Papadimitriou | |
296 | 19e01943 | Kostas Papadimitriou | // user menu interaction
|
297 | ce88aad7 | Kostas Papadimitriou | var resetUserMenu = function() {
|
298 | ce88aad7 | Kostas Papadimitriou | $(this).removeClass("hovered");
|
299 | ce88aad7 | Kostas Papadimitriou | $(this).removeClass("active");
|
300 | ce88aad7 | Kostas Papadimitriou | }
|
301 | 92a063bf | Kostas Papadimitriou | |
302 | ce88aad7 | Kostas Papadimitriou | $(".usermenu").live("click", function(){
|
303 | ce88aad7 | Kostas Papadimitriou | $(this).addClass("active");
|
304 | ce88aad7 | Kostas Papadimitriou | });
|
305 | ce88aad7 | Kostas Papadimitriou | $(".usermenu").bind('mouseleave', resetUserMenu);
|
306 | ce88aad7 | Kostas Papadimitriou | $(".usermenu").live("mouseover", function(){
|
307 | ce88aad7 | Kostas Papadimitriou | $(this).addClass("hovered");
|
308 | ce88aad7 | Kostas Papadimitriou | });
|
309 | af6fc929 | Kostas Papadimitriou | |
310 | 0e03566f | Kostas Papadimitriou | $(".usermenu li").mouseenter(function(){$(this).addClass("hovered")})
|
311 | 0e03566f | Kostas Papadimitriou | $(".usermenu li").mouseleave(function(){$(this).removeClass("hovered")});
|
312 | 0e03566f | Kostas Papadimitriou | |
313 | af6fc929 | Kostas Papadimitriou | // bind menu actions
|
314 | af6fc929 | Kostas Papadimitriou | $(".usermenu .logout").click(function() {
|
315 | 7dcd8cf5 | Kostas Papadimitriou | synnefo.ui.logout();
|
316 | af6fc929 | Kostas Papadimitriou | });
|
317 | 29772683 | Kostas Papadimitriou | |
318 | 978648f4 | Kostas Papadimitriou | $(".usermenu .api").click(function(){
|
319 | 978648f4 | Kostas Papadimitriou | synnefo.ui.main.api_info_view.show();
|
320 | 978648f4 | Kostas Papadimitriou | });
|
321 | 8d08f18a | Kostas Papadimitriou | |
322 | 8d08f18a | Kostas Papadimitriou | });
|
323 | 8d08f18a | Kostas Papadimitriou |
|
324 | 8d08f18a | Kostas Papadimitriou | function positionBottomMessages() {
|
325 | 8d08f18a | Kostas Papadimitriou | var el = $("#multiple_actions_container");
|
326 | 8d08f18a | Kostas Papadimitriou | }
|
327 | 8d08f18a | Kostas Papadimitriou | |
328 | 8d08f18a | Kostas Papadimitriou | $(window).bind("load", function() {
|
329 | 8d08f18a | Kostas Papadimitriou | var footerHeight = 0;
|
330 | 8d08f18a | Kostas Papadimitriou | var footerTop = 0;
|
331 | 8d08f18a | Kostas Papadimitriou | var $footer = $("#footer-container");
|
332 | 8d08f18a | Kostas Papadimitriou | |
333 | 8d08f18a | Kostas Papadimitriou | positionFooter();
|
334 | 8d08f18a | Kostas Papadimitriou | function positionFooter() {
|
335 | 8d08f18a | Kostas Papadimitriou | footerHeight = 80;
|
336 | 8d08f18a | Kostas Papadimitriou | footerTop = ($(window).scrollTop()+$(window).height()-footerHeight)+"px";
|
337 | 8d08f18a | Kostas Papadimitriou | if (($(document.body).height()+footerHeight) < $(window).height()) {
|
338 | 8d08f18a | Kostas Papadimitriou | |
339 | 8d08f18a | Kostas Papadimitriou | $footer.css({
|
340 | 8d08f18a | Kostas Papadimitriou | position: "absolute"
|
341 | 8d08f18a | Kostas Papadimitriou | }).css({
|
342 | 8d08f18a | Kostas Papadimitriou | top: footerTop
|
343 | 8d08f18a | Kostas Papadimitriou | })
|
344 | 8d08f18a | Kostas Papadimitriou | } else {
|
345 | 8d08f18a | Kostas Papadimitriou |
|
346 | 8d08f18a | Kostas Papadimitriou | if ($footer.css("position") == "static") {
|
347 | 8d08f18a | Kostas Papadimitriou | if ($(document.body).height() < $(window).height()) {
|
348 | 8d08f18a | Kostas Papadimitriou | $footer.css({
|
349 | 8d08f18a | Kostas Papadimitriou | position: "absolute"
|
350 | 8d08f18a | Kostas Papadimitriou | }).css({
|
351 | 8d08f18a | Kostas Papadimitriou | top: footerTop
|
352 | 8d08f18a | Kostas Papadimitriou | })
|
353 | 8d08f18a | Kostas Papadimitriou | }
|
354 | 8d08f18a | Kostas Papadimitriou | } else {
|
355 | 8d08f18a | Kostas Papadimitriou | |
356 | 8d08f18a | Kostas Papadimitriou | $footer.css({
|
357 | 8d08f18a | Kostas Papadimitriou | position: "static"
|
358 | 8d08f18a | Kostas Papadimitriou | })
|
359 | 8d08f18a | Kostas Papadimitriou | }
|
360 | 8d08f18a | Kostas Papadimitriou | }
|
361 | 8d08f18a | Kostas Papadimitriou | |
362 | 8d08f18a | Kostas Papadimitriou | }
|
363 | 122850c5 | Kostas Papadimitriou | window.positionFooter = _.throttle(positionFooter, 100);
|
364 | 8d08f18a | Kostas Papadimitriou | $(window).scroll(positionFooter).resize(positionFooter)
|
365 | ce88aad7 | Kostas Papadimitriou | });
|
366 | cc7c5902 | Dimitris Moraitis | </script>
|
367 | 8d08f18a | Kostas Papadimitriou | |
368 | b495fe50 | Mike Muzurakis | <!-- base notification for error/success reporting -->
|
369 | b495fe50 | Mike Muzurakis | <a id="notification" rel="#error-success" href="#"></a> |
370 | 29772683 | Kostas Papadimitriou | <a id="msgbox" rel="#notification-box" href="#"></a> |
371 | 54417a11 | Kostas Papadimitriou | <a id="feedbackbox" rel="#feedback-form" href="#"></a> |
372 | b495fe50 | Mike Muzurakis | |
373 | 8d08f18a | Kostas Papadimitriou | <div class="overlay" id="generic-overlay-tpl"> |
374 | b1410719 | Kostas Papadimitriou | <div class="overlay-inner"> |
375 | 1892dd0d | Kostas Papadimitriou | <h3 class="overlay-header clearfix"> |
376 | b1410719 | Kostas Papadimitriou | <span class="subtitle"></span> |
377 | b1410719 | Kostas Papadimitriou | <span class="title"></span> |
378 | b1410719 | Kostas Papadimitriou | <span class="closeme">close</span></h3> |
379 | b1410719 | Kostas Papadimitriou | <div class="container"> |
380 | b1410719 | Kostas Papadimitriou | <div class="content"> |
381 | b1410719 | Kostas Papadimitriou | </div>
|
382 | b495fe50 | Mike Muzurakis | </div>
|
383 | b1410719 | Kostas Papadimitriou | <div class="footer"></div> |
384 | b495fe50 | Mike Muzurakis | </div>
|
385 | b495fe50 | Mike Muzurakis | </div>
|
386 | 29772683 | Kostas Papadimitriou | |
387 | 8d08f18a | Kostas Papadimitriou | <div id="error-overlay-content" class="hidden"> |
388 | 9ffd10ce | Kostas Papadimitriou | <div class="error-nav hidden clearfix"> |
389 | 9ffd10ce | Kostas Papadimitriou | <span class="indicator"><span class="num">1</span> <span |
390 | 9ffd10ce | Kostas Papadimitriou | class="ind-msg">new error occured</span></span> |
391 | 9ffd10ce | Kostas Papadimitriou | <span class="show-next nav-btn">{% trans "next" %}</span> |
392 | 9ffd10ce | Kostas Papadimitriou | <span class="show-prev nav-btn">{% trans "previous" %}</span> |
393 | 9ffd10ce | Kostas Papadimitriou | </div>
|
394 | 8d08f18a | Kostas Papadimitriou | <div class="message"><p></p></div> |
395 | 8d08f18a | Kostas Papadimitriou | <div class="error-details"> |
396 | 8d08f18a | Kostas Papadimitriou | <span class="key">{% trans "Module" %}</span> |
397 | 8d08f18a | Kostas Papadimitriou | <span class="value error-module"></span> |
398 | 8d08f18a | Kostas Papadimitriou | |
399 | 8d08f18a | Kostas Papadimitriou | <span class="key">{% trans "Code" %}</span> |
400 | 8d08f18a | Kostas Papadimitriou | <span class="value error-code"></span> |
401 | 8d08f18a | Kostas Papadimitriou | |
402 | 8d08f18a | Kostas Papadimitriou | <span class="key">{% trans "Type" %}</span> |
403 | 8d08f18a | Kostas Papadimitriou | <span class="value error-type"></span> |
404 | 8d08f18a | Kostas Papadimitriou | |
405 | 8d08f18a | Kostas Papadimitriou | <span class="key details">{% trans "Details" %}</span> |
406 | 8d08f18a | Kostas Papadimitriou | <div class="value error-more-details"><p></p></div> |
407 | 8d08f18a | Kostas Papadimitriou | </div>
|
408 | edd1d565 | Kostas Papadimitriou | |
409 | edd1d565 | Kostas Papadimitriou | <!--<div class="navigation">-->
|
410 | edd1d565 | Kostas Papadimitriou | <!--<span class="next-error">{% trans "next error" %}</span>-->
|
411 | edd1d565 | Kostas Papadimitriou | <!--<span class="previous-error">{% trans "previous error" %}</span>-->
|
412 | edd1d565 | Kostas Papadimitriou | <!--</div>-->
|
413 | edd1d565 | Kostas Papadimitriou | |
414 | edd1d565 | Kostas Papadimitriou | <!--<div class="date">-->
|
415 | edd1d565 | Kostas Papadimitriou | <!--<span class="error-date"></span>-->
|
416 | edd1d565 | Kostas Papadimitriou | <!--</div>-->
|
417 | 8d08f18a | Kostas Papadimitriou | |
418 | 8d08f18a | Kostas Papadimitriou | <div class="actions"> |
419 | 8d08f18a | Kostas Papadimitriou | <span class="show-details">{% trans "Show details" %}</span> |
420 | 8d08f18a | Kostas Papadimitriou | <span class="hide-details">{% trans "Hide details" %}</span> |
421 | 8d08f18a | Kostas Papadimitriou | <span class="report-error">{% trans "Send report" %}</span> |
422 | 9ce969a7 | Kostas Papadimitriou | <span class="reload-app">{% trans "Reload" %}</span> |
423 | 8d08f18a | Kostas Papadimitriou | </div>
|
424 | 8d08f18a | Kostas Papadimitriou | </div>
|
425 | 1e827d67 | Kostas Papadimitriou | {% include "partials/invitations.html" %} |
426 | 8d08f18a | Kostas Papadimitriou | <div id="feedback-overlay-content" class="hidden overlay-content feedback-form"> |
427 | 8d08f18a | Kostas Papadimitriou | <div class="description"> |
428 | 8d08f18a | Kostas Papadimitriou | <p>
|
429 | 8d08f18a | Kostas Papadimitriou | {% blocktrans %}~okeanos is currently in alpha test and we would appreciate any kind of feedback. |
430 | 8d08f18a | Kostas Papadimitriou | We welcome any suggestions, questions and bug reports you may have.{% endblocktrans %} |
431 | 8d08f18a | Kostas Papadimitriou | </p>
|
432 | 8d08f18a | Kostas Papadimitriou | </div>
|
433 | 8d08f18a | Kostas Papadimitriou | <div class="description messages noborder"> |
434 | 8d08f18a | Kostas Papadimitriou | <p class="success-message hidden"> |
435 | 8d08f18a | Kostas Papadimitriou | {% trans "thank you for submiting your feedback" %} |
436 | 8d08f18a | Kostas Papadimitriou | </p>
|
437 | 8d08f18a | Kostas Papadimitriou | <p class="error-message hidden"> |
438 | 8d08f18a | Kostas Papadimitriou | {% trans "some error occured submiting submiting your feedback, please try again later" %} |
439 | 8d08f18a | Kostas Papadimitriou | </p>
|
440 | 8d08f18a | Kostas Papadimitriou | <p class="sending-message hidden"> |
441 | 8d08f18a | Kostas Papadimitriou | {% blocktrans %}Sending feedback...{% endblocktrans %} |
442 | 8d08f18a | Kostas Papadimitriou | </p>
|
443 | 8d08f18a | Kostas Papadimitriou | </div>
|
444 | 8d08f18a | Kostas Papadimitriou | <div class="form"> |
445 | 8d08f18a | Kostas Papadimitriou | <div class="form-field"> |
446 | 8d08f18a | Kostas Papadimitriou | <label for{% trans "Please your here, provide many as " %}</label |
447 | 8d08f18a | Kostas Papadimitriou | <textarea ="feedback-message"> |
448 | 8d08f18a | Kostas Papadimitriou | </textarea>
|
449 | 8d08f18a | Kostas Papadimitriou | </div>
|
450 | 8d08f18a | Kostas Papadimitriou | <div class="form-actions clearfix noborder"> |
451 | 8d08f18a | Kostas Papadimitriou | <span class="form-action submit">{% trans "send feedback" %}</span> |
452 | 8d08f18a | Kostas Papadimitriou | </div>
|
453 | 8d08f18a | Kostas Papadimitriou | </div>
|
454 | 8d08f18a | Kostas Papadimitriou | </div>
|
455 | 54417a11 | Kostas Papadimitriou | <div class="modal" id="feedback-form" class="feedback notification-box"> |
456 | 1892dd0d | Kostas Papadimitriou | <h3 class="popup-header overlay-header"> |
457 | f860d8a3 | Vangelis Koukis | <span class="header-box">{% trans "Send feedback" %}</span> |
458 | 54417a11 | Kostas Papadimitriou | </h3>
|
459 | 54417a11 | Kostas Papadimitriou | <div class="popup-body"> |
460 | 54417a11 | Kostas Papadimitriou | <div class="popup-body-inner"> |
461 | 54417a11 | Kostas Papadimitriou | <div class="form-container"> |
462 | 54417a11 | Kostas Papadimitriou | <p class="feedback-intro"> |
463 | ab95fd93 | Vangelis Koukis | {% blocktrans %}~okeanos is currently in alpha test and we would appreciate any kind of feedback. |
464 | 67921b5c | Kostas Papadimitriou | We welcome any suggestions, questions and bug reports you may have.{% endblocktrans %}</p>
|
465 | 54417a11 | Kostas Papadimitriou | <form id="feedback-form"> |
466 | 8ebafb71 | Kostas Papadimitriou | <label for="feedback-msg">{% trans "Please describe your problem here, provide as many details as possible" %}</label> |
467 | 8ebafb71 | Kostas Papadimitriou | <div class="description"></div> |
468 | d790d9b7 | Kostas Papadimitriou | <div class="empty-error-msg">{% trans "Please provide some feedback" %}</div> |
469 | 54417a11 | Kostas Papadimitriou | <textarea name="feedback-msg" class="feedback-text"></textarea> |
470 | 67921b5c | Kostas Papadimitriou | |
471 | 67921b5c | Kostas Papadimitriou | <input type="checkbox" name="submit-submit-data" class='submit-data' /> |
472 | 54417a11 | Kostas Papadimitriou | <input type="submit" value="{% trans "submit " %}" class="submit" /> |
473 | 54417a11 | Kostas Papadimitriou | <textarea name="feedback-data" class="data-text"></textarea> |
474 | 54417a11 | Kostas Papadimitriou | </form>
|
475 | 54417a11 | Kostas Papadimitriou | </div>
|
476 | 54417a11 | Kostas Papadimitriou | |
477 | 54417a11 | Kostas Papadimitriou | <div class="message sending">{% trans "submiting your data....." %}</div> |
478 | 54417a11 | Kostas Papadimitriou | <div class="message success"> |
479 | 54417a11 | Kostas Papadimitriou | {% trans "thank you for submiting your feedback" %} |
480 | 54417a11 | Kostas Papadimitriou | <span class="close-msg-box"> {% trans "close feedback" %}</span></div> |
481 | 54417a11 | Kostas Papadimitriou | <div class="message errormsg"> |
482 | 54417a11 | Kostas Papadimitriou | {% trans "some error occured submiting submiting your feedback, please try again later" %} |
483 | 54417a11 | Kostas Papadimitriou | <span class="close-msg-box"> {% trans "close feedback" %}</span></div> |
484 | 54417a11 | Kostas Papadimitriou | </div>
|
485 | 54417a11 | Kostas Papadimitriou | </div>
|
486 | 54417a11 | Kostas Papadimitriou | </div>
|
487 | 54417a11 | Kostas Papadimitriou | </div>
|
488 | 3c08f055 | Kostas Papadimitriou | |
489 | 978648f4 | Kostas Papadimitriou | <div id="api-info-overlay" class="overlay-content overlay-info hidden"> |
490 | 978648f4 | Kostas Papadimitriou | <div class="description"> |
491 | 978648f4 | Kostas Papadimitriou | <p>{% blocktrans with EXTERNAL_CLIENT_URL as EXTERNAL_CLIENT_URL %}Use the following API key along with the <a |
492 | 978648f4 | Kostas Papadimitriou | href="{{ EXTERNAL_CLIENT_URL }}">./kamaki</a> client to manage |
493 | 978648f4 | Kostas Papadimitriou | your cloud resources from outside this page.{% endblocktrans %}</p>
|
494 | 978648f4 | Kostas Papadimitriou | </div>
|
495 | 978648f4 | Kostas Papadimitriou | <div class="copy-content"> |
496 | 978648f4 | Kostas Papadimitriou | <p></p> |
497 | 978648f4 | Kostas Papadimitriou | </div>
|
498 | 978648f4 | Kostas Papadimitriou | <div class="description subinfo"> |
499 | 978648f4 | Kostas Papadimitriou | <p>
|
500 | 978648f4 | Kostas Papadimitriou | {% trans "The API key provides full access to your <em>~okeanos</em> account, so always keep it private." %} |
501 | 978648f4 | Kostas Papadimitriou | </p>
|
502 | 978648f4 | Kostas Papadimitriou | </div>
|
503 | 978648f4 | Kostas Papadimitriou | </div>
|
504 | 978648f4 | Kostas Papadimitriou | |
505 | 3c08f055 | Kostas Papadimitriou | <div class="api_overlay_template"> |
506 | 3c08f055 | Kostas Papadimitriou | <div class="api_overlay_content"> |
507 | 79f287b1 | Kostas Papadimitriou | <p>Use the following API key along with the <a href="{{ EXTERNAL_CLIENT_URL }}">./kamaki</a> client to manage your cloud resources from outside this page.</p> |
508 | 3c08f055 | Kostas Papadimitriou | </div>
|
509 | 3c08f055 | Kostas Papadimitriou | </div>
|
510 | 54417a11 | Kostas Papadimitriou | |
511 | 54417a11 | Kostas Papadimitriou | <div class="modal" id="notification-box" class="notification-box"> |
512 | 29772683 | Kostas Papadimitriou | <h3 class="popup-header"> |
513 | 29772683 | Kostas Papadimitriou | <span class="header-box"></span> |
514 | 29772683 | Kostas Papadimitriou | </h3>
|
515 | 29772683 | Kostas Papadimitriou | <div class="popup-body"> |
516 | 29772683 | Kostas Papadimitriou | <div class="popup-body-inner"> |
517 | 29772683 | Kostas Papadimitriou | <div class="machine-now-building"></div> |
518 | 29772683 | Kostas Papadimitriou | <div class="popup-separator"></div> |
519 | 29772683 | Kostas Papadimitriou | <div class="password-container"> |
520 | 29772683 | Kostas Papadimitriou | <div class="password"></div> |
521 | 29772683 | Kostas Papadimitriou | </div>
|
522 | 9ed51b7e | Kostas Papadimitriou | <div class="sub-text"></div> |
523 | 29772683 | Kostas Papadimitriou | </div>
|
524 | 29772683 | Kostas Papadimitriou | </div>
|
525 | 29772683 | Kostas Papadimitriou | </div>
|
526 | 8d08f18a | Kostas Papadimitriou | |
527 | 8d08f18a | Kostas Papadimitriou | <div id="loading-view" class="hidden"> |
528 | 46990631 | Kostas Papadimitriou | <img src="{{ SYNNEFO_IMAGES_URL }}icons/indicators/small/progress.gif" /> |
529 | 8d08f18a | Kostas Papadimitriou | <div class="header">Loading <span>~okeanos</span></div> |
530 | 8d08f18a | Kostas Papadimitriou | <div class="info hidden"></div> |
531 | 8d08f18a | Kostas Papadimitriou | </div>
|
532 | 1892dd0d | Kostas Papadimitriou | <div id="user_public_keys" class="overlay-content overlay-content hidden"> |
533 | 1892dd0d | Kostas Papadimitriou | {% include "userdata/public_keys_view.html" %} |
534 | 1892dd0d | Kostas Papadimitriou | </div>
|
535 | 8b71ea92 | Kostas Papadimitriou | <div id="user_custom_images" class="overlay-content overlay-content hidden"> |
536 | 8b71ea92 | Kostas Papadimitriou | {% include "partials/custom_images.html" %} |
537 | 8b71ea92 | Kostas Papadimitriou | </div>
|
538 | 8d08f18a | Kostas Papadimitriou | {% include "footer.html" %} |
539 | 8d08f18a | Kostas Papadimitriou | |
540 | 8d08f18a | Kostas Papadimitriou | <script>
|
541 | 8d08f18a | Kostas Papadimitriou | $(document).ready(function() {
|
542 | 8d08f18a | Kostas Papadimitriou | $(".css-panes").hide();
|
543 | 1956fd41 | Kostas Papadimitriou | |
544 | 66be390b | Kostas Papadimitriou | // TODO: match <= 1.9.1
|
545 | 5dad72ea | Kostas Papadimitriou | if ($.browser.mozilla && $.browser.version.substr(0,3) == "1.9") {
|
546 | 2506f741 | Kostas Papadimitriou | synnefo.config.overlay_speed = 0;
|
547 | 66be390b | Kostas Papadimitriou | $.fx.off = true;
|
548 | 2506f741 | Kostas Papadimitriou | }
|
549 | 66be390b | Kostas Papadimitriou |
|
550 | 66be390b | Kostas Papadimitriou | // synnefo js config
|
551 | c130b56e | Kostas Papadimitriou | synnefo.VERSION = "{{ synnefo_version }}";
|
552 | 66be390b | Kostas Papadimitriou | synnefo.config.update_interval = {{ update_interval }};
|
553 | 1cc6e94f | Kostas Papadimitriou | synnefo.config.update_interval_increase = {{ update_interval_increase }};
|
554 | 1cc6e94f | Kostas Papadimitriou | synnefo.config.fast_interval = {{ update_interval_fast }};
|
555 | 1cc6e94f | Kostas Papadimitriou | synnefo.config.update_interval_increase_after_calls = {{ update_interval_increase_after_calls }};
|
556 | 1cc6e94f | Kostas Papadimitriou | synnefo.config.update_interval_max = {{ update_interval_max }};
|
557 | 66be390b | Kostas Papadimitriou | synnefo.config.delay_on_blur = {{ delay_on_blur }};
|
558 | 66be390b | Kostas Papadimitriou | synnefo.config.update_hidden_views = {{ update_hidden_views }};
|
559 | 66be390b | Kostas Papadimitriou | synnefo.config.handle_window_exceptions = {{ handle_window_exceptions }};
|
560 | 66be390b | Kostas Papadimitriou | synnefo.config.ajax_timeout = {{ timeout }};
|
561 | 66be390b | Kostas Papadimitriou | synnefo.config.skip_timeouts = {{ skip_timeouts }};
|
562 | 1e827d67 | Kostas Papadimitriou | synnefo.config.invitations_url = "{% url invitations %}";
|
563 | c130b56e | Kostas Papadimitriou | synnefo.config.machines_icons_url = '{{ SYNNEFO_IMAGES_URL }}icons/machines/';
|
564 | c130b56e | Kostas Papadimitriou | synnefo.config.vm_name_template = {{ vm_name_template|safe }};
|
565 | d965e6dc | Kostas Papadimitriou | synnefo.config.flavors_disk_templates_info = {{ flavors_disk_templates_info|safe }};
|
566 | 47e34b99 | Kostas Papadimitriou | // TODO: make it dynamic
|
567 | 47e34b99 | Kostas Papadimitriou | synnefo.config.api_urls = {
|
568 | 30b6f316 | Kostas Papadimitriou | 'compute': {{ compute_api_url|safe }},
|
569 | 30b6f316 | Kostas Papadimitriou | 'glance': {{ glance_api_url|safe }}
|
570 | 47e34b99 | Kostas Papadimitriou | };
|
571 | 48865f82 | Kostas Papadimitriou | // TODO: configurable userdata urls in models.js
|
572 | 48865f82 | Kostas Papadimitriou | synnefo.config.userdata_url = '/ui/userdata';
|
573 | 66be390b | Kostas Papadimitriou | synnefo.config.logout_url = '{{ logout_redirect }}';
|
574 | 556dcd88 | Kostas Papadimitriou | synnefo.config.userdata_keys_url = '{% url keys_collection %}';
|
575 | c72a830d | Kostas Papadimitriou | synnefo.config.userdata_keys_limit = {{ userdata_keys_limit }};
|
576 | 258235f4 | Kostas Papadimitriou | // media config
|
577 | c62c6b91 | Kostas Papadimitriou | synnefo.config.media_url = '{{ UI_MEDIA_URL }}';
|
578 | c62c6b91 | Kostas Papadimitriou | synnefo.config.js_url = '{{ SYNNEFO_JS_URL }}';
|
579 | 1892dd0d | Kostas Papadimitriou | synnefo.config.images_url = '{{ SYNNEFO_IMAGES_URL }}';
|
580 | 30b6f316 | Kostas Papadimitriou | synnefo.config.use_glance = {{ use_glance }};
|
581 | 7970aa87 | Kostas Papadimitriou | synnefo.config.indicators_icons_url = '{{ SYNNEFO_IMAGES_URL }}icons/indicators/';
|
582 | 7970aa87 | Kostas Papadimitriou | synnefo.config.machines_icons_url = '{{ SYNNEFO_IMAGES_URL }}icons/machines/';
|
583 | 47276ec2 | Kostas Papadimitriou | synnefo.config.support_ssh_os_list = {{ support_ssh_os_list|safe }};
|
584 | 47276ec2 | Kostas Papadimitriou | synnefo.config.os_created_users = {{ os_created_users|safe }};
|
585 | 258235f4 | Kostas Papadimitriou | // user config
|
586 | 258235f4 | Kostas Papadimitriou | synnefo.user = {};
|
587 | 258235f4 | Kostas Papadimitriou | synnefo.user.username = '{{ request.user.uniq }}';
|
588 | 258235f4 | Kostas Papadimitriou | synnefo.user.token = $.cookie("X-Auth-Token");
|
589 | 258235f4 | Kostas Papadimitriou | // images config
|
590 | 1faf0b9c | Kostas Papadimitriou | synnefo.config.system_images_owners = {{ system_images_owners|safe }};
|
591 | 8d08f18a | Kostas Papadimitriou | synnefo.ui.init();
|
592 | 1e827d67 | Kostas Papadimitriou | synnefo.ui.main.bind("initial", function(){
|
593 | 30b6f316 | Kostas Papadimitriou | });
|
594 | 5764e310 | Kostas Papadimitriou | |
595 | 8d08f18a | Kostas Papadimitriou | })
|
596 | 8d08f18a | Kostas Papadimitriou | </script>
|
597 | cc7c5902 | Dimitris Moraitis | </body>
|
598 | cc7c5902 | Dimitris Moraitis | </html> |