function checkEmailsingle() { var result = true; var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$"; var regex = new RegExp(emailReg); var result = regex.test(document.contact_frm.email.value); if(document.contact_frm.email.value=="" || document.contact_frm.email.value.indexOf(" ",0)==0 || result==false) { alert('Please enter a valid e-mail address.'); document.contact_frm.email.select(); document.contact_frm.email.focus(); result = false; } return result; } function checkEmail() { var result = checkEmailsingle(); if (result) if ((document.contact_frm.email.value != document.contact_frm.email1.value)) { alert('Both e-mail address entries must match.'); document.contact_frm.email1.focus(); result = false; } return result; } function checkContactForm() { var result = checkEmail(); if (result != false) { var codeReg = "\\d\\d\\d\\d"; var regex = new RegExp(codeReg); var result = regex.test(document.contact_frm.code.value); if (document.contact_frm.code.value=="" || document.contact_frm.code.value.indexOf(" ",0)==0 || result==false) { alert('Please enter the verification code.'); document.contact_frm.code.focus(); result = false; } } return result; } function checkContactFields() { var result = checkEmail(); if (result) { var elm1 = document.contact_frm.existing_client; if (elm1) if (elm1.options.selectedIndex == 0) { alert('Please fill in all mandatory fields.'); elm1.focus(); result = false; } } if (result) { var flag= true; for (var i=0; iHelp"); hwnd.document.writeln(text); hwnd.document.writeln(""); hwnd.focus(); return false; } function PopupOver(msg, bgcolor) { if (!bgcolor) bgcolor = "#FEFEFE"; var content="

"+msg+"

"; Yoffs=Yoffset; if(ns4) { swnd.document.write(content); swnd.document.close(); swnd.visibility="visible"; } if(ns6) { document.getElementById("popup").innerHTML=content;swnd.display=''; } if(ie4) { document.all("popup").innerHTML=content;swnd.display=''; } } function GetMouse(e) { var x=(ns4||ns6)?e.pageX:event.x+document.body.scrollLeft; swnd.left=x+Xoffset; var y=(ns4||ns6)?e.pageY:event.y+document.body.scrollTop; swnd.top=y+Yoffs; } function PopupHide(){ Yoffs=-1000; if(ns4) { swnd.visibility="hidden"; } else if (ns6||ie4) swnd.display="none"; } function dropFile(node){ if(!document.getElementById) { alert('DOM is not available'); return; } Tr = node; btns = document.getElementsByName('drop'); if(btns.length == 1) { checkForLast(); } else { while (Tr.tagName != 'TR') Tr = Tr.parentNode; Tr.parentNode.removeChild(Tr); checkForLast(); } return false; } function addFile(node){ if(!document.getElementById) { alert('DOM is not available'); return; } Tr = node; while (Tr.tagName != 'TR') Tr = Tr.parentNode; Tbl = Tr.parentNode; var new_node = Tr.cloneNode(true); Tbl.insertBefore(new_node, Tr.nextSibling); checkForLast(); return false; } function checkForLast(){ btns = document.getElementsByName('drop'); for (i = 0; i < btns.length; i++) { btns[i].disabled = (btns.length == 1) ? true : false; } btns = document.getElementsByName('add'); for (i = 0; i < btns.length; i++) { btns[i].disabled = (btns.length == 6) ? true : false; } } function showDomain() { document.contact_frm.domain_name.disabled = (document.contact_frm.existing_client.selectedIndex == 1) ? false : true; document.contact_frm.domain_name.focus(); return true; } function setDeadline() { var deadline1 = document.getElementById("deadline1"); var deadline2 = document.getElementById("deadline2"); if (document.getElementById("service1").checked || document.getElementById("service3").checked || document.getElementById("service4").checked || document.getElementById("service5").checked) { deadline1.style.display = "none"; deadline2.style.display = ""; } else { deadline1.style.display = ""; deadline2.style.display = "none"; } } var popup_wnd; function OpenWindow(url,img,width,height,status) { var isOpera = navigator.userAgent.toLowerCase().indexOf('opera') != -1 ? 1 : 0; if (popup_wnd) { if (isOpera) { if (popup_wnd.toString()!="[object Object]") if (popup_wnd!=null) if (!popup_wnd.closed) popup_wnd.close(); } else if (popup_wnd!=null) if (!popup_wnd.closed) popup_wnd.close(); } if (!width) width = 800; else width+=2; if (!height) height = 600; else height+=2; var wleft = (screen.width-width)/2; var wtop = (screen.height-height)/2; if (!status) status=',status=no,menubar=no,scrollbars=no,resizable=yes'; if (img == 'Y') { popup_wnd = window.open("","popup","width="+width+",height="+height+",top="+wtop+",left="+wleft+status); popup_wnd.document.clear(); popup_wnd.document.write(); popup_wnd.document.writeln("Internet business solutions & b2c e-commerce development"); } else popup_wnd = window.open(url,"popup","width="+width+",height="+height+","+status); popup_wnd.focus(); return false; } var popup_wnd; var isIE = /*@cc_on!@*/false; function OpenPopupWindow(url,img,width,height,status) { var isOpera = navigator.userAgent.toLowerCase().indexOf('opera') != -1 ? 1 : 0; if (popup_wnd) { if (isOpera) { if (popup_wnd.toString()!="[object Object]") if (popup_wnd!=null) if (!popup_wnd.closed) popup_wnd.close(); } else if (popup_wnd!=null) if (!popup_wnd.closed) popup_wnd.close(); } if (!width) width = 800; else width+=2; if (!height) height = 600; else height+=2; if (!status) status='status=no,menubar=no,scrollbars=no,resizable=yes'; var wleft = (screen.width - width)/2; var wtop = (screen.height - height)/2; if (wleft < 0) wleft = 0; if (wtop < 0) wtop = 0; if (img == 'Y') { popup_wnd = window.open("","popup","width="+width+",height="+height+",left="+wleft+",top="+wtop+","+status); popup_wnd.document.clear(); popup_wnd.document.write(); popup_wnd.document.writeln("Internet business solutions & b2c e-commerce development"); } else { if (isIE) width += 34; else { width += 20; if (height > 600) width+=10; } popup_wnd = window.open(url,"popup","width="+width+",height="+height+",left="+wleft+",top="+wtop+","+status); } popup_wnd.moveTo(wleft, wtop); popup_wnd.focus(); return false; } function showNavigationtStatic() { document.write('
HOMEPRODUCTSSERVICESSUPPORT
'); } function visibleBox(id) { var elm1 = document.getElementById("open"+id); var elm2 = document.getElementById("close"+id); if (elm1) { if (elm1.style.display == "") elm1.style.display = "none"; else elm1.style.display = ""; } if (elm2) { if (elm2.style.display == "") elm2.style.display = "none"; else elm2.style.display = ""; } } function HideBox(id) { var elm1 = document.getElementById("open"+id); var elm2 = document.getElementById("close"+id); if (elm1) elm1.style.display = ""; if (elm2) elm2.style.display = "none"; } function func_get_width() { var myWidth = 0; if (typeof( window.innerWidth ) == 'number') { myWidth = window.innerWidth; } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) { myWidth = document.documentElement.clientWidth; } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) { myWidth = document.body.clientWidth; } return myWidth; } function funcResize() { var screen_width = func_get_width(); var elm1 = document.getElementById("sp1"); var elm2 = document.getElementById("sp2"); var elm3 = document.getElementById("main"); if (elm1 && elm2) { if (screen_width>799) { elm1.style.width = "40%"; elm2.style.width = "30px"; } else { elm1.style.width = ""; elm2.style.width = "20px"; } } /* if (elm3) if (screen_width> 1200) elm3.style.width = "1070px"; else elm3.style.width = ""; */ } function THints (a_items, a_cfg) { if (!a_items) a_items = []; if (!a_cfg) a_cfg = []; this.a_cfg = a_cfg; this.a_elements = []; this.a_hints = []; this.show = f_hintShow; this.showD = f_hintShowNow; this.hide = f_hintHide; this.hideD = f_hintHideNow; // register the object in global collection this.n_id = A_HINTS.length; A_HINTS[this.n_id] = this; if (!b_ie5 && !b_ie6) a_cfg.IEfix = false; // generate HTML for (var s_id in a_items) { s_id = String(s_id).replace(/\W/g,''); document.write( '' ); if (a_cfg.IEfix) document.write( '' ); } // assign mouseover event if (document.addEventListener) { document.addEventListener('mousemove', f_onMouseMove, true); window.addEventListener('scroll', f_onwindowChange, true); window.addEventListener('resize', f_onwindowChange, true); } else { document.onmousemove = f_onMouseMove; window.onscroll = f_onwindowChange; window.onresize = f_onwindowChange; } } function f_hintShow(s_id, e_element) { // cancel previous delay if (this.e_timer) { clearTimeout(this.e_timer); this.e_timer = null; } var s_id = String(s_id).replace(/\W/g,''); if (!this.a_hints[s_id]) this.a_hints[s_id] = getElement('h' + this.n_id + '_' + s_id); if (!this.a_hints[s_id]) this.a_hints[s_id] = getElement(s_id); if (!this.a_hints[s_id]) throw new Error('001', 'Can not find the hint with ID=' + s_id); this.a_elements[s_id] = e_element; var n_showDelay = this.a_cfg.show_delay == null ? 200 : this.a_cfg.show_delay; if (!n_showDelay) return this.showD(s_id, e_element); this.e_timer = setTimeout('A_HINTS[' + this.n_id + '].showD("' + s_id + '")', n_showDelay); } function f_hintShowNow(s_id, e_element) { if (s_id == this.o_lastHintID) return; if (e_element) this.a_elements[s_id] = e_element; if (this.o_lastHintID != null) this.hideD(this.o_lastHintID); f_hintPosition(this.a_elements[s_id], this.a_hints[s_id], this.a_cfg); this.o_lastIframe = getElement('h' + this.n_id + '_' + s_id + '_if'); if (this.o_lastIframe) this.o_lastIframe.style.visibility = 'visible'; // Transition in IE if (this.a_cfg.IEtrans && this.a_cfg.IEtrans[0]) { try { var e_currTrans = this.a_hints[s_id].filters.item(0); e_currTrans.apply(); this.a_hints[s_id].style.visibility = 'visible'; e_currTrans.play(); } catch(e) { this.a_hints[s_id].style.visibility = 'visible'; }; } else this.a_hints[s_id].style.visibility = 'visible'; this.o_lastHintID = s_id; } function f_hintHide(s_id) { if (this.e_timer) { clearTimeout(this.e_timer); this.e_timer = null; } if (s_id != null) s_id = String(s_id).replace(/\W/g,''); else if (this.o_lastHintID) s_id = this.o_lastHintID; else return; if (!this.a_hints[s_id]) throw new Error('001', 'Can not find the hint with ID=' + s_id); var n_hideDelay = this.a_cfg.hide_delay == null ? 200 : this.a_cfg.hide_delay; if (!n_hideDelay) return this.hideD(s_id); this.e_timer = setTimeout('A_HINTS[' + this.n_id + '].hideD("' + s_id + '")', n_hideDelay); } function f_hintHideNow(s_id) { // Transition in IE if (this.a_cfg.IEtrans && this.a_cfg.IEtrans[1]) { try { var e_currTrans = this.a_hints[s_id].filters.item(this.a_cfg.IEtrans[0] ? 1 : 0); e_currTrans.apply(); this.a_hints[s_id].style.visibility = 'hidden'; e_currTrans.play(); } catch(e) { this.a_hints[s_id].style.visibility = 'hidden'; }; } else this.a_hints[s_id].style.visibility = 'hidden'; this.o_lastHintID = null; if (this.o_lastIframe) { this.o_lastIframe.style.visibility = 'hidden'; this.o_lastIframe = null; } } function f_hintPosition (e_element, e_hint, a_params) { // validate params if (!e_hint) throw new Error('001', 'hint object reference is missing in parameters'); if (!a_params) a_params = []; var a_ = { n_elementWidth: e_element ? e_element.offsetWidth : 0, n_elementHeight: e_element ? e_element.offsetHeight : 0, n_elementLeft: e_element ? f_getPosition(e_element, 'Left') : n_mouseX, n_elementTop: e_element ? f_getPosition(e_element, 'Top') : n_mouseY, n_hintWidth: e_hint.offsetWidth, n_hintHeight: e_hint.offsetHeight, n_hintLeft: 0, n_hintTop : 0, n_clientWidth: f_clientWidth(), n_clientHeight: f_clientHeight(), n_scrollTop: f_scrollTop(), n_scrollLeft: f_scrollLeft(), s_align: a_params.align ? a_params.align : 'tlbl', n_gap: a_params.gap == null ? 5 : a_params.gap, n_margin: a_params.margin == null ? 10 : a_params.margin }; f_applyAlign(a_); // smart positioning is on by default if (a_params.smart || a_params.smart == null) f_checkFit(a_); e_hint.style.left = a_.n_hintLeft + 'px'; e_hint.style.top = a_.n_hintTop + 'px'; // synchronize iframe if exists var e_iframe = getElement(e_hint.id + '_if'); if (e_iframe) { e_iframe.style.left = a_.n_hintLeft + 'px'; e_iframe.style.top = a_.n_hintTop + 'px'; e_iframe.style.width = a_.n_hintWidth + 'px'; e_iframe.style.height = a_.n_hintHeight + 'px'; } } /* corrects hints positioning to maximize the visibility */ function f_checkFit (a_) { // check if correction is required if (a_.n_spaceT >= 0 && a_.n_spaceR >= 0 && a_.n_spaceB >= 0 && a_.n_spaceL >= 0) return; // determine if hint clears element for horisontal shifting var b_horShift = (a_.n_hintTop + a_.n_hintHeight + a_.n_gap <= a_.n_elementTop) || (a_.n_elementTop + a_.n_elementHeight + a_.n_gap <= a_.n_hintTop); // resolve by horizontal shifting if (b_horShift) { if (a_.n_spaceL < 0 || (a_.n_spaceL + a_.n_spaceR < 0)) a_.n_hintLeft = a_.n_scrollLeft + a_.n_margin; else if (a_.n_spaceR < 0) a_.n_hintLeft = a_.n_scrollLeft + a_.n_clientWidth - a_.n_margin - a_.n_hintWidth; } // determine if hint clears element for vertical shifting var b_verShift = (a_.n_hintLeft + a_.n_hintWidth + a_.n_gap <= a_.n_elementLeft) || (a_.n_elementLeft + a_.n_elementWidth + a_.n_gap <= a_.n_hintLeft); // resolve by vertical shifting if (b_verShift) { if (a_.n_spaceT < 0 || (a_.n_spaceT + a_.n_spaceB < 0)) a_.n_hintTop = a_.n_scrollTop + a_.n_margin; else if (a_.n_spaceB < 0) a_.n_hintTop = a_.n_scrollTop + a_.n_clientHeight - a_.n_margin - a_.n_hintHeight; } // resolve horisontal collision by mirroring if (!b_horShift && (a_.n_spaceL < 0 || a_.n_spaceR < 0)) { // save current overlap var n_overlap = a_.n_spaceL + a_.n_spaceR, n_hintLeft = a_.n_hintLeft, n_hintTop = a_.n_hintTop; // mirror the align a_.s_align = a_.s_align.replace('r', '-'); a_.s_align = a_.s_align.replace('l', 'r'); a_.s_align = a_.s_align.replace('-', 'l'); f_applyAlign(a_); // restore old coordinate if mirrored hint is less visible if (Math.min(a_.n_spaceL, a_.n_spaceR) < n_overlap) a_.n_hintLeft = n_hintLeft; a_.n_hintTop = n_hintTop; } // resolve vertical collision by mirroring if (!b_verShift && (a_.n_spaceT < 0 || a_.n_spaceB < 0)) { var n_overlap = Math.min(a_.n_spaceT, a_.n_spaceB), n_hintLeft = a_.n_hintLeft, n_hintTop = a_.n_hintTop; // mirror the align a_.s_align = a_.s_align.replace('t', '-'); a_.s_align = a_.s_align.replace('b', 't'); a_.s_align = a_.s_align.replace('-', 'b'); f_applyAlign(a_); // restore old coordinate if mirrored hint is less visible if (Math.min(a_.n_spaceT, a_.n_spaceB) < n_overlap) a_.n_hintTop = n_hintTop; a_.n_hintLeft = n_hintLeft; } } /* decodes the align parameter and calculates the coordinates of the hint */ function f_applyAlign (a_) { if (!re_align.exec(a_.s_align)) throw new Error('001', 'Invalid format of align parameter: ' + a_.s_align); // decode alignment var n_align = RegExp.$1, n_top = a_.n_elementTop; // element vertical align if (n_align == 'm') n_top += Math.round(a_.n_elementHeight / 2); else if (n_align == 'b') n_top += a_.n_elementHeight + a_.n_gap; else n_top -= a_.n_gap; // hint vertical align n_align = RegExp.$3; if (n_align == 'm') n_top -= Math.round(a_.n_hintHeight / 2); else if (n_align == 'b') n_top -= a_.n_hintHeight; // element horizontal align var n_left = a_.n_elementLeft; n_align = RegExp.$2; if (n_align == 'c') n_left += Math.round(a_.n_elementWidth / 2); else if (n_align == 'r') n_left += a_.n_elementWidth + a_.n_gap; else n_left -= a_.n_gap; // hint horisontal align n_align = RegExp.$4; if (n_align == 'c') n_left -= Math.round(a_.n_hintWidth / 2); else if (n_align == 'r') n_left -= a_.n_hintWidth; a_.n_spaceT = n_top - a_.n_scrollTop - a_.n_margin, a_.n_spaceB = a_.n_clientHeight + a_.n_scrollTop - a_.n_margin - n_top - a_.n_hintHeight, a_.n_spaceL = n_left - a_.n_scrollLeft - a_.n_margin, a_.n_spaceR = a_.n_clientWidth + a_.n_scrollLeft - a_.n_margin - n_left - a_.n_hintWidth; a_.n_hintLeft = n_left; a_.n_hintTop = n_top; } function f_onMouseMove(e_event) { if (!e_event && window.event) e_event = window.event; if (!e_event) return true; n_mouseX = e_event.pageX ? e_event.pageX : e_event.clientX + f_scrollLeft(); n_mouseY = e_event.pageY ? e_event.pageY + 2 : e_event.clientY + f_scrollTop(); return f_onwindowChange(); } function f_onwindowChange() { var o_hint; for (var i = 0; i < A_HINTS.length; i++) o_hint = A_HINTS[i]; if (o_hint.a_cfg.follow && o_hint.o_lastHintID) f_hintPosition(o_hint.a_elements[o_hint.o_lastHintID], o_hint.a_hints[o_hint.o_lastHintID], o_hint.a_cfg); return true; } /* browser abstraction layer */ function f_getPosition (e_elemRef, s_coord) { var n_pos = 0, n_offset, e_elem = e_elemRef; while (e_elem) { n_offset = e_elem["offset" + s_coord]; n_pos += n_offset; e_elem = e_elem.offsetParent; } // margin correction in some browsers if (b_ieMac) n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); else if (b_safari && (!this.o_block.b_relative || this.n_depth)) n_pos -= n_offset; e_elem = e_elemRef; while (e_elem != document.body) { n_offset = e_elem["scroll" + s_coord]; if (n_offset && e_elem.style.overflow == 'scroll') n_pos -= n_offset; e_elem = e_elem.parentNode; } return n_pos; } function f_clientWidth() { if (typeof(window.innerWidth) == 'number') return window.innerWidth; if (document.documentElement && document.documentElement.clientWidth) return document.documentElement.clientWidth; if (document.body && document.body.clientWidth) return document.body.clientWidth; return null; } function f_clientHeight() { if (typeof(window.innerHeight) == 'number') return window.innerHeight; if (document.documentElement && document.documentElement.clientHeight) return document.documentElement.clientHeight; if (document.body && document.body.clientHeight) return document.body.clientHeight; return null; } function f_scrollLeft() { if (typeof(window.pageXOffset) == 'number') return window.pageXOffset; if (document.body && document.body.scrollLeft) return document.body.scrollLeft; if (document.documentElement && document.documentElement.scrollLeft) return document.documentElement.scrollLeft; return 0; } function f_scrollTop() { if (typeof(window.pageYOffset) == 'number') return window.pageYOffset; if (document.body && document.body.scrollTop) return document.body.scrollTop; if (document.documentElement && document.documentElement.scrollTop) return document.documentElement.scrollTop; return 0; } getElement = document.all ? function (s_id) { return document.all[s_id] } : function (s_id) { return document.getElementById(s_id) }; // global variables var A_HINTS = [], n_mouseX = 0, n_mouseY = 0, s_userAgent = navigator.userAgent.toLowerCase(), re_align = /^([tmb])([lcr])([tmb])([lcr])$/; var b_mac = s_userAgent.indexOf('mac') != -1, b_ie5 = s_userAgent.indexOf('msie 5') != -1, b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1, b_ieMac = b_mac && b_ie5, b_safari = b_mac && s_userAgent.indexOf('safari') != -1, b_opera6 = s_userAgent.indexOf('opera 6') != -1; var HINTS_CFG = { 'wise' : true, // don't go off screen, don't overlap the object in the document 'margin' : 20, // minimum allowed distance between the hint and the window edge (negative values accepted) 'gap' : 10, // minimum allowed distance between the hint and the origin (negative values accepted) 'align' : 'tcbl', // bctl - align of the hint and the origin (by first letters origin's top|middle|bottom left|center|right to hint's top|middle|bottom left|center|right) 'css' : 'hintsClass', // a style class name for all hints, applied to DIV element (see style section in the header of the document) 'show_delay' : 200, // a delay between initiating event (mouseover for example) and hint appearing 'hide_delay' : 200, // a delay between closing event (mouseout for example) and hint disappearing 'follow' : false, // hint follows the mouse as it moves 'z-index' : 100, // a z-index for all hint layers 'IEfix' : false, // fix IE problem with windowed controls visible through hints (activate if select boxes are visible through the hints) 'IEtrans' : ['blendTrans(DURATION=.3)', 'blendTrans(DURATION=.3)'], // [show transition, hide transition] - nice transition effects, only work in IE5+ 'opacity' : 100 // opacity of the hint in %% }; var HINTS_ITEMS = [ '"New web-site from scratch" means you want us to create a web-site of any kind and make it ready to go live. Since creation of a web-site from the very beginning is quite a complex process it may include multiple stages like:
• web-design creation and integration;
• integration of a pre-made design template into selected platform;
• filling in the product catalog;
• developing desired features;
• installation onto the web-hosting;
• etc.', 'Select this service if you want us to customize software you are using as platform for your web-site. This means adding new and changing existing features of the platform software.', 'You have a web-site already, but does not like it or want to improve its appearance. We can create a new look for your existing web-site, adapt your current design to make it more "e-commerce" and suitable for shopping cart software.', 'You do not want to change design of your web-site a lot, but want to enhance it a bit by adding some new graphic design elements, improve layout of pages, set new styles and fonts, etc.', 'This service is useful for startups companies and companies willing to change the way their customers recognize them by logo and corporate style.', 'You have a web-site which visitors recognize by unique and outstanding design and want to integrate some software (e.g. shopping cart software) into it seamlessly.', 'key pages include home page, product details, products listings (categories, manufacturers, search results), cart and checkout pages', 'for example, e-mail notifications, image pop-up window', 'Consultation on small modifications of the software: possible if the required changes take about 30 minutes to describe', 'Consultation on medium modifications of the software: possible if the required changes take about an hour to describe', 'Application of a patch fixing a bug in X-Cart/LiteCommerce store (patches themselves are provided for free)', 'Additional services costing more than the other tasks or not included into original tech support duties', 'Installation tasks fulfilled within tech support service', 'Installation of any 3rd-party web-software like blog, forum, cms etc.', 'Installation & configuration of server software: Apache Web Server, NginX Web Server, PHP, MySQL', 'SSL certificate installation (including CSR generation and assistance in purchasing)', 'Zero-downtime transfer of online store to a different hosting', 'Transfer of online store along with extensive custom code modifications', 'Transfer of Sales-n-Stats to a different hosting', 'Transfer of LiteCommerce ASPE to a different hosting', 'Performance benchmarking of Smarty, PHP, MySQL along with general X-Cart and web server speed up measures', 'Application-focused server configuration and performance speed-up', 'Check of an online store\'s readiness for indexing by major search engines', 'Check and fix of possible web server and software components security vulnerabilities', 'General questions: explanations of our policies such as support-point system basics, ticket processing rules, etc; description of our services, assistance on HelpDesk and forum usage, and so on.', 'Consultation on software functionalities, explanation of existing functionalities and features', 'Product waranty issues: bugs revealing and further providing of patches', 'Problem-solving which involves investigation on client\'s store', 'Problem-solving which involves investigation on client\'s store and server', 'Problem-solving which involves code debugging and protracted debug data monitoring', 'X-Cart SEO enchancements: SEO-friendly URLs, custom TITLE and META tags for products, categories and static pages, robots.txt configuration, XML sitemap creation', 'Google Analytics installation service for X-Cart/LiteCommerce stores', 'Technical advice (explanations, instructions) on the use of X-Cart/LiteCommerce/SnS default features', 'Instructions on changing software features/design. Available if the changes take less than 30 minutes to elaborate. Does not involve any changes on client\'s server.', 'Troubleshooting involving investigation on client\'s store and/or server', 'Troubleshooting involving investigation on client\'s server, code debugging and protracted debug data monitoring', 'Additional services not included into the list. Usually cost more that the specified tasks, therefore discussed with clients first.', 'The number of provided concepts on the first step. If none of the sketches is chosen, we will create a new set of sketches from a scratch one more time, based on your corrections and remarks.', 'Internet:', 'Printing purpose:', 'The number of possible iterations for the chosen concept (in order to finalize details and produce the final outcome).', 'A vector image of your logo (meaning you can resize it as you like without compromising print quality and manipulate it should you ever need to make changes to your logo).', 'A high-definition raster format (used in various raster image editors).', 'A document specifying the CMYK model of a logo (along with PANTONE color table, if possible).', 'A document containing examples of logo usage in business cards, brochures, letter-heads, greeting cards, envelopes etc.', 'We will develop a graphic prototype of the flyout menu that can be used later during integration of the design with your store.' ]; var myHint = new THints (HINTS_ITEMS, HINTS_CFG); function UpdateById(text,id) { if (document.getElementById) { x = document.getElementById(id); if (x) { x.innerHTML = ''; x.innerHTML = text; } } else if (document.all) { x = document.all[id]; if (x) x.innerHTML = text; } else if (document.layers) { x = document.layers[id]; if (x) { x.document.open(); x.document.write(text); x.document.close(); } } } if (window.addEventListener) { window.addEventListener("load", funcResize, false) window.addEventListener("resize", funcResize, false) } else if (window.attachEvent) { window.attachEvent("onload", funcResize); window.attachEvent("onresize", funcResize); } else if (document.getElementById) { window.onload=funcResize; window.onresize=funcResize; } function TrackAction(action) { if (_gat) { var pageTracker = _gat._getTracker("UA-5826167-5"); var prefix = "/ga_"; var action1 = ""; var action2 = ""; if (action == 'try2buy' || action == 'contact' || action == 'rfq') { action1 = prefix + 'lead'; if (action != 'try2buy') action2 = prefix + action; } if (action1) pageTracker._trackPageview(action1); if (action2) pageTracker._trackPageview(action2); } return true; }