// Copyright (c) 2012 Web Notes Technologies Pvt Ltd (http://erpnext.com) // // MIT License (MIT) // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the "Software"), // to deal in the Software without restriction, including without limitation // the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Software, and to permit persons to whom the // Software is furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, // INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A // PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF // CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE // OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // // add a new dom element wn.provide('wn.dom'); wn.dom = { id_count: 0, by_id: function(id) { return document.getElementById(id); }, set_unique_id: function(ele) { var id = 'unique-' + wn.dom.id_count; if(ele) ele.setAttribute('id', id); wn.dom.id_count++; return id; }, eval: function(txt) { if(!txt) return; var el = document.createElement('script'); el.appendChild(document.createTextNode(txt)); // execute the script globally document.getElementsByTagName('head')[0].appendChild(el); }, set_style: function(txt) { if(!txt) return; var se = document.createElement('style'); se.type = "text/css"; if (se.styleSheet) { se.styleSheet.cssText = txt; } else { se.appendChild(document.createTextNode(txt)); } document.getElementsByTagName('head')[0].appendChild(se); }, add: function(parent, newtag, className, cs, innerHTML, onclick) { if(parent && parent.substr)parent = wn.dom.by_id(parent); var c = document.createElement(newtag); if(parent) parent.appendChild(c); // if image, 3rd parameter is source if(className) { if(newtag.toLowerCase()=='img') c.src = className else c.className = className; } if(cs) wn.dom.css(c,cs); if(innerHTML) c.innerHTML = innerHTML; if(onclick) c.onclick = onclick; return c; }, css: function(ele, s) { if(ele && s) { for(var i in s) ele.style[i]=s[i]; }; return ele; }, placeholder: function(dim, letter) { function getsinglecol() { return Math.min(Math.round(Math.random() * 9) * Math.round(Math.random() * 1) + 3, 9) } function getcol() { return '' + getsinglecol() + getsinglecol() + getsinglecol(); } args = { width: Math.round(flt(dim) * 0.7) + 'px', height: Math.round(flt(dim) * 0.7) + 'px', padding: Math.round(flt(dim) * 0.15) + 'px', 'font-size': Math.round(flt(dim) * 0.6) + 'px', col1: getcol(), col2: getcol(), letter: letter.substr(0,1).toUpperCase() } return repl('
%(letter)s
', args); } } wn.get_cookie = function(c) { var clist = (document.cookie+'').split(';'); var cookies = {}; for(var i=0;i list to