Commit 0751f371 authored by Sven Franck's avatar Sven Franck

added "hacked_view" which will be passed on all JIO GET/PUT

parent c9db4e18
...@@ -19,7 +19,10 @@ ...@@ -19,7 +19,10 @@
"link_external": null, "link_external": null,
"link_source": null, "link_source": null,
"editable": null, "editable": null,
"action_menu": true "action_menu": true,
"search": {"text": "Search available servers", "text_i18n": "portal_type_dict.computer_dict.text_dict.search", "id": "search_server_list", "records": true, "filter": true, "sorted": true},
"caption": {"slot": 1, "text": "Created Servers", "text_i18n": "portal_type_dict.computer_dict.text_dict.created_servers"},
"pagination": {"slot": 2, "options": [{"text":8, "text_i18n":"portal_type_dict.computer_dict.text_dict.8"},{"text":16, "text_i18n":"portal_type_dict.computer_dict.text_dict.16"},{"text":32, "text_i18n":"portal_type_dict.computer_dict.text_dict.32"},{"text":64, "text_i18n":"portal_type_dict.computer_dict.text_dict.64"}]}
}, },
"scheme": { "scheme": {
"header": [ "header": [
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Blog", "title": "Blog",
"title_i18n": "global_dict.blog", "title_i18n": "global_dict.blog",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
}, },
"properties": { "properties": {
"enabled": true, "enabled": true,
"editable": false, "editable": true,
"external_validator": null, "external_validator": null,
"required": true, "required": true,
"preserve_whitespace": null, "preserve_whitespace": null,
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"portal_type_title": "computer", "portal_type_title": "computer",
"portal_type_fields": "computer_fieldlist", "portal_type_fields": "computer_fieldlist",
"form": true, "form": true,
"view": "FOO",
"id": "computer_new", "id": "computer_new",
"property_dict": { "property_dict": {
"dynamic_children": [0], "dynamic_children": [0],
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "computer_fieldlist", "portal_type_fields": "computer_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,8]}, "initial_query": {"include_docs": true, "limit":[0,8]},
"form": true, "form": true,
"view": "FOO",
"id": "computer_overview", "id": "computer_overview",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "computer_fieldlist", "portal_type_fields": "computer_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,1]}, "initial_query": {"include_docs": true, "limit":[0,1]},
"form": true, "form": true,
"view": "FOO",
"id": "computer_status", "id": "computer_status",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "computer_fieldlist", "portal_type_fields": "computer_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,1]}, "initial_query": {"include_docs": true, "limit":[0,1]},
"form": true, "form": true,
"view": "FOO",
"id": "computer_sample", "id": "computer_sample",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
...@@ -16,7 +17,7 @@ ...@@ -16,7 +17,7 @@
"position": "left", "position": "left",
"fieldlist": [ "fieldlist": [
{"field": "title"}, {"field": "title"},
{"field": "reference"}, {"field": "reference", "overrides": {"properties": {"editable": false}}},
{"field": "region"}, {"field": "region"},
{"field": "group"}, {"field": "group"},
{"field": "translated_validation_state_title"} {"field": "translated_validation_state_title"}
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "SlapOS", "title": "SlapOS",
"title_i18n": "global_dict.slapos", "title_i18n": "global_dict.slapos",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Documentation", "title": "Documentation",
"title_i18n": "global_dict.documentation", "title_i18n": "global_dict.documentation",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Download", "title": "Download",
"title_i18n": "global_dict.download", "title_i18n": "global_dict.download",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Forum", "title": "Forum",
"title_i18n": "global_dict.forum", "title_i18n": "global_dict.forum",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Help", "title": "Help",
"title_i18n": "global_dict.help", "title_i18n": "global_dict.help",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "invoice_fieldlist", "portal_type_fields": "invoice_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,8]}, "initial_query": {"include_docs": true, "limit":[0,8]},
"form": true, "form": true,
"view": "FOO",
"id": "invoice_overview", "id": "invoice_overview",
"property_dict": { "property_dict": {
"no_items": { "no_items": {
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Invoices", "title": "Invoices",
"title_i18n": "portal_type_dict.invoice_dict.text_dict.title", "title_i18n": "portal_type_dict.invoice_dict.text_dict.title",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "computer_fieldlist", "portal_type_fields": "computer_fieldlist",
"initial_query": {"include_docs": true, "limit":[]}, "initial_query": {"include_docs": true, "limit":[]},
"form": true, "form": true,
"view": "FOO",
"id": "computer_overview", "id": "computer_overview",
"property_dict": { "property_dict": {
"no_items": { "no_items": {
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"portal_type_title": "network", "portal_type_title": "network",
"portal_type_fields": "network_fieldlist", "portal_type_fields": "network_fieldlist",
"form": true, "form": true,
"view": "FOO",
"id": "network_new", "id": "network_new",
"property_dict": { "property_dict": {
"dynamic_children": [0], "dynamic_children": [0],
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "network_fieldlist", "portal_type_fields": "network_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,8]}, "initial_query": {"include_docs": true, "limit":[0,8]},
"form": true, "form": true,
"view": "FOO",
"id": "network_overview", "id": "network_overview",
"property_dict": { "property_dict": {
"no_items": { "no_items": {
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "network_fieldlist", "portal_type_fields": "network_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,1]}, "initial_query": {"include_docs": true, "limit":[0,1]},
"form": true, "form": true,
"view": "FOO",
"id": "network_view", "id": "network_view",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Servers", "title": "Servers",
"title_i18n": "portal_type_dict.network_dict.text_dict.networks", "title_i18n": "portal_type_dict.network_dict.text_dict.networks",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
"title": "Network Instance", "title": "Network Instance",
"title_i18n": "portal_type_dict.network_dict.text_dict.network_instance", "title_i18n": "portal_type_dict.network_dict.text_dict.network_instance",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Account", "title": "Account",
"title_i18n": "portal_type_dict.person_dict.text_dict.account", "title_i18n": "portal_type_dict.person_dict.text_dict.account",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
"title": "Register", "title": "Register",
"title_i18n": "portal_type_dict.person_dict.text_dict.register", "title_i18n": "portal_type_dict.person_dict.text_dict.register",
"theme":"slapos-white", "theme":"slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "person_fieldlist", "portal_type_fields": "person_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,1]}, "initial_query": {"include_docs": true, "limit":[0,1]},
"form": true, "form": true,
"view": "FOO",
"id": "user_sample", "id": "user_sample",
"property_dict": { "property_dict": {
"no_items": { "no_items": {
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Pricing", "title": "Pricing",
"title_i18n": "global_dict.pricing", "title_i18n": "global_dict.pricing",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [] "default": []
} }
} }
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "release_fieldlist", "portal_type_fields": "release_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,1]}, "initial_query": {"include_docs": true, "limit":[0,1]},
"form": true, "form": true,
"view": "FOO",
"id": "install_release", "id": "install_release",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "release_fieldlist", "portal_type_fields": "release_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,8]}, "initial_query": {"include_docs": true, "limit":[0,8]},
"form": true, "form": true,
"view": "FOO",
"id": "release_overview", "id": "release_overview",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "reference_id", "initial_query_url_identifier": "reference_id",
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Servers", "title": "Servers",
"title_i18n": "portal_type_dict.computer_dict.text_dict.servers", "title_i18n": "portal_type_dict.computer_dict.text_dict.servers",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
"title": "Server Instance", "title": "Server Instance",
"title_i18n": "portal_type_dict.computer_dict.text_dict.server_instance", "title_i18n": "portal_type_dict.computer_dict.text_dict.server_instance",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
"theme": "slapos-white", "theme": "slapos-white",
"title": "Server Configuration", "title": "Server Configuration",
"title_i18n": "portal_type_dict.computer_dict.text_dict.instance_configuration", "title_i18n": "portal_type_dict.computer_dict.text_dict.instance_configuration",
"layout": { "view_dict": {
"config": [ "config": [
{ {
"generate": "gadget", "generate": "gadget",
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"portal_type_title": "service", "portal_type_title": "service",
"portal_type_fields": "service_fieldlist", "portal_type_fields": "service_fieldlist",
"form": true, "form": true,
"view": "FOO",
"id": "service_connection", "id": "service_connection",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"portal_type_title": "service", "portal_type_title": "service",
"portal_type_fields": "service_fieldlist", "portal_type_fields": "service_fieldlist",
"form": true, "form": true,
"view": "FOO",
"id": "service_instance_overview", "id": "service_instance_overview",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "service_fieldlist", "portal_type_fields": "service_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,16]}, "initial_query": {"include_docs": true, "limit":[0,16]},
"form": true, "form": true,
"view": "FOO",
"id": "service_overview", "id": "service_overview",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "reference_computer", "initial_query_url_identifier": "reference_computer",
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"portal_type_title": "service", "portal_type_title": "service",
"portal_type_fields": "service_fieldlist", "portal_type_fields": "service_fieldlist",
"form": true, "form": true,
"view": "FOO",
"id": "service_statusbox", "id": "service_statusbox",
"property_dict": { "property_dict": {
"initial_query_url_identifier": "_id", "initial_query_url_identifier": "_id",
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Services", "title": "Services",
"title_i18n": "portal_type_dict.service_dict.text_dict.services", "title_i18n": "portal_type_dict.service_dict.text_dict.services",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
"title": "Service Configuration", "title": "Service Configuration",
"title_i18n": "portal_type_dict.service_dict.text_dict.service_configuration", "title_i18n": "portal_type_dict.service_dict.text_dict.service_configuration",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -61,7 +61,7 @@ ...@@ -61,7 +61,7 @@
"title": "Select Release", "title": "Select Release",
"title_i18n": "portal_type_dict.service_dict.text_dict.select_release", "title_i18n": "portal_type_dict.service_dict.text_dict.select_release",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"add": [ "add": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -77,7 +77,7 @@ ...@@ -77,7 +77,7 @@
"title": "Install Release", "title": "Install Release",
"title_i18n": "portal_type_dict.service_dict.text_dict.install_release", "title_i18n": "portal_type_dict.service_dict.text_dict.install_release",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"add": [ "add": [
{ {
"generate": "gadget", "generate": "gadget",
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
"title": "Software", "title": "Software",
"title_i18n": "portal_type_dict.software_dict.text_dict.software", "title_i18n": "portal_type_dict.software_dict.text_dict.software",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
"title": "Software", "title": "Software",
"title_i18n": "portal_type_dict.software_dict.text_dict.software", "title_i18n": "portal_type_dict.software_dict.text_dict.software",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [ "default": [
{ {
"generate": "gadget", "generate": "gadget",
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
"title": "Release", "title": "Release",
"title_i18n": "portal_type_dict.software_dict.text_dict.release", "title_i18n": "portal_type_dict.software_dict.text_dict.release",
"theme": "slapos-white", "theme": "slapos-white",
"layout": { "view_dict": {
"default": [], "default": [],
"install": [ "install": [
{ {
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "software_fieldlist", "portal_type_fields": "software_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,8]}, "initial_query": {"include_docs": true, "limit":[0,8]},
"form": true, "form": true,
"view": "FOO",
"id": "software_overview", "id": "software_overview",
"property_dict": { "property_dict": {
"link": true, "link": true,
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
"portal_type_fields": "software_fieldlist", "portal_type_fields": "software_fieldlist",
"initial_query": {"include_docs": true, "limit":[0,8]}, "initial_query": {"include_docs": true, "limit":[0,8]},
"form": true, "form": true,
"view": "FOO",
"id": "software_overview", "id": "software_overview",
"property_dict": { "property_dict": {
"link": true, "link": true,
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
"initial_query": {"include_docs": true, "limit":[0,1]}, "initial_query": {"include_docs": true, "limit":[0,1]},
"form": true, "form": true,
"id": "service_overview", "id": "service_overview",
"view": "FOO",
"property_dict": { "property_dict": {
"no_items": { "no_items": {
"message":"No Software installed.", "message":"No Software installed.",
......
...@@ -266,7 +266,7 @@ ...@@ -266,7 +266,7 @@
}, },
{ {
"fragment_list": gadget.state.fragment_list, "fragment_list": gadget.state.fragment_list,
"mode": gadget.state.view, "mode": gadget.state.mode,
"layout_level": gadget.state.layout_level "layout_level": gadget.state.layout_level
}, },
undefined, undefined,
...@@ -3020,7 +3020,7 @@ ...@@ -3020,7 +3020,7 @@
* @param {boolean} create Flag indicating whether to generate a new page * @param {boolean} create Flag indicating whether to generate a new page
* @return {object} HTML fragment * @return {object} HTML fragment
*/ */
// NOTE: we are defaulting to fixed toolbars! // NOTE: we are defaulting to fixed JQM toolbars! layout
factory.page = function (content_dict, url_dict, create) { factory.page = function (content_dict, url_dict, create) {
var i, j, last, wrapper, split_url, promises = [], container, target, var i, j, last, wrapper, split_url, promises = [], container, target,
view, render; view, render;
...@@ -3028,11 +3028,11 @@ ...@@ -3028,11 +3028,11 @@
container = document.getElementById(url_dict.id); container = document.getElementById(url_dict.id);
target = document.createDocumentFragment(); target = document.createDocumentFragment();
view = (url_dict && url_dict.mode) ? url_dict.mode : "default"; view = (url_dict && url_dict.mode) ? url_dict.mode : "default";
render = content_dict.layout[view]; render = content_dict.view_dict[view];
if (render) { if (render) {
for (i = 0; i < render.length; i += 1) { for (i = 0; i < render.length; i += 1) {
// NOTE: need to pass url and create info // generate all gadgets specified in the view
promises[i] = app.setContent(render[i], url_dict, create); promises[i] = app.setContent(render[i], url_dict, create);
} }
} else { } else {
...@@ -3042,6 +3042,11 @@ ...@@ -3042,6 +3042,11 @@
return RSVP.all(promises) return RSVP.all(promises)
.then(function (promises) { .then(function (promises) {
for (j = 0; j < promises.length; j += 1) { for (j = 0; j < promises.length; j += 1) {
// loading a file with temporary ID
if (promises[j] === undefined) {
util.error("page: Element not found");
util.loader("", "status_dict.not_found", "ban-circle");
}
target.appendChild(promises[j]); target.appendChild(promises[j]);
} }
...@@ -4179,7 +4184,7 @@ ...@@ -4179,7 +4184,7 @@
// overwrite portal_type if forced // overwrite portal_type if forced
if (property !== "identifier") { if (property !== "identifier") {
obj[property.replace(replace,"")] = value; obj[property.replace(replace, "")] = value;
} else { } else {
obj[property] = value; obj[property] = value;
} }
...@@ -4215,7 +4220,9 @@ ...@@ -4215,7 +4220,9 @@
"pass": { "pass": {
"type": config.gadget.state.type, "type": config.gadget.state.type,
"reply": true, "reply": true,
"validate_type": validate_portal_type_fields "validate_type": validate_portal_type_fields,
// hacked view
"view": config.gadget.state.view
} }
}) })
.then(function (answer) { .then(function (answer) {
...@@ -5527,7 +5534,9 @@ ...@@ -5527,7 +5534,9 @@
"fragment_list": pass.fragment_list, "fragment_list": pass.fragment_list,
"layout_level": pass.layout_level, "layout_level": pass.layout_level,
"id": pass.id, "id": pass.id,
"view": pass.mode "mode": pass.mode,
// TODO: integrate views properly into pageIndex!
"view": pass.config.view
}; };
// on deeplinks, take the URL element and query unless mode is defined // on deeplinks, take the URL element and query unless mode is defined
...@@ -5559,7 +5568,9 @@ ...@@ -5559,7 +5568,9 @@
if (pass.skip === undefined && if (pass.skip === undefined &&
(pass.no_auth || ((pass.auth && pass.active_login) || (pass.no_auth || ((pass.auth && pass.active_login) ||
(pass.mode === "new" || pass.purge)))) { (pass.mode === "new" || pass.purge))) &&
(pass.state && pass.state.query._id === undefined)
) {
// get ALL RECORDS matching query // get ALL RECORDS matching query
if (pass.config.initial_query) { if (pass.config.initial_query) {
...@@ -5589,7 +5600,7 @@ ...@@ -5589,7 +5600,7 @@
// TODO: storages should not call this, this should call storage! // TODO: storages should not call this, this should call storage!
app.store = function (reply) { app.store = function (reply) {
var i, obj, key, promises, record, items, store, pass, send_status, var i, obj, key, promises, record, items, store, pass, send_status,
method, validate; method, validate, hacked_view;
pass = reply.pass; pass = reply.pass;
...@@ -5671,12 +5682,13 @@ ...@@ -5671,12 +5682,13 @@
// if an object identifier was set in the form, we PUT, else POST // if an object identifier was set in the form, we PUT, else POST
if (obj.identifier) { if (obj.identifier) {
method = "put"; method = "put";
hacked_view = {"_view": pass.view};
obj._id = obj.identifier; obj._id = obj.identifier;
delete obj.identifier; delete obj.identifier;
} }
// store // store
promises[i] = store[method || "post"](obj) promises[i] = store[method || "post"](obj, hacked_view || {})
.then(function (answer) { .then(function (answer) {
return answer; return answer;
}) })
...@@ -5862,10 +5874,12 @@ ...@@ -5862,10 +5874,12 @@
spec = url_dict || {}; spec = url_dict || {};
// 404 land here
if (content_dict === undefined) { if (content_dict === undefined) {
util.error("setContent: Page not found"); util.error("setContent: Page not found");
util.loader("", "status_dict.not_found", "ban-circle"); util.loader("", "status_dict.not_found", "ban-circle");
}; };
switch (content_dict.generate) { switch (content_dict.generate) {
case "widget": case "widget":
...@@ -5944,7 +5958,6 @@ ...@@ -5944,7 +5958,6 @@
* @param {object} parcel parameters & pass to pass to subsequent then() * @param {object} parcel parameters & pass to pass to subsequent then()
* @return {object} object including pass and reply * @return {object} object including pass and reply
*/ */
// TODO: should be generic, not only JIO based!
app.fetchConfiguration = function (parcel) { app.fetchConfiguration = function (parcel) {
var reply, store; var reply, store;
...@@ -5996,13 +6009,14 @@ ...@@ -5996,13 +6009,14 @@
* @return {object} promise object/pass * @return {object} promise object/pass
*/ */
app.fetchData = function (parcel) { app.fetchData = function (parcel) {
var method, convert, select_list; var method, convert, select_list, hacked_view;
select_list = parcel.query && parcel.query.select_list && parcel.query.select_list.length; select_list = parcel.query && parcel.query.select_list && parcel.query.select_list.length;
if (parcel.query._id) { if (parcel.query._id) {
// TODO: don't set if don't need... // TODO: don't set if don't need...
delete parcel.query.limit; delete parcel.query.limit;
hacked_view = {"_view": parcel.pass.config.view}
method = "get"; method = "get";
convert = "single_item"; convert = "single_item";
} }
...@@ -6036,8 +6050,8 @@ ...@@ -6036,8 +6050,8 @@
// TODO: put/putAttachment should be set somewhere more general! // TODO: put/putAttachment should be set somewhere more general!
// TODO: refactor... such a mess // TODO: refactor... such a mess
app.getFromDisk = function (property_dict) { app.getFromDisk = function (property_dict) {
var response, var response, storage_location, url, hacked_view;
storage_location,
url = property_dict.url || app.default_dict.path_dict.data + url = property_dict.url || app.default_dict.path_dict.data +
property_dict.attachment + ".json"; property_dict.attachment + ".json";
...@@ -6064,14 +6078,20 @@ ...@@ -6064,14 +6078,20 @@
(storage ? storage[app.default_dict.storage_dict.settings] : (storage ? storage[app.default_dict.storage_dict.settings] :
undefined); undefined);
// hacked view?
if (property_dict && property_dict.pass && property_dict.pass.config) {
hacked_view = {"_view": property_dict.pass.config.view};
}
if (storage_location === undefined) { if (storage_location === undefined) {
util.error("getFromDisk: no storage defined"); util.error("getFromDisk: no storage defined");
return RSVP.all([]); return RSVP.all([]);
} }
return storage_location.put({ return storage_location.put(
"_id": (property_dict.file || app.default_dict.storage_dict.settings) {"_id": (property_dict.file || app.default_dict.storage_dict.settings)},
}) hacked_view || {}
)
.then(function () { .then(function () {
return storage_location.putAttachment({ return storage_location.putAttachment({
"_id": (property_dict.file || "_id": (property_dict.file ||
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment