Has anyone successfully embedded Mailchimp Evil Pop-up codes to Cs-Cart 4.0.2?
I created pop-up.js file and uploaded to js/addons/my_changes/
<br />
var fnames = new Array();var ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[1]='FNAME';ftypes[1]='text';fnames[2]='LNAME';ftypes[2]='text';<br />
try {<br />
var jqueryLoaded=jQuery;<br />
jqueryLoaded=true;<br />
} catch(err) {<br />
var jqueryLoaded=false;<br />
}<br />
var head= document.getElementsByTagName('head')[0];<br />
if (!jqueryLoaded) {<br />
var script = document.createElement('script');<br />
script.type = 'text/javascript';<br />
script.src = '//mydomain.com/js/lib/jquery/jquery.min.js';<br />
head.appendChild(script);<br />
if (script.readyState && script.onload!==null){<br />
script.onreadystatechange= function () {<br />
if (this.readyState == 'complete') mce_preload_check();<br />
} <br />
}<br />
}<br />
<br />
var err_style = '';<br />
try{<br />
err_style = mc_custom_error_style;<br />
} catch(e){<br />
err_style = '#mc_embed_signup input.mce_inline_error{border-color:#6B0505;} #mc_embed_signup div.mce_inline_error{margin: 0 0 1em 0; padding: 5px 10px; background-color:#6B0505; font-weight: bold; z-index: 1; color:#fff;}';<br />
}<br />
var head= document.getElementsByTagName('head')[0];<br />
var style= document.createElement('style');<br />
style.type= 'text/css';<br />
if (style.styleSheet) {<br />
style.styleSheet.cssText = err_style;<br />
} else {<br />
style.appendChild(document.createTextNode(err_style));<br />
}<br />
head.appendChild(style);<br />
setTimeout('mce_preload_check();', 250);<br />
<br />
var mce_preload_checks = 0;<br />
function mce_preload_check(){<br />
if (mce_preload_checks>40) return;<br />
mce_preload_checks++;<br />
try {<br />
var jqueryLoaded=jQuery;<br />
} catch(err) {<br />
setTimeout('mce_preload_check();', 250);<br />
return;<br />
}<br />
var script = document.createElement('script');<br />
script.type = 'text/javascript';<br />
script.src = 'http://downloads.mailchimp.com/js/jquery.form-n-validate.js';<br />
head.appendChild(script);<br />
try {<br />
var validatorLoaded=jQuery("#fake-form").validate({});<br />
} catch(err) {<br />
setTimeout('mce_preload_check();', 250);<br />
return;<br />
}<br />
mce_init_form();<br />
}<br />
function mce_init_form(){<br />
jQuery(document).ready( function($) {<br />
var options = { errorClass: 'mce_inline_error', errorElement: 'div', onkeyup: function(){}, onfocusout:function(){}, onblur:function(){} };<br />
var mce_validator = $("#mc-embedded-subscribe-form").validate(options);<br />
$("#mc-embedded-subscribe-form").unbind('submit');//remove the validator so we can get into beforeSubmit on the ajaxform, which then calls the validator<br />
options = { url: 'http://mydomain.us7.list-manage1.com/subscribe/post-json?u=c4a45f2c927c9365b5032bb4e&id=8a35c6c9a2&c=?', type: 'GET', dataType: 'json', contentType: "application/json; charset=utf-8",<br />
beforeSubmit: function(){<br />
$('#mce_tmp_error_msg').remove();<br />
$('.datefield','#mc_embed_signup').each(<br />
function(){<br />
var txt = 'filled';<br />
var fields = new Array();<br />
var i = 0;<br />
$(':text', this).each(<br />
function(){<br />
fields[i] = this;<br />
i++;<br />
});<br />
$(':hidden', this).each(<br />
function(){<br />
var bday = false;<br />
if (fields.length == 2){<br />
bday = true;<br />
fields[2] = {'value':1970};//trick birthdays into having years<br />
}<br />
if ( fields[0].value=='MM' && fields[1].value=='DD' && (fields[2].value=='YYYY' || (bday && fields[2].value==1970) ) ){<br />
this.value = '';<br />
} else if ( fields[0].value=='' && fields[1].value=='' && (fields[2].value=='' || (bday && fields[2].value==1970) ) ){<br />
this.value = '';<br />
} else {<br />
if (/\[day\]/.test(fields[0].name)){<br />
this.value = fields[1].value+'/'+fields[0].value+'/'+fields[2].value; <br />
} else {<br />
this.value = fields[0].value+'/'+fields[1].value+'/'+fields[2].value;<br />
}<br />
}<br />
});<br />
});<br />
$('.phonefield-us','#mc_embed_signup').each(<br />
function(){<br />
var fields = new Array();<br />
var i = 0;<br />
$(':text', this).each(<br />
function(){<br />
fields[i] = this;<br />
i++;<br />
});<br />
$(':hidden', this).each(<br />
function(){<br />
if ( fields[0].value.length != 3 || fields[1].value.length!=3 || fields[2].value.length!=4 ){<br />
this.value = '';<br />
} else {<br />
this.value = 'filled';<br />
}<br />
});<br />
});<br />
return mce_validator.form();<br />
},<br />
success: mce_success_cb<br />
};<br />
$('#mc-embedded-subscribe-form').ajaxForm(options);<br />
<br />
$('#mc_embed_signup').hide();<br />
cks = document.cookie.split( ';' );<br />
var show=true;<br />
for(i=0;i<cks.length;i++){<br />
parts = cks[i].split('=');<br />
if( parts[0].indexOf('MCEvilPopupClosed')!= -1 ) show = false;<br />
}<br />
if (show){<br />
$('#mc_embed_signup a.mc_embed_close').show();<br />
setTimeout( function(){ $('#mc_embed_signup').fadeIn();} , 2000);<br />
$('#mc_embed_signup a.mc_embed_close').click(function(){ mcEvilPopupClose();});<br />
}<br />
<br />
$(document).keydown(function(e){<br />
if (e == null) {<br />
keycode = event.keyCode;<br />
} else {<br />
keycode = e.which;<br />
}<br />
if(keycode == 27){<br />
mcEvilPopupClose();<br />
}<br />
});<br />
<br />
function mcEvilPopupClose(){<br />
$('#mc_embed_signup').hide();<br />
var now = new Date();<br />
var expires_date = new Date( now.getTime() + 31536000000 );<br />
document.cookie = 'MCEvilPopupClosed=yes;expires=' + expires_date.toGMTString()+';path=/';<br />
}<br />
<br />
});<br />
}<br />
function mce_success_cb(resp){<br />
$('#mce-success-response').hide();<br />
$('#mce-error-response').hide();<br />
if (resp.result=="success"){<br />
$('#mce-'+resp.result+'-response').show();<br />
$('#mce-'+resp.result+'-response').html(resp.msg);<br />
$('#mc-embedded-subscribe-form').each(function(){<br />
this.reset();<br />
});<br />
} else {<br />
var index = -1;<br />
var msg;<br />
try {<br />
var parts = resp.msg.split(' - ',2);<br />
if (parts[1]==undefined){<br />
msg = resp.msg;<br />
} else {<br />
i = parseInt(parts[0]);<br />
if (i.toString() == parts[0]){<br />
index = parts[0];<br />
msg = parts[1];<br />
} else {<br />
index = -1;<br />
msg = resp.msg;<br />
}<br />
}<br />
} catch(e){<br />
index = -1;<br />
msg = resp.msg;<br />
}<br />
try{<br />
if (index== -1){<br />
$('#mce-'+resp.result+'-response').show();<br />
$('#mce-'+resp.result+'-response').html(msg); <br />
} else {<br />
err_id = 'mce_tmp_error_msg';<br />
html = '<div id="'+err_id+'" style="'+err_style+'"> '+msg+'</div>';<br />
<br />
var input_id = '#mc_embed_signup';<br />
var f = $(input_id);<br />
if (ftypes[index]=='address'){<br />
input_id = '#mce-'+fnames[index]+'-addr1';<br />
f = $(input_id).parent().parent().get(0);<br />
} else if (ftypes[index]=='date'){<br />
input_id = '#mce-'+fnames[index]+'-month';<br />
f = $(input_id).parent().parent().get(0);<br />
} else {<br />
input_id = '#mce-'+fnames[index];<br />
f = $().parent(input_id).get(0);<br />
}<br />
if (f){<br />
$(f).append(html);<br />
$(input_id).focus();<br />
} else {<br />
$('#mce-'+resp.result+'-response').show();<br />
$('#mce-'+resp.result+'-response').html(msg);<br />
}<br />
}<br />
} catch(e){<br />
$('#mce-'+resp.result+'-response').show();<br />
$('#mce-'+resp.result+'-response').html(msg);<br />
}<br />
}<br />
}
```<br />
<br />
Then, I add {style src="[color=#000000][font=HiraKakuProN-W3][size=3]//cdn-images.mailchimp.com/embedcode/classic-081711.css[/size][/font][/color]"} in basic/templates/addons/my_changes/hooks/index/styles.override.tpl<br />
<br />
And, I pasted following lines to basic/css/addons/my_changes/styles.css<br />
<br />
<br />
[color=#000000][font=HiraKakuProN-W3][size=3]```php
<br />
#mc_embed_signup{position:absolute; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0,.<img src="upload://oPnLkqdJc33Dyf2uA3TQwRkfhwd.gif" class="bbc_emoticon" alt="8)">;display:none;z-index:10000; }<br />
#mc_embed_signup form{position:fixed; top:10%; left:50%; width:50%; margin-left:-25%; font:normal 100% Helvetica,Arial,sans-serif; font-size:14px; border-radius:4px; border:none; padding:10px 20px; background-color:#fff; color:#000; text-align:left;max-height:400px;overflow-y:auto;overflow-x:hidden;}<br />
#mc_embed_signup a.mc_embed_close{background:transparent url(http://downloads.mailchimp.com/img/closebox.png) no-repeat; display:block; height:30px; width:30px; text-indent:-999em; position:absolute; top:-10px; right:-10px; display:none; }<br />
/* Add your own MailChimp form style overrides in your site stylesheet or in this style block.<br />
We recommend moving this block and the preceding CSS link to the HEAD of your HTML file. */
```[/size][/font][/color]<br />
<br />
Then, went to Layout > Homepage and created a new block and pasted the codes as follows:<br />
<br />
[color=#000000][font=HiraKakuProN-W3][size=3]```php
<br />
<div id="mc_embed_signup"><br />
<form action="http://mydomain.us7.list-manage.com/subscribe/post?u=c4a45f2c927c9365b5032bb4e&id=8a35c6c9a2" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate><br />
<h2>Subscribe to our mailing list</h2><br />
<div class="indicates-required"><span class="asterisk">*</span> indicates required</div><br />
<div class="mc-field-group"><br />
<label for="mce-EMAIL">Email Address <span class="asterisk">*</span><br />
</label><br />
<input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL"><br />
</div><br />
<a href="#" id="mc_embed_close" class="mc_embed_close">Close</a> <div id="mce-responses" class="clear"><br />
<div class="response" id="mce-error-response" style="display:none"></div><br />
<div class="response" id="mce-success-response" style="display:none"></div><br />
</div> <div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div><br />
</form><br />
</div><br />
```[/size][/font][/color]<br />
<br />
[color=#000000][font=HiraKakuProN-W3][size=3]The error message is:<br />
<br />
```php
Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "/home/directory/public_html/folder1/design/themes/basic/templates/index.tpl" on line 26 "#mc_embed_signup{position:absolute; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0,.<img src="upload://oPnLkqdJc33Dyf2uA3TQwRkfhwd.gif" class="bbc_emoticon" alt="8)">;display:none;z-index:10000; }" - Unexpected ":", expected one of: "}" , " " , ATTR' in /home/directory/public_html/folder1/app/lib/other/smarty/sysplugins/smarty_internal_templatecompilerbase.php:665 Stack trace: #0 /home/directory/public_html/folder1/app/lib/other/smarty/sysplugins/smarty_internal_templateparser.php(3144): Smarty_Internal_TemplateCompilerBase->trigger_template_error() #1 /home/directory/public_html/folder1/app/lib/other/smarty/sysplugins/smarty_internal_templateparser.php(3209): Smarty_Internal_Templateparser->yy_syntax_error(2, ':') #2 /home/directory/public_html/folder1/app/lib/other/smarty/sysplugins/smarty_internal_smartytemplatecompiler.php(105): Smarty_Internal_Templateparser->doParse(2, ':') #3 /home/directory/public_html/folder1/app/l in [b]/home/[/b]directory/public_html/folder1/app/lib/other/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 665
```[/size][/font][/color]<br />
<br />
[color=#000000][font=HiraKakuProN-W3][size=3]If you know how to make this work, please kindly teach me how to do it.[/size][/font][/color]<br />
[color=#000000][font=HiraKakuProN-W3][size=3]Thank you in advance![/size][/font][/color]