I am getting CSS populated automaticaly - html
I am using HTML Email creator/editor(I cannot share the name). I run into the problem that when I edit the email content and save it i get this bunch of CSS automatically:
#ad-4, #ad-4-300x90, #ad-5-images, #ad-55, #ad-63, #ad-635x40-1, #ad-655, #ad-7, #ad-728, #ad-728-90, #ad-728x90-1, #ad-728x90-leaderboard-top, #ad-728x90-top, #ad-728x90-top0, #ad-732, #ad-734, #ad-74, #ad-88, #ad-88-wrap, #ad-970, #ad-98, #ad-a, #ad-a1, #ad-abs-b-0, #ad-abs-b-1, #ad-abs-b-10, #ad-abs-b-2, #ad-abs-b-3, #ad-abs-b-4, #ad-abs-b-5, #ad-abs-b-6, #ad-abs-b-7, #ad-absolute-160, #ad-ads, #ad-adsensemedium, #ad-advertorial, #ad-affiliate, #ad-around-the-web, #ad-article, #ad-article-in, #ad-aside-1, #ad-atf-mid, #ad-atf-top, #ad-ban, #ad-banner, #ad-banner-1, #ad-banner-970, #ad-banner-980, #ad-banner-atf, #ad-banner-body-top { display: none!important; }
#ad-banner-bottom, #ad-banner-image, #ad-banner-placement, #ad-banner-top, #ad-banner-wrap, #ad-bar, #ad-base, #ad-beauty, #ad-below-content, #ad-big, #ad-bigbox, #ad-bigsize, #ad-billboard, #ad-billboard-atf, #ad-billboard-bottom, #ad-blade, #ad-block, #ad-block-125, #ad-block-bottom, #ad-block-container, #ad-border, #ad-bottom-300x250, #ad-bottom-banner, #ad-bottom-right-container, #ad-bottom-wrapper, #ad-bottomright, #ad-box, #ad-box-1, #ad-box-2, #ad-box-bottom, #ad-box-first, #ad-box-halfpage, #ad-box-leaderboard, #ad-box-rectangle, #ad-box-rectangle-2, #ad-box-right, #ad-box-second, #ad-box1, #ad-box2, #ad-boxATF, #ad-boxes, #ad-br-container, #ad-bs, #ad-btf-bot, #ad-btm, #ad-buttons, #ad-campaign, #ad-carousel, #ad-case, #ad-center { display: none!important; }
#ad-circfooter, #ad-code, #ad-col, #ad-colB-1, #ad-column, #ad-container-1, #ad-container-2, #ad-container-adaptive-1, #ad-container-adaptive-3, #ad-container-fullpage, #ad-container-inner, #ad-container-leaderboard, #ad-container-mpu, #ad-container-outer, #ad-container-overlay, #ad-container1, #ad-contentad, #ad-cube-Bottom, #ad-cube-Middle, #ad-cube-sec, #ad-cube-top, #ad-desktop-wrap, #ad-discover, #ad-display-ad, #ad-div-leaderboard, #ad-double-spotlight-container, #ad-drawer, #ad-e-container, #ad-ear, #ad-extra-comments, #ad-extra-flat, #ad-f-container, #ad-featured-right, #ad-first-post, #ad-five, #ad-five-75x50s, #ad-flex-first, #ad-flex-top, #ad-footer, #ad-footer-728x90, #ad-footprint-160x600, #ad-for-map, #ad-frame, #ad-framework-top, #ad-front-btf, #ad-front-footer, #ad-front-page-160x600-placeholder, #ad-front-sponsoredlinks, #ad-full-width, #ad-fullbanner-btf { display: none!important; }
#ad-fullbanner-outer, #ad-fullbanner2, #ad-fullbanner2-billboard-outer, #ad-fullwidth, #ad-giftext, #ad-globalleaderboard, #ad-google-chrome-sidebar, #ad-googleAdSense, #ad-gpt-bottomrightrec, #ad-gpt-leftrec, #ad-gpt-rightrec, #ad-gutter-left, #ad-gutter-right, #ad-halfpage, #ad-header-left, #ad-header-mad, #ad-header-mobile, #ad-header-right, #ad-holder, #ad-homepage-content-well, #ad-homepage-top-wrapper, #ad-horizontal, #ad-horizontal-header, #ad-horizontal-top, #ad-idreammedia, #ad-img, #ad-in-post, #ad-index, #ad-inner, #ad-inside1, #ad-inside2, #ad-interstitial-wrapper, #ad-introtext, #ad-label, #ad-label2, #ad-large-header, #ad-lb, #ad-lb-secondary, #ad-ldr-spot, #ad-lead, #ad-leader, #ad-leader-atf, #ad-leader-container, #ad-leaderboard-1, #ad-leaderboard-1-container, #ad-leaderboard-2, #ad-leaderboard-2-container, #ad-leaderboard-bottom, #ad-leaderboard-container, #ad-leaderboard-footer { display: none!important; }
#ad-leaderboard-spot, #ad-leaderboard-top, #ad-leaderboard-top-container, #ad-leaderboard_bottom, #ad-leadertop, #ad-left, #ad-left-sidebar-ad-1, #ad-left-sidebar-ad-2, #ad-left-sidebar-ad-3, #ad-left-timeswidget, #ad-links-content, #ad-list-row, #ad-lrec, #ad-main-bottom, #ad-main-top, #ad-makeup, #ad-manager, #ad-manager-ad-bottom-0, #ad-manager-ad-top-0, #ad-medium, #ad-medium-lower, #ad-medium-rectangle, #ad-medrec, #ad-medrec_premium, #ad-megaban2, #ad-megasky, #ad-mid, #ad-mid-rect, #ad-middle, #ad-middlethree, #ad-middletwo, #ad-midpage, #ad-minibar, #ad-module, #ad-mpu, #ad-mpu-topRight-container, #ad-mpu-warning, #ad-mpu1-spot, #ad-mpu2, #ad-mpu2-spot, #ad-mpu600-right-container, #ad-mrec, #ad-mrec2, #ad-new, #ad-news-sidebar-300x250-placeholder, #ad-north, #ad-north-base, #ad-northeast, #ad-one, #ad-other { display: none!important; }
#ad-output, #ad-overlay, #ad-page-1, #ad-page-sky-300-a1, #ad-page-sky-300-a2, #ad-page-sky-left, #ad-pan3l, #ad-pencil, #ad-placard, #ad-placeholder, #ad-placement, #ad-plate, #ad-popup, #ad-popup1, #ad-position-a, #ad-post, #ad-push, #ad-pushdown, #ad-r, #ad-rbkua, #ad-rec-atf, #ad-rec-btf-top, #ad-recommend, #ad-rect, #ad-rectangle, #ad-rectangle-flag, #ad-rectangle1, #ad-rectangle1-outer, #ad-rectangle2, #ad-rectangle3, #ad-region-1, #ad-results, #ad-rian, #ad-right-3, #ad-right-container, #ad-right-sidebar, #ad-right-sidebar-ad-1, #ad-right-sidebar-ad-2, #ad-right-skyscraper-container, #ad-right-top, #ad-right2, #ad-right3, #ad-righttop, #ad-ros-atf-300x90, #ad-ros-btf-300x90, #ad-row, #ad-row-1, #ad-s1, #ad-safe, #ad-secondary-sidebar-1 { display: none!important; }
#ad-section, #ad-separator, #ad-shop, #ad-side, #ad-side-text, #ad-sidebar, #ad-sidebar-1, #ad-sidebar-2, #ad-sidebar-3, #ad-sidebar-300x80, #ad-sidebar-btf, #ad-sidebar-container, #ad-sidebar-mad, #ad-sidebar-mad-wrapper, #ad-sidebar-right_300-1, #ad-sidebar-right_300-2, #ad-sidebar-right_300-3, #ad-sidebar-right_bitgold, #ad-sidebar1, #ad-sidebar2, #ad-sidebarleft-bottom, #ad-sidebarleft-top, #ad-single-spotlight-container, #ad-skin, #ad-sky, #ad-sky-atf, #ad-sky-btf, #ad-skyscraper, #ad-skyscraper-feedback, #ad-skyscraper1-outer, #ad-sla-sidebar300x250, #ad-slot-1, #ad-slot-2, #ad-slot-4, #ad-slot-right, #ad-slot1, #ad-slot4, #ad-slug-wrapper, #ad-small-banner, #ad-smartboard_1, #ad-smartboard_2, #ad-smartboard_3, #ad-software-description-300x250-placeholder, #ad-software-sidebar-300x250-placeholder, #ad-space, #ad-space-1, #ad-space-2, #ad-space-big, #ad-special, #ad-splash { display: none!important; }
#ad-sponsored-traffic, #ad-sponsors, #ad-spot, #ad-spot-bottom, #ad-spot-one, #ad-springboard-300x250, #ad-squares, #ad-standard-wrap, #ad-stickers, #ad-story-bottom-in, #ad-story-bottom-out, #ad-story-right, #ad-story-top, #ad-stripe, #ad-tab, #ad-tail-placeholder, #ad-tape, #ad-target, #ad-target-Leaderbord, #ad-teaser, #ad-techwords, #ad-textad-single, #ad-three, #ad-tlr-spot, #ad-top-250, #ad-top-300x250, #ad-top-728, #ad-top-banner, #ad-top-leaderboard, #ad-top-left, #ad-top-lock, #ad-top-right, #ad-top-right-container, #ad-top-text-low, #ad-top-wrap, #ad-tower, #ad-tower1, #ad-trailerboard-spot, #ad-tray, #ad-two, #ad-typ1, #ad-uprrail1, #ad-video, #ad-video-page, #ad-west, #ad-wide-leaderboard, #ad-wrap, #ad-wrap-right, #ad-wrapper-728x90, #ad-wrapper-left { display: none!important; }
#ad-wrapper-right, #ad-wrapper1, #ad-yahoo-simple, #ad-zone-1, #ad-zone-2, #ad-zone-inline, #ad001, #ad002, #ad01, #ad02, #ad1-468x400, #ad1-home, #ad1-placeholder, #ad1-wrapper, #ad1006, #ad101, #ad10Sp, #ad11, #ad11Sp, #ad120x600, #ad120x600container, #ad120x60_override, #ad125B, #ad125BL, #ad125BR, #ad125TL, #ad125TR, #ad125x125, #ad160, #ad160-2, #ad160600, #ad160Container, #ad160Wrapper, #ad160a, #ad160x600, #ad160x600right, #ad180, #ad1Sp, #ad1_holder, #ad1_top-left, #ad2-home, #ad2-label, #ad2-original-placeholder, #ad250, #ad260x60, #ad2CONT, #ad2Sp, #ad2_footer, #ad2_iframe, #ad2_inline { display: none!important; }
this is just part of it. In total there are 3500 lines of this type including some Ad links and so on.
I want to get rid of it but I cannot. because of it it recognizes the email as a phishing scam.
I cannot remove it. Everytime i remove it and save the html it comes again. Has someone run into this problem before.
You've been hacked, or at least get code injected :) Time to re-install your CMS if you cant find the origan and fix the breach.
You might edit the current odd css out via the database, but the breach remains existing, so if the bot comes by again (I highly doubt it's a targeted attack, it will come by again), you have this problem again.
Re-install your CMS, but before you do that, check last editted files via the commandline, and see if one stands out. Could be that one php file is altered, then you know where to look for upgrades.
But a warning: In general the rule of thumb is "If you've been hacked, you no longer own the server". This is why it's time for a whipe, a backup and a upgrade.
BTW: if not telling your editor is a part of your security, you need better security.
Related
How to set text-wrap class in Chrome
I want use below code to enable line break for the cell. Grid6Obj.getRowTemplate().setClass("text", "wrap"); But when I opened the page in chrome and it didn't work. I debug the page and the html is like below. <span id="aw36-row-0" class="aw-templates-list aw-text-wrap aw-grid-row aw-row-0 aw-rows-normal aw-alternate-even "><span id="aw36-row-0-start" class="aw-row-start " style="width:0px;"></span><span id="aw36-cell-0-0" class="aw-item-template aw-templates-cell aw-grid-cell aw-column-0 aw-cells-normal " style="border-right:1px solid #ccc;border-bottom:1px solid #ccc;" title="">123 456 678</span><span id="aw36-cell-1-0" class="aw-item-template aw-templates-cell aw-grid-cell aw-column-1 aw-cells-normal " style="border-right:1px solid #ccc;border-bottom:1px solid #ccc;" title="">12</span><span id="aw36-row-0-end" class="aw-item-template aw-grid-cell aw-column-space "><span id="aw36-row-0-end-box" class="aw-item-box "></span></span></span> It set the class but the value "123 456 678" is still in one line. Is this because Chrome didn't suppose this class?Then what's the correct way to archieve it? Thx.
I did some research for you, there are 3 easy options. wrap your data in PRE tags <PRE> 123 456 678 </PRE> or in your aw.css file you could change the css on line 17 .aw-text-normal .aw-templates-cell, .aw-text-normal .aw-templates-text, .aw-text-normal .aw-templates-link, .aw-text-normal .aw-item-box { white-space:nowrap; } Which is set to nowrap, changing this to pre will allow you to hard break your lines. Though this solution will change all cells to type PRE .aw-item-box { white-space:pre } Alternatively you could mutate your data to this: "Line1 \r\n Line 2"
target-counter not working for css print toc page
I have a web page which I am converting to a PDF, nearly everything is working as I want however for some reason the below: #media print { ul.md-nav__list a::after { content: leader('.') target-counter(attr(href), page); } } Does not create the expected dotted line followed by page number for the given document href. I don't think its an issue with the layout of the page because if i do #media print { ul.md-nav__list a::after { content: "......"; } } The dots are added to the end of each link. Neither leader or target-counter seem to work on their own either. The list looks like: <ul class="md-nav__list"> <li class="md-nav__item"> <a class="md-nav__link" href="#system-availability" title="System Availability">System Availability</a> </li> <li class="md-nav__item"> <a class="md-nav__link" href="#receipt-of-message-retries" title="Receipt of Message Retries">Receipt of Message Retries</a> </li> <li class="md-nav__item"> <a class="md-nav__link" href="#sending-of-message-retries" title="Sending of Message Retries">Sending of Message Retries</a> </li> </ul> Any ideas as to why this might be the case?
html - Why my three buttons are vertical instead of horizontal?
Sorry for the confusing I caused. I did not paste my code because it is part of my big assignment. Also, I do not sure what parts of code cause the problem. So I paste the parts of the code that contains these three buttons I want to make these three button display horizontally( Which I think is default). However, the website shows them vertically. Could anyone tell me the reason behind it? what should I do to make them horizontally. <!DOCTYPE html> <html> <head> <title></title> </head> <body> </div> <div id="Comparing Energy" class="tab"> <h3 style="color:darkblue;"> Units for comparing energy (Gasoline and Enthanol) </h3> <p class="Sansserif">BTU stands for British Thermal Unit, which is a unit of energy consumed by or delivered to a building. A BTU is defined as the amount of energy required to increase the temperature of 1 pound of water by 1 degree Fahrenheit, at normal atmospheric pressure. Energy consumption is expressed in BTU to allow for consumption comparisons among fuels that are measured in different units. [think-energy.net]</p> <pre class="Sansserif"><span style="font-family:sans-serif;">Below are some BTU content of common energy units: 1 gallon of heating oil = 138,500 BTU 1 cubic foot of natural gas = 1,032 BTU 1 gallon of propane = 91,333 BTU </span></pre> <p class="Sansserif"><b>Let's compare the different energy amount between burn gasoline and ethanol</b></p> <button onclick="expandable()"><b>Calculate</b></button> <p id="inputinfo" class="Sansserif" style="display:none"> By entering the amount of gasoline, this program will perform the appropriate calculations and display the equivalent amount of energy it produces in BTU. Please input a number: </p> <input id="btu" style="display:none" onkeyup="myDefault()"> <button id="energybutton" onclick="energy()" style="display:none;"><b>Submit</b></button> <button id="wizardbutton" onclick="wizard()" style="display:none;"><b>Wizard</b></button> <button id="slidebutton" onclick="simple()" style="display: none;"><b>Simple</b></button> <p id="numb2" style="display:none"> <input type=radio name=myradio onclick=document.getElementById("btu").value=1>Small<br> <input type=radio name=myradio onclick=document.getElementById("btu").value=4>Medium<br> <input type=radio name=myradio onclick=document.getElementById("btu").value=6>Large<br> </p> <p id="BTU"></p> <p id="defaultValue"></p> <script> function energy() { var x, text; // Get the value of the input field with id="numb" x = document.getElementById('btu').value; j = x * 115000 t = x*76700 text = " "+x+" gallon of gas produces "+j+" BTU "+x+" gallon of ethanol produces "+t+" BTU"; document.getElementById("BTU").innerHTML = text; } function myDefault() { var x = document.getElementById('btu').value; if (x <= 10) document.getElementById("defaultValue").innerHTML = "A typical small one is 5"; else if ((x > 10) && (x <= 20)) document.getElementById("defaultValue").innerHTML = "A typical medium one is 15"; else if (x > 20) document.getElementById("defaultValue").innerHTML = "A typical large one is 25"; else document.getElementById("defaultValue").innerHTML = " "; } function wizard() { var v = prompt("By entering the amount of gasoline, this program will perform the appropriate calculations and display the equivalent amount of energy it produces in BTU. Please input a number: "); if (v != null) { document.getElementById('btu').value=v; } } function simple() { document.getElementById('btu').style.display='none'; document.getElementById('numb2').style.display='block'; } function expandable() { document.getElementById('inputinfo').style.display='block'; document.getElementById('btu').style.display='block'; document.getElementById('energybutton').style.display='block'; document.getElementById('wizardbutton').style.display='block'; document.getElementById('slidebutton').style.display='block'; } </script> </div> </body> </html>
display: inline-block; This should solve your problem.
Hard to say without the rest of your code present, but probably some other CSS is causing the buttons to render as block elements instead of their standard inline display mode. You could write the following CSS rule: #energybutton, #wizardbutton, #slidebutton { display: inline !important; } And it would probably solve it, but that seems a little ugly and the !important is undoubtedly overkill. If you'd like to provide some more context I or someone else could provide a more elegant answer, but my hunch is this might work for you. Edit: Seeing your exit with more code the issue is obvious- in your expandable method you are changing the buttons to display: block -- this is why they are displaying with breaks between then. Instead, set the display property to inline or inline-block to achieve the desired effect. Incidentally, it might be more robust to hide/show the buttons not directly by directly manipulating styles in JS, but instead by adding/removing a class with the desired associated CSS set.
Change the display of your buttons to 'inline' instead of 'none'.
First I would place all the buttons within a div so you can property CSS them. <div class="title_of_div"> <button id="energybutton" onclick="energy()" style="display:none"><b>Submit</b></button> <button id="wizardbutton" onclick="wizard()" style="display:none"><b>Wizard</b></button> <button id="slidebutton" onclick="simple()" style="display: none"><b>Simple</b></button> </div> Then your CSS would look something like this: .title_of_div a { display: block; float: left; height: 50px; <!-- You enter your own height --> width: 100px; <!-- You enter your own width --> margin-right: 10px; text-align: center; line-height: 50px; text-decoration: none; }
flip cascade of html
Noobie question but interesting one aswell. Is there anyway to reverse the flow of HTML documents so that things automatically hang to the bottom right and go up from there?
You can do: <HTML dir="RTL"> To make things attach to the right. For top to bottom you'd have to do that yourself, or in a script. Just for fun I'll see if I can write something using jQuery. I'll post it here. Try this: function rev(el) { $('>*', el).each(function () { rev(this); $(this).prependTo(el); }) } rev($('body')); That was kinda fun :) Do this as well, for more fun: $('body *') .contents() .each(function() { if(this.nodeType == 3) { this.textContent = this.textContent. replace(/a/g, 'ɐ'). replace(/b/g, 'q'). replace(/c/g, 'ɔ'). replace(/d/g, 'p'). replace(/e/g, 'ǝ'). replace(/f/g, 'ɟ'). replace(/g/g, 'ƃ'). replace(/h/g, 'ɥ'). replace(/i/g, 'ı'). replace(/j/g, 'ɾ'). replace(/k/g, 'ʞ'). replace(/l/g, 'ʃ'). replace(/m/g, 'ɯ'). replace(/n/g, 'u'). replace(/o/g, 'o'). replace(/p/g, 'd'). replace(/q/g, 'b'). replace(/r/g, 'ɹ'). replace(/s/g, 's'). replace(/t/g, 'ʇ'). replace(/u/g, 'n'). replace(/v/g, 'ʌ'). replace(/w/g, 'ʍ'). replace(/x/g, 'x'). replace(/y/g, 'ʎ'). replace(/z/g, 'z'). replace(/A/g, '∀'). replace(/B/g, '𐐒'). replace(/C/g, 'Ↄ'). replace(/D/g, '◖'). replace(/E/g, 'Ǝ'). replace(/F/g, 'Ⅎ'). replace(/G/g, '⅁'). replace(/H/g, 'H'). replace(/I/g, 'I'). replace(/J/g, 'ſ'). replace(/K/g, '⋊'). replace(/L/g, '⅂'). replace(/M/g, 'W'). replace(/N/g, 'ᴎ'). replace(/O/g, 'O'). replace(/P/g, 'Ԁ'). replace(/Q/g, 'Ό'). replace(/R/g, 'ᴚ'). replace(/S/g, 'S'). replace(/T/g, '⊥'). replace(/U/g, '∩'). replace(/V/g, 'ᴧ'). replace(/W/g, 'M'). replace(/X/g, 'X'). replace(/Y/g, '⅄'). replace(/Z/g, 'Z'). replace(/!/g, '¡'). replace(/"/g, '„'). replace(/&/g, '⅋'). replace(/'/g, ','). replace(/,/g, '\''). replace(/\(/g, ')'). replace(/\)/g, '('). replace(/\./g, '˙'). replace(/1/g, 'Ɩ'). replace(/2/g, 'ᄅ'). replace(/3/g, 'Ɛ'). replace(/4/g, 'ᔭ'). replace(/5/g, 'ϛ'). replace(/6/g, '9'). replace(/7/g, 'Ɫ'). replace(/8/g, '8'). replace(/9/g, '6'). replace(/0/g, '0'). replace(/;/g, '؛'). replace(/</g, '>'). replace(/>/g, '<'). replace(/{/g, '}'). replace(/}/g, '{') } });
Oh, that's rather easy if you are using a laptop or a tablet. If you have a desktop, however, it can be harder to get the display to stay upright. Sometimes duct tape and some creative woodwork can help. If your monitor is attached, however, then no. HTML always renders from the top down.
h1 and h2 classes not showing up in Internet Explorer
I'm having trouble getting the h1 and h2 tags to display at all in Internet Explorer. I looked at the CSS file but still couldn't see why it wouldn't work with IE9. Here is the CSS code for the headers that are not showing up in IE: .person h1 { color: #475261; font-size: 48px; font-weight: 400; letter-spacing: -1px; margin-left: -60px; } .item h2 { color: #06A; font-family: Georgia, serif; font-size: 22px; font-weight: 400; letter-spacing: -1px; } .item h2 a { color: #06A; text-decoration: none; } Link: http://ItsNotch.com/experience
Cause of Problem It appears that the h1 elements are being replaced by canvas elements by the cufon-yui.js script. According to this FAQ, it is known to not work in IE 9 Beta. First Solution However, they state there is a fix for it in their version 1.09i available at their official site. Second Solution If you look at item 8 of the FAQ, they say that if you don't want to update your js file, you can try some other code: <!--[if gte IE 9]> <script type="text/javascript"> Cufon.set('engine', 'canvas'); </script> <![endif]--> Read the FAQ for further instructions. I'm not sure if it will work though, just a warning. Third Solution You may also be interested in trying Typekit instead, which according to the cufon main site, also has the advantage of the text being selectable, which it currently isn't using cufon: You might also want to take this opportunity to try Typekit, a hosted, #font-face-based alternative. Yes, that means they support text selection. It's the easiest way to embrace standards. Fourth Solution You also always have the option of just not using one of these JavaScript-injected special fonts at all.
Replace cufon.js with the code given below, and problem solved. /* * Copyright (c) 2009 Simo Kinnunen. * Licensed under the MIT license. * * #version 1.09i */ var Cufon=(function(){var m=function(){return m.replace.apply(null,arguments)};var x=m.DOM={ready:(function(){var C=false,E={loaded:1,complete:1};var B=[],D=function(){if(C){return}C=true;for(var F;F=B.shift();F()){}};if(document.addEventListener){document.addEventListener("DOMContentLoaded",D,false);window.addEventListener("pageshow",D,false)}if(!window.opera&&document.readyState){(function(){E[document.readyState]?D():setTimeout(arguments.callee,10)})()}if(document.readyState&&document.createStyleSheet){(function(){try{document.body.doScroll("left");D()}catch(F){setTimeout(arguments.callee,1)}})()}q(window,"load",D);return function(F){if(!arguments.length){D()}else{C?F():B.push(F)}}})(),root:function(){return document.documentElement||document.body}};var n=m.CSS={Size:function(C,B){this.value=parseFloat(C);this.unit=String(C).match(/[a-z%]*$/)[0]||"px";this.convert=function(D){return D/B*this.value};this.convertFrom=function(D){return D/this.value*B};this.toString=function(){return this.value+this.unit}},addClass:function(C,B){var D=C.className;C.className=D+(D&&" ")+B;return C},color:j(function(C){var B={};B.color=C.replace(/^rgba\((.*?),\s*([\d.]+)\)/,function(E,D,F){B.opacity=parseFloat(F);return"rgb("+D+")"});return B}),fontStretch:j(function(B){if(typeof B=="number"){return B}if(/%$/.test(B)){return parseFloat(B)/100}return{"ultra-condensed":0.5,"extra-condensed":0.625,condensed:0.75,"semi-condensed":0.875,"semi-expanded":1.125,expanded:1.25,"extra-expanded":1.5,"ultra-expanded":2}[B]||1}),getStyle:function(C){var B=document.defaultView;if(B&&B.getComputedStyle){return new a(B.getComputedStyle(C,null))}if(C.currentStyle){return new a(C.currentStyle)}return new a(C.style)},gradient:j(function(F){var G={id:F,type:F.match(/^-([a-z]+)-gradient\(/)[1],stops:[]},C=F.substr(F.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);for(var E=0,B=C.length,D;E<B;++E){D=C[E].split("=",2).reverse();G.stops.push([D[1]||E/(B-1),D[0]])}return G}),quotedList:j(function(E){var D=[],C=/\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g,B;while(B=C.exec(E)){D.push(B[3]||B[1])}return D}),recognizesMedia:j(function(G){var E=document.createElement("style"),D,C,B;E.type="text/css";E.media=G;try{E.appendChild(document.createTextNode("/**/"))}catch(F){}C=g("head")[0];C.insertBefore(E,C.firstChild);D=(E.sheet||E.styleSheet);B=D&&!D.disabled;C.removeChild(E);return B}),removeClass:function(D,C){var B=RegExp("(?:^|\\s+)"+C+"(?=\\s|$)","g");D.className=D.className.replace(B,"");return D},supports:function(D,C){var B=document.createElement("span").style;if(B[D]===undefined){return false}B[D]=C;return B[D]===C},textAlign:function(E,D,B,C){if(D.get("textAlign")=="right"){if(B>0){E=" "+E}}else{if(B<C-1){E+=" "}}return E},textShadow:j(function(F){if(F=="none"){return null}var E=[],G={},B,C=0;var D=/(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig;while(B=D.exec(F)){if(B[0]==","){E.push(G);G={};C=0}else{if(B[1]){G.color=B[1]}else{G[["offX","offY","blur"][C++]]=B[2]}}}E.push(G);return E}),textTransform:(function(){var B={uppercase:function(C){return C.toUpperCase()},lowercase:function(C){return C.toLowerCase()},capitalize:function(C){return C.replace(/\b./g,function(D){return D.toUpperCase()})}};return function(E,D){var C=B[D.get("textTransform")];return C?C(E):E}})(),whiteSpace:(function(){var D={inline:1,"inline-block":1,"run-in":1};var C=/^\s+/,B=/\s+$/;return function(H,F,G,E){if(E){if(E.nodeName.toLowerCase()=="br"){H=H.replace(C,"")}}if(D[F.get("display")]){return H}if(!G.previousSibling){H=H.replace(C,"")}if(!G.nextSibling){H=H.replace(B,"")}return H}})()};n.ready=(function(){var B=!n.recognizesMedia("all"),E=false;var D=[],H=function(){B=true;for(var K;K=D.shift();K()){}};var I=g("link"),J=g("style");function C(K){return K.disabled||G(K.sheet,K.media||"screen")}function G(M,P){if(!n.recognizesMedia(P||"all")){return true}if(!M||M.disabled){return false}try{var Q=M.cssRules,O;if(Q){search:for(var L=0,K=Q.length;O=Q[L],L<K;++L){switch(O.type){case 2:break;case 3:if(!G(O.styleSheet,O.media.mediaText)){return false}break;default:break search}}}}catch(N){}return true}function F(){if(document.createStyleSheet){return true}var L,K;for(K=0;L=I[K];++K){if(L.rel.toLowerCase()=="stylesheet"&&!C(L)){return false}}for(K=0;L=J[K];++K){if(!C(L)){return false}}return true}x.ready(function(){if(!E){E=n.getStyle(document.body).isUsable()}if(B||(E&&F())){H()}else{setTimeout(arguments.callee,10)}});return function(K){if(B){K()}else{D.push(K)}}})();function s(D){var C=this.face=D.face,B={"\u0020":1,"\u00a0":1,"\u3000":1};this.glyphs=D.glyphs;this.w=D.w;this.baseSize=parseInt(C["units-per-em"],10);this.family=C["font-family"].toLowerCase();this.weight=C["font-weight"];this.style=C["font-style"]||"normal";this.viewBox=(function(){var F=C.bbox.split(/\s+/);var E={minX:parseInt(F[0],10),minY:parseInt(F[1],10),maxX:parseInt(F[2],10),maxY:parseInt(F[3],10)};E.width=E.maxX-E.minX;E.height=E.maxY-E.minY;E.toString=function(){return[this.minX,this.minY,this.width,this.height].join(" ")};return E})();this.ascent=-parseInt(C.ascent,10);this.descent=-parseInt(C.descent,10);this.height=-this.ascent+this.descent;this.spacing=function(L,N,E){var O=this.glyphs,M,K,G,P=[],F=0,J=-1,I=-1,H;while(H=L[++J]){M=O[H]||this.missingGlyph;if(!M){continue}if(K){F-=G=K[H]||0;P[I]-=G}F+=P[++I]=~~(M.w||this.w)+N+(B[H]?E:0);K=M.k}P.total=F;return P}}function f(){var C={},B={oblique:"italic",italic:"oblique"};this.add=function(D){(C[D.style]||(C[D.style]={}))[D.weight]=D};this.get=function(H,I){var G=C[H]||C[B[H]]||C.normal||C.italic||C.oblique;if(!G){return null}I={normal:400,bold:700}[I]||parseInt(I,10);if(G[I]){return G[I]}var E={1:1,99:0}[I%100],K=[],F,D;if(E===undefined){E=I>400}if(I==500){I=400}for(var J in G){if(!k(G,J)){continue}J=parseInt(J,10);if(!F||J<F){F=J}if(!D||J>D){D=J}K.push(J)}if(I<F){I=F}if(I>D){I=D}K.sort(function(M,L){return(E?(M>=I&&L>=I)?M<L:M>L:(M<=I&&L<=I)?M>L:M<L)?-1:1});return G[K[0]]}}function r(){function D(F,G){if(F.contains){return F.contains(G)}return F.compareDocumentPosition(G)&16}function B(G){var F=G.relatedTarget;if(!F||D(this,F)){return}C(this,G.type=="mouseover")}function E(F){C(this,F.type=="mouseenter")}function C(F,G){setTimeout(function(){var H=d.get(F).options;m.replace(F,G?h(H,H.hover):H,true)},10)}this.attach=function(F){if(F.onmouseenter===undefined){q(F,"mouseover",B);q(F,"mouseout",B)}else{q(F,"mouseenter",E);q(F,"mouseleave",E)}}}function u(){var C=[],D={};function B(H){var E=[],G;for(var F=0;G=H[F];++F){E[F]=C[D[G]]}return E}this.add=function(F,E){D[F]=C.push(E)-1};this.repeat=function(){var E=arguments.length?B(arguments):C,F;for(var G=0;F=E[G++];){m.replace(F[0],F[1],true)}}}function A(){var D={},B=0;function C(E){return E.cufid||(E.cufid=++B)}this.get=function(E){var F=C(E);return D[F]||(D[F]={})}}function a(B){var D={},C={};this.extend=function(E){for(var F in E){if(k(E,F)){D[F]=E[F]}}return this};this.get=function(E){return D[E]!=undefined?D[E]:B[E]};this.getSize=function(F,E){return C[F]||(C[F]=new n.Size(this.get(F),E))};this.isUsable=function(){return !!B}}function q(C,B,D){if(C.addEventListener){C.addEventListener(B,D,false)}else{if(C.attachEvent){C.attachEvent("on"+B,function(){return D.call(C,window.event)})}}}function v(C,B){var D=d.get(C);if(D.options){return C}if(B.hover&&B.hoverables[C.nodeName.toLowerCase()]){b.attach(C)}D.options=B;return C}function j(B){var C={};return function(D){if(!k(C,D)){C[D]=B.apply(null,arguments)}return C[D]}}function c(F,E){var B=n.quotedList(E.get("fontFamily").toLowerCase()),D;for(var C=0;D=B[C];++C){if(i[D]){return i[D].get(E.get("fontStyle"),E.get("fontWeight"))}}return null}function g(B){return document.getElementsByTagName(B)}function k(C,B){return C.hasOwnProperty(B)}function h(){var C={},B,F;for(var E=0,D=arguments.length;B=arguments[E],E<D;++E){for(F in B){if(k(B,F)){C[F]=B[F]}}}return C}function o(E,M,C,N,F,D){var K=document.createDocumentFragment(),H;if(M===""){return K}var L=N.separate;var I=M.split(p[L]),B=(L=="words");if(B&&t){if(/^\s/.test(M)){I.unshift("")}if(/\s$/.test(M)){I.push("")}}for(var J=0,G=I.length;J<G;++J){H=z[N.engine](E,B?n.textAlign(I[J],C,J,G):I[J],C,N,F,D,J<G-1);if(H){K.appendChild(H)}}return K}function l(D,M){var C=D.nodeName.toLowerCase();if(M.ignore[C]){return}var E=!M.textless[C];var B=n.getStyle(v(D,M)).extend(M);var F=c(D,B),G,K,I,H,L,J;if(!F){return}for(G=D.firstChild;G;G=I){K=G.nodeType;I=G.nextSibling;if(E&&K==3){if(H){H.appendData(G.data);D.removeChild(G)}else{H=G}if(I){continue}}if(H){D.replaceChild(o(F,n.whiteSpace(H.data,B,H,J),B,M,G,D),H);H=null}if(K==1){if(G.firstChild){if(G.nodeName.toLowerCase()=="cufon"){z[M.engine](F,null,B,M,G,D)}else{arguments.callee(G,M)}}J=G}}}var t=" ".split(/\s+/).length==0;var d=new A();var b=new r();var y=new u();var e=false;var z={},i={},w={autoDetect:false,engine:null,forceHitArea:false,hover:false,hoverables:{a:true},ignore:{applet:1,canvas:1,col:1,colgroup:1,head:1,iframe:1,map:1,optgroup:1,option:1,script:1,select:1,style:1,textarea:1,title:1,pre:1},printable:true,selector:(window.Sizzle||(window.jQuery&&function(B){return jQuery(B)})||(window.dojo&&dojo.query)||(window.Ext&&Ext.query)||(window.YAHOO&&YAHOO.util&&YAHOO.util.Selector&&YAHOO.util.Selector.query)||(window.$$&&function(B){return $$(B)})||(window.$&&function(B){return $(B)})||(document.querySelectorAll&&function(B){return document.querySelectorAll(B)})||g),separate:"words",textless:{dl:1,html:1,ol:1,table:1,tbody:1,thead:1,tfoot:1,tr:1,ul:1},textShadow:"none"};var p={words:/\s/.test("\u00a0")?/[^\S\u00a0]+/:/\s+/,characters:"",none:/^/};m.now=function(){x.ready();return m};m.refresh=function(){y.repeat.apply(y,arguments);return m};m.registerEngine=function(C,B){if(!B){return m}z[C]=B;return m.set("engine",C)};m.registerFont=function(D){if(!D){return m}var B=new s(D),C=B.family;if(!i[C]){i[C]=new f()}i[C].add(B);return m.set("fontFamily",'"'+C+'"')};m.replace=function(D,C,B){C=h(w,C);if(!C.engine){return m}if(!e){n.addClass(x.root(),"cufon-active cufon-loading");n.ready(function(){n.addClass(n.removeClass(x.root(),"cufon-loading"),"cufon-ready")});e=true}if(C.hover){C.forceHitArea=true}if(C.autoDetect){delete C.fontFamily}if(typeof C.textShadow=="string"){C.textShadow=n.textShadow(C.textShadow)}if(typeof C.color=="string"&&/^-/.test(C.color)){C.textGradient=n.gradient(C.color)}else{delete C.textGradient}if(!B){y.add(D,arguments)}if(D.nodeType||typeof D=="string"){D=[D]}n.ready(function(){for(var F=0,E=D.length;F<E;++F){var G=D[F];if(typeof G=="string"){m.replace(C.selector(G),C,true)}else{l(G,C)}}});return m};m.set=function(B,C){w[B]=C;return m};return m})();Cufon.registerEngine("vml",(function(){var e=document.namespaces;if(!e){return}e.add("cvml","urn:schemas-microsoft-com:vml");e=null;var b=document.createElement("cvml:shape");b.style.behavior="url(#default#VML)";if(!b.coordsize){return}b=null;var h=(document.documentMode||0)<8;document.write(('<style type="text/css">cufoncanvas{text-indent:0;}#media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:'+(h?"middle":"text-bottom")+";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}#media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g,"!important;"));function c(i,j){return a(i,/(?:em|ex|%)$|^[a-z-]+$/i.test(j)?"1em":j)}function a(l,m){if(m==="0"){return 0}if(/px$/i.test(m)){return parseFloat(m)}var k=l.style.left,j=l.runtimeStyle.left;l.runtimeStyle.left=l.currentStyle.left;l.style.left=m.replace("%","em");var i=l.style.pixelLeft;l.style.left=k;l.runtimeStyle.left=j;return i}function f(l,k,j,n){var i="computed"+n,m=k[i];if(isNaN(m)){m=k.get(n);k[i]=m=(m=="normal")?0:~~j.convertFrom(a(l,m))}return m}var g={};function d(p){var q=p.id;if(!g[q]){var n=p.stops,o=document.createElement("cvml:fill"),i=[];o.type="gradient";o.angle=180;o.focus="0";o.method="sigma";o.color=n[0][1];for(var m=1,l=n.length-1;m<l;++m){i.push(n[m][0]*100+"% "+n[m][1])}o.colors=i.join(",");o.color2=n[l][1];g[q]=o}return g[q]}return function(ac,G,Y,C,K,ad,W){var n=(G===null);if(n){G=K.alt}var I=ac.viewBox;var p=Y.computedFontSize||(Y.computedFontSize=new Cufon.CSS.Size(c(ad,Y.get("fontSize"))+"px",ac.baseSize));var y,q;if(n){y=K;q=K.firstChild}else{y=document.createElement("cufon");y.className="cufon cufon-vml";y.alt=G;q=document.createElement("cufoncanvas");y.appendChild(q);if(C.printable){var Z=document.createElement("cufontext");Z.appendChild(document.createTextNode(G));y.appendChild(Z)}if(!W){y.appendChild(document.createElement("cvml:shape"))}}var ai=y.style;var R=q.style;var l=p.convert(I.height),af=Math.ceil(l);var V=af/l;var P=V*Cufon.CSS.fontStretch(Y.get("fontStretch"));var U=I.minX,T=I.minY;R.height=af;R.top=Math.round(p.convert(T-ac.ascent));R.left=Math.round(p.convert(U));ai.height=p.convert(ac.height)+"px";var F=Y.get("color");var ag=Cufon.CSS.textTransform(G,Y).split("");var L=ac.spacing(ag,f(ad,Y,p,"letterSpacing"),f(ad,Y,p,"wordSpacing"));if(!L.length){return null}var k=L.total;var x=-U+k+(I.width-L[L.length-1]);var ah=p.convert(x*P),X=Math.round(ah);var O=x+","+I.height,m;var J="r"+O+"ns";var u=C.textGradient&&d(C.textGradient);var o=ac.glyphs,S=0;var H=C.textShadow;var ab=-1,aa=0,w;while(w=ag[++ab]){var D=o[ag[ab]]||ac.missingGlyph,v;if(!D){continue}if(n){v=q.childNodes[aa];while(v.firstChild){v.removeChild(v.firstChild)}}else{v=document.createElement("cvml:shape");q.appendChild(v)}v.stroked="f";v.coordsize=O;v.coordorigin=m=(U-S)+","+T;v.path=(D.d?"m"+D.d+"xe":"")+"m"+m+J;v.fillcolor=F;if(u){v.appendChild(u.cloneNode(false))}var ae=v.style;ae.width=X;ae.height=af;if(H){var s=H[0],r=H[1];var B=Cufon.CSS.color(s.color),z;var N=document.createElement("cvml:shadow");N.on="t";N.color=B.color;N.offset=s.offX+","+s.offY;if(r){z=Cufon.CSS.color(r.color);N.type="double";N.color2=z.color;N.offset2=r.offX+","+r.offY}N.opacity=B.opacity||(z&&z.opacity)||1;v.appendChild(N)}S+=L[aa++]}var M=v.nextSibling,t,A;if(C.forceHitArea){if(!M){M=document.createElement("cvml:rect");M.stroked="f";M.className="cufon-vml-cover";t=document.createElement("cvml:fill");t.opacity=0;M.appendChild(t);q.appendChild(M)}A=M.style;A.width=X;A.height=af}else{if(M){q.removeChild(M)}}ai.width=Math.max(Math.ceil(p.convert(k*P)),0);if(h){var Q=Y.computedYAdjust;if(Q===undefined){var E=Y.get("lineHeight");if(E=="normal"){E="1em"}else{if(!isNaN(E)){E+="em"}}Y.computedYAdjust=Q=0.5*(a(ad,E)-parseFloat(ai.height))}if(Q){ai.marginTop=Math.ceil(Q)+"px";ai.marginBottom=Q+"px"}}return y}})());Cufon.registerEngine("canvas",(function(){var b=document.createElement("canvas");if(!b||!b.getContext||!b.getContext.apply){return}b=null;var a=Cufon.CSS.supports("display","inline-block");var e=!a&&(document.compatMode=="BackCompat"||/frameset|transitional/i.test(document.doctype.publicId));var f=document.createElement("style");f.type="text/css";f.appendChild(document.createTextNode(("cufon{text-indent:0;}#media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;"+(e?"":"font-size:1px;line-height:1px;")+"}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden;text-indent:-10000in;}"+(a?"cufon canvas{position:relative;}":"cufon canvas{position:absolute;}")+"}#media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g,"!important;")));document.getElementsByTagName("head")[0].appendChild(f);function d(p,h){var n=0,m=0;var g=[],o=/([mrvxe])([^a-z]*)/g,k;generate:for(var j=0;k=o.exec(p);++j){var l=k[2].split(",");switch(k[1]){case"v":g[j]={m:"bezierCurveTo",a:[n+~~l[0],m+~~l[1],n+~~l[2],m+~~l[3],n+=~~l[4],m+=~~l[5]]};break;case"r":g[j]={m:"lineTo",a:[n+=~~l[0],m+=~~l[1]]};break;case"m":g[j]={m:"moveTo",a:[n=~~l[0],m=~~l[1]]};break;case"x":g[j]={m:"closePath"};break;case"e":break generate}h[g[j].m].apply(h,g[j].a)}return g}function c(m,k){for(var j=0,h=m.length;j<h;++j){var g=m[j];k[g.m].apply(k,g.a)}}return function(V,w,P,t,C,W){var k=(w===null);if(k){w=C.getAttribute("alt")}var A=V.viewBox;var m=P.getSize("fontSize",V.baseSize);var B=0,O=0,N=0,u=0;var z=t.textShadow,L=[];if(z){for(var U=z.length;U--;){var F=z[U];var K=m.convertFrom(parseFloat(F.offX));var I=m.convertFrom(parseFloat(F.offY));L[U]=[K,I];if(I<B){B=I}if(K>O){O=K}if(I>N){N=I}if(K<u){u=K}}}var Z=Cufon.CSS.textTransform(w,P).split("");var E=V.spacing(Z,~~m.convertFrom(parseFloat(P.get("letterSpacing"))||0),~~m.convertFrom(parseFloat(P.get("wordSpacing"))||0));if(!E.length){return null}var h=E.total;O+=A.width-E[E.length-1];u+=A.minX;var s,n;if(k){s=C;n=C.firstChild}else{s=document.createElement("cufon");s.className="cufon cufon-canvas";s.setAttribute("alt",w);n=document.createElement("canvas");s.appendChild(n);if(t.printable){var S=document.createElement("cufontext");S.appendChild(document.createTextNode(w));s.appendChild(S)}}var aa=s.style;var H=n.style;var j=m.convert(A.height);var Y=Math.ceil(j);var M=Y/j;var G=M*Cufon.CSS.fontStretch(P.get("fontStretch"));var J=h*G;var Q=Math.ceil(m.convert(J+O-u));var o=Math.ceil(m.convert(A.height-B+N));n.width=Q;n.height=o;H.width=Q+"px";H.height=o+"px";B+=A.minY;H.top=Math.round(m.convert(B-V.ascent))+"px";H.left=Math.round(m.convert(u))+"px";var r=Math.max(Math.ceil(m.convert(J)),0)+"px";if(a){aa.width=r;aa.height=m.convert(V.height)+"px"}else{aa.paddingLeft=r;aa.paddingBottom=(m.convert(V.height)-1)+"px"}var X=n.getContext("2d"),D=j/A.height;X.scale(D,D*M);X.translate(-u,-B);X.save();function T(){var x=V.glyphs,ab,l=-1,g=-1,y;X.scale(G,1);while(y=Z[++l]){var ab=x[Z[l]]||V.missingGlyph;if(!ab){continue}if(ab.d){X.beginPath();if(ab.code){c(ab.code,X)}else{ab.code=d("m"+ab.d,X)}X.fill()}X.translate(E[++g],0)}X.restore()}if(z){for(var U=z.length;U--;){var F=z[U];X.save();X.fillStyle=F.color;X.translate.apply(X,L[U]);T()}}var q=t.textGradient;if(q){var v=q.stops,p=X.createLinearGradient(0,A.minY,0,A.maxY);for(var U=0,R=v.length;U<R;++U){p.addColorStop.apply(p,v[U])}X.fillStyle=p}else{X.fillStyle=P.get("color")}T();return s}})());