odoo.define('dss.screenDesigner', function (require) { "use strict"; var AbstractAction = require('web.AbstractAction'); var core = require('web.core'); var field_utils = require('web.field_utils'); var QWeb = core.qweb; var web_client = require('web.web_client'); var ajax = require('web.ajax'); var _t = core._t; var rpc = require('web.rpc'); var self = this; var session = require('web.session'); var viewRegistry = require('web.view_registry'); var aktcontext = ""; function _onclickevent(event) { // Check if the clicked element has the class "button" if (event.target.classList.contains("ddbtn")) { alert(JSON.stringify($(event.currentTarget))) }; }; function _onchangeevent(event) { // Check if the clicked element has the class "button" if (event.target.classList.contains("ddown")) { // Your event handler code // here // alert($(this)) // alert(event.target.value) // alert(JSON.stringify($(event.target.value))) aktcontext.context.screenlayout = event.target.value alert(aktcontext); rpc.query({model: 'dss.screendesign', method: 'myscreenrebuild', args: [this.res_id], }).then(function (result) { alert(JSON.stringify(result)); event.do_action(result); return result; }); } }; var screenDesigner = AbstractAction.extend({ contentTemplate: 'screen_view.ScreenView', init: function(parent, context) { this._super(parent, context); aktcontext = context; this.dashboard_templates = ['MainSection']; }, start: function() { var self = this; alert(aktcontext.context.screenlayout); this.set("title", 'Dashboard'); return this._super().then(function() { self.render_dashboards(); }); }, willStart: function(){ var self = this; return this._super() }, render_dashboards: function() { var self = this; var meins = ""; var templates = [] var templates = ['MainSection']; var def0 =this._rpc({ model: 'dss.display.templates', method: "get_data", args: [], }).then(function (result) { var $dropdown = document.querySelector('.ddown') if (result.length>0) { result.forEach(element => { $dropdown.append(new Option(element.displayname, element.nr)); }) } _.each(templates, function(template) {self.$('.meinfeld').append(meins)}); }) document.addEventListener("click",_onclickevent) document.addEventListener("change",_onchangeevent) var def1 =this._rpc({ model: 'dss.advertisefields.templates', method: "get_data", args: [[aktcontext.context.screenlayout]], }).then(function (result) { var displaycss = 'background-color:#38AFA0;float:left;border-style: solid;border-width: 0.1px;' const element = document.querySelector('.meincanvas') const rect = element.getBoundingClientRect(); const topPosition = rect.top + window.scrollY; var topstart = topPosition + 60 var width = window.innerWidth-40; var scale_faktor = (width / 3860) var height = Math.round(2200 * scale_faktor) meins = '