Browse files

handle different content charsets

  • Loading branch information...
1 parent 8b70a1a commit 4fe9cc428928ece47aecaa9f7491d59f478fb653 @disfated disfated committed Jan 8, 2012
Showing with 2,207 additions and 7 deletions.
  1. +1 −0 README.md
  2. +17 −1 lib/restler.js
  3. +10 −1 package.json
  4. +17 −0 test/charsets/gb2312
  5. +1,234 −0 test/charsets/gbk
  6. +418 −0 test/charsets/iso-8859-1
  7. +104 −0 test/charsets/shift_jis
  8. +324 −0 test/charsets/windows-1251
  9. +30 −0 test/charsets/windows-1252
  10. +52 −5 test/restler.js
View
1 README.md
@@ -22,6 +22,7 @@ Features
* Deals with basic auth for you, just provide username and password options
* Simple service wrapper that allows you to easily put together REST API libraries
* Transparently handle content-encoded responses (gzip, deflate)
+* Transparently handle different content charsets via `iconv`
API
View
18 lib/restler.js
@@ -4,7 +4,8 @@ var sys = require('util'),
url = require('url'),
qs = require('querystring'),
multipart = require('./multipartform'),
- zlib = require('zlib');
+ zlib = require('zlib'),
+ Iconv = require('iconv').Iconv;
function mixin(target, source) {
Object.keys(source).forEach(function(key) {
@@ -123,6 +124,7 @@ mixin(Request.prototype, {
return;
}
response.raw = body;
+ body = self._iconv(body, response);
self._encode(body, response, function(err, body) {
if (err) {
self._fireError(err, response);
@@ -142,6 +144,20 @@ mixin(Request.prototype, {
callback(null, body);
}
},
+ _iconv: function(body, response) {
+ var charset = response.headers['content-type'];
+ if (!charset) return body;
+ charset = charset.match(/\bcharset=(.+)(?:;|$)/i);
+ if (!charset) return body;
+ charset = charset[1].trim().toUpperCase();
+ if (charset == 'UTF-8') return body;
+ try {
+ var iconv = new Iconv(charset, 'UTF-8//TRANSLIT//IGNORE');
+ return iconv.convert(body);
+ } catch (err) {
+ return body;
+ }
+ },
_encode: function(body, response, callback) {
var self = this;
if (self.options.decoding == 'buffer') {
View
11 package.json
@@ -6,5 +6,14 @@
"homepage": "https://github.com/danwrong/restler",
"directories" : { "lib" : "./lib" },
"main" : "./lib/restler",
- "engines": { "node": ">= 0.3.7" }
+ "engines": { "node": ">= 0.3.7" },
+ "dependencies": {
+ "iconv": ">=1.0.0",
+ "zlib" : ">=1.0.0"
+ },
+ "devDependencies": {
+ "nodeunit": ">=0.5.0",
+ "xml2js" : ">=0.1.0",
+ "yaml" : ">=0.2.0"
+ }
}
View
17 test/charsets/gb2312
@@ -0,0 +1,17 @@
+<!doctype html><html><head><meta http-equiv="Content-Type" content="text/html;charset=gb2312"><title>�ٶ�һ�£����֪�� </title><style>html{overflow-y:auto}body{font:12px arial;text-align:center;background:#fff}body,p,form,ul,li{margin:0;padding:0;list-style:none}body,form,#fm{position:relative}td{text-align:left}img{border:0}a{color:#00c}a:active{color:#f60}#u{color:#999;padding:4px 10px 5px 0;text-align:right}#u a{margin:0 5px}#u .reg{margin:0}#m{width:680px;margin:0 auto;}#nv a,#nv b,.btn,#lk{font-size:14px}#fm{padding-left:90px;text-align:left}input{border:0;padding:0}#nv{height:19px;font-size:16px;margin:0 0 4px;text-align:left;text-indent:117px}.s_ipt_wr{width:418px;height:30px;display:inline-block;margin-right:5px;background:url(http://www.baidu.com/img/i-1.0.0.png) no-repeat -304px 0;border:1px solid #b6b6b6;border-color:#9a9a9a #cdcdcd #cdcdcd #9a9a9a;vertical-align:top}.s_ipt{width:405px;height:22px;font:16px/22px arial;margin:5px 0 0 7px;background:#fff;outline:none}.s_btn{width:95px;height:32px;padding-top:2px\9;font-size:14px;background:#ddd url(http://www.baidu.com/img/i-1.0.0.png);cursor:pointer}.s_btn_h{background-position:-100px 0}.s_btn_wr{width:97px;height:34px;display:inline-block;background:url(http://www.baidu.com/img/i-1.0.0.png) no-repeat -202px 0;*position:relative;z-index:0;vertical-align:top}#lg img{vertical-align:top;margin-bottom:3px}#lk{margin:33px 0}#lk span{font:14px "����"}#lm{height:60px}#lh{margin:16px 0 5px;word-spacing:3px}.tools{position:absolute;top:-4px;*top:10px;right:-13px;}#mHolder{width:62px;position:relative;z-index:296;display:none}#mCon{height:18px;line-height:18px;position:absolute;cursor:pointer;padding:0 18px 0 0;background:url(http://www.baidu.com/img/bg-1.0.0.gif) no-repeat right -134px;background-position:right -136px\9}#mCon span{color:#00c;cursor:default;display:block}#mCon .hw{text-decoration:underline;cursor:pointer}#mMenu a{width:100%;height:100%;display:block;line-height:22px;text-indent:6px;text-decoration:none;filter:none\9}#mMenu,#user ul{box-shadow:1px 1px 2px #ccc;-moz-box-shadow:1px 1px 2px #ccc;-webkit-box-shadow:1px 1px 2px #ccc;filter: progid:DXImageTransform.Microsoft.Shadow(Strength=2, Direction=135, Color="#cccccc")\9;}#mMenu{width:56px;border:1px solid #9b9b9b;list-style:none;position:absolute;right:7px;top:28px;display:none;background:#fff}#mMenu a:hover{background:#ebebeb}#mMenu .ln{height:1px;background:#ebebeb;overflow:hidden;font-size:1px;line-height:1px;margin-top:-1px}#cp,#cp a{color:#77c}#seth{display:none;behavior:url(#default#homepage)}#setf{display:none}</style>
+<script type="text/javascript">function h(obj){obj.style.behavior='url(#default#homepage)';var a = obj.setHomePage('http://www.baidu.com/');}</script></head>
+
+<body><div id="u"><a href="http://www.baidu.com/gaoji/preferences.html" name="tj_setting">��������</a>|<a href="http://passport.baidu.com/?login&tpl=mn" name="tj_login">��¼</a><a href="https://passport.baidu.com/?reg&tpl=mn" name="tj_reg" class="reg">ע��</a></div>
+<div id="m"><p id="lg"><img src="http://www.baidu.com/img/baidu_sylogo1.gif" width="270" height="129" usemap="#mp"><map name="mp"><area shape="rect" coords="40,25,230,95" href="http://hi.baidu.com/baidu/" target="_blank" title="��˽��� �ٶȵĿռ�" ></map></p><p id="nv"><a href="http://news.baidu.com">��&nbsp;��</a>��<b>��&nbsp;ҳ</b>��<a href="http://tieba.baidu.com">��&nbsp;��</a>��<a href="http://zhidao.baidu.com">֪&nbsp;��</a>��<a href="http://mp3.baidu.com">MP3</a>��<a href="http://image.baidu.com">ͼ&nbsp;Ƭ</a>��<a href="http://video.baidu.com">��&nbsp;Ƶ</a>��<a href="http://map.baidu.com">��&nbsp;ͼ</a></p><div id="fm"><form name="f" action="/s"><span class="s_ipt_wr"><input type="text" name="wd" id="kw" maxlength="100" class="s_ipt"></span><input type="hidden" name="rsv_bp" value="0"><input type="hidden" name="rsv_spt" value="3"><span class="s_btn_wr"><input type="submit" value="�ٶ�һ��" id="su" class="s_btn" onmousedown="this.className='s_btn s_btn_h'" onmouseout="this.className='s_btn'"></span></form><span class="tools"><span id="mHolder"><div id="mCon"><span>���뷨</span></div></span></span><ul id="mMenu"><li><a href="#" name="ime_hw">��д</a></li><li><a href="#" name="ime_py">ƴ��</a></li><li class="ln"></li><li><a href="#" name="ime_cl">�ر�</a></li></ul></div>
+<p id="lk"><a href="http://hi.baidu.com">�ռ�</a>��<a href="http://baike.baidu.com">�ٿ�</a>��<a href="http://www.hao123.com">hao123</a><span> | <a href="/more/">���&gt;&gt;</a></span></p><p id="lm"></p><p><a id="seth" onClick="h(this)" href="http://utility.baidu.com/traf/click.php?id=215&url=http://www.baidu.com" onmousedown="return ns_c({'fm':'behs','tab':'homepage','pos':0})">�Ѱٶ���Ϊ��ҳ</a><a id="setf" onClick="fa(this)" href="javascript:void(0)" onmousedown="return ns_c({'fm':'behs','tab':'favorites','pos':0})">�Ѱٶȼ����ղؼ�</a></p>
+<p id="lh"><a href="http://e.baidu.com/?refer=888">����ٶ��ƹ�</a> | <a href="http://top.baidu.com">������ư�</a> | <a href="http://home.baidu.com">���ڰٶ�</a> | <a href="http://ir.baidu.com">About Baidu</a></p><p id="cp">&copy;2012 Baidu <a href="/duty/">ʹ�ðٶ�ǰ�ض�</a> <a href="http://www.miibeian.gov.cn" target="_blank">��ICP֤030173��</a> <img src="http://gimg.baidu.com/img/gs.gif"></p></div></body>
+
+<script>var bdUser = null;var w=window,d=document,n=navigator,k=d.f.wd,a=d.getElementById("nv").getElementsByTagName("a"),isIE=n.userAgent.indexOf("MSIE")!=-1&&!window.opera;for(var i=0;i<a.length;i++){a[i].onclick=function(){if(k.value.length>0){var o=this,h=o.href,q=encodeURIComponent(k.value);if(h.indexOf("q=")!=-1){o.href=h.replace(/q=[^&\x24]*/,"q="+q)}else{this.href+="?q="+q}}}};(function(){if(/q=([^&]+)/.test(location.search)){k.value=decodeURIComponent(RegExp["\x241"])}})();if(n.cookieEnabled&&!/sug?=0/.test(d.cookie)){d.write('<script src=http://www.baidu.com/cache/sug/js/bdsug-1.1.js><\/script>')};function addEV(o, e, f){if(w.attachEvent){o.attachEvent("on" + e, f);}else if(w.addEventListener){ o.addEventListener(e, f, false);}}function G(id){return d.getElementById(id);}function ns_c(q){var p = encodeURIComponent(window.document.location.href), sQ = '', sV = '', mu='', img = window["BD_PS_C" + (new Date()).getTime()] = new Image();for (v in q) {sV = q[v];sQ += v + "=" + sV + "&";} mu= "&mu=" + p ;img.src = "http://nsclick.baidu.com/v.gif?pid=201&pj=www&" + sQ + "path="+p+"&t="+new Date().getTime();return true;}if(/\bbdime=[12]/.test(d.cookie)){document.write('<script src=http://www.baidu.com/cache/ime/js/openime-1.0.0.js><\/script>');}(function(){var user = G("user"), userMenu = G("userMenu");if(user && userMenu){user.onmouseover = function(){userMenu.style.display = "block"};user.onmouseout = function(){userMenu.style.display = "none"};}})();(function(){var u = G("u").getElementsByTagName("a"), nv = G("nv").getElementsByTagName("a"), lk = G("lk").getElementsByTagName("a"), un = "";var tj_nv = ["news","tieba","zhidao","mp3","img","video","map"];var tj_lk = ["hi","baike","hao123","more"];un = bdUser == null ? "" : bdUser;function _addTJ(obj){addEV(obj, "mousedown", function(e){var e = e || window.event;var target = e.target || e.srcElement;ns_c({'fm':'behs','tab':target.name||'tj_user','un':encodeURIComponent(un)});});}for(var i = 0; i < u.length; i++){_addTJ(u[i]);}for(var i = 0; i < nv.length; i++){nv[i].name = 'tj_' + tj_nv[i];_addTJ(nv[i]);}for(var i = 0; i < lk.length; i++){lk[i].name = 'tj_' + tj_lk[i];_addTJ(lk[i]);}})();addEV(w,"load",function(){k.focus()});w.onunload=function(){};</script>
+
+
+
+</html>
+
+<script type="text/javascript" src="http://www.baidu.com/cache/hps/js/hps-1.4.js"></script>
+
+<!--2d1a628f7e6b9aeb-->
View
1,234 test/charsets/gbk
@@ -0,0 +1,1234 @@
+
+
+
+
+
+
+
+
+
+
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>���𷢣��й�Ч��Ӫ���һ���</title>
+
+<link href="/styles/common.css" rel="stylesheet" type="text/css" />
+<link href="/styles/layout.css" rel="stylesheet" type="text/css" />
+<script src="/js/yu.js" type="text/javascript"></script>
+<script src="/js/tb.js" type="text/javascript"></script>
+<script src="/js/jquery.js" type="text/javascript"></script>
+<script type="text/javascript">
+$(document).ready(function() {
+ $(".fold").hover(function() {
+ $(this).css("display","none");
+ $(".open").css("display","block").mouseover(function(){
+ $(this).css("display","block");
+ $(".fold").css("display","none");
+ });
+ $(".open").css("display","block").mouseout(function(){
+ $(this).css("display","none");
+ $(".fold").css("display","block");
+ });
+ });
+
+ $("#yqfRss").click(function() {
+ document.body.style.height="100%";
+ $(".rss").css("position","absolute");
+ $(".rss").css("zIndex",200);
+ var w=400;
+ var h=172;
+ var x=document.documentElement?document.documentElement.clientWidth:document.body.clientWidth;
+ x=x==0?document.body.clientWidth:x;
+ var y=document.documentElement?document.documentElement.clientHeight:document.body.clientHeight;
+ y=y==0?document.body.clientHeight:y;
+ var l=document.documentElement?document.documentElement.scrollLeft:document.body.scrollLeft;
+ l=l==0?document.body.scrollLeft:l;
+ var t=document.documentElement?document.documentElement.scrollTop:document.body.scrollTop;
+ t=t==0?document.body.scrollTop:t;
+ $(".rss").css("left",((x-w)/2+l)+"px");
+ $(".rss").css("top",((y-h)/2+t)+"px");
+ $("#rssAddress").val("http://www.yiqifa.com/yqf_news.xml");
+ $("#xianguoRss").attr("href","http://www.xianguo.com/subscribe.php?url=http://www.yiqifa.com/yqf_news.xml");
+ $("#googleRss").attr("href","http://www.google.com/ig/add?feedurl=http://www.yiqifa.com/yqf_news.xml");
+ $(".rss").css("display","block");
+ });
+
+ $("#ggzRss").click(function() {
+ document.body.style.height="100%";
+ $(".rss").css("position","absolute");
+ $(".rss").css("zIndex",200);
+ var w=400;
+ var h=172;
+ var x=document.documentElement?document.documentElement.clientWidth:document.body.clientWidth;
+ x=x==0?document.body.clientWidth:x;
+ var y=document.documentElement?document.documentElement.clientHeight:document.body.clientHeight;
+ y=y==0?document.body.clientHeight:y;
+ var l=document.documentElement?document.documentElement.scrollLeft:document.body.scrollLeft;
+ l=l==0?document.body.scrollLeft:l;
+ var t=document.documentElement?document.documentElement.scrollTop:document.body.scrollTop;
+ t=t==0?document.body.scrollTop:t;
+ $(".rss").css("left",((x-w)/2+l)+"px");
+ $(".rss").css("top",((y-h)/2+t)+"px");
+ $("#rssAddress").val("http://www.yiqifa.com/ggz_news.xml");
+ $("#xianguoRss").attr("href","http://www.xianguo.com/subscribe.php?url=http://www.yiqifa.com/ggz_news.xml");
+ $("#googleRss").attr("href","http://www.google.com/ig/add?feedurl=http://www.yiqifa.com/ggz_news.xml");
+ $(".rss").css("display","block");
+ });
+
+ $("#rssClose").click(function() {
+ $(".rss").css("display","none");
+ });
+});
+
+function copyToClipboard() {
+ var txt = document.getElementById("rssAddress").value;
+ if (window.clipboardData) {
+ window.clipboardData.clearData();
+ window.clipboardData.setData("Text", txt);
+ alert("���Ƴɹ���");
+ } else if(navigator.userAgent.indexOf("Opera") != -1) {
+ window.location = txt;
+ } else if (window.netscape) {
+ try {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ } catch (e) {
+ alert("���firefox��ȫ������������м����������'about:config'��signed.applets.codebase_principal_support'����Ϊtrue'֮������");
+ return false;
+ }
+ var clip = Components.classes["@mozilla.org/widget/clipboard;1"].createInstance(Components.interfaces.nsIClipboard);
+ if (!clip)
+ return;
+ var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
+ if (!trans)
+ return;
+ trans.addDataFlavor('text/unicode');
+ var str = new Object();
+ var len = new Object();
+ var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
+ var copytext = txt;
+ str.data = copytext;
+ trans.setTransferData("text/unicode",str,copytext.length*2);
+ var clipid = Components.interfaces.nsIClipboard;
+ if (!clip)
+ return false;
+ clip.setData(trans,null,clipid.kGlobalClipboard);
+ }
+}
+
+function showInfo(){
+ alert("���ǹ�����Ż�ȯ��������վ����ȡ��");
+}
+function count_char(str) {
+ var len = 0;
+ for(i = 0; i < str.length; i++) {
+ var ech = escape(str.charAt(i));
+ if ( ech.length > 4 ){
+ len = len + 1;
+ }
+ len ++;
+ }
+ return len;
+}
+
+function lengthCheck(text, min, max) {
+ var len = count_char(text);
+ if ( len > max || len < min) {
+ return true;
+ }
+ return false;
+}
+
+function refreshCode(){
+ var img = document.getElementById("img");
+ if(img){
+ nowDate = new Date();
+ img.src = "/validateimage.do?d="+nowDate.getTime();
+ }
+}
+//ע��
+function reg(){
+ window.location='/userRegEdit.do';
+}
+//�û����У��
+function checkUserName(){
+ var result = true;
+ var name = document.getElementById("userName");
+ var loginError = document.getElementById("loginError");
+ if(!isSingleEmail(name.value)||lengthCheck(name.value, 5, 255)){
+ loginError.innerHTML = "��ʽ����ȷ��";
+ loginError.className = "yanzheng_2";
+ result = false;
+ }else{
+ loginError.innerHTML = "";
+ loginError.className = "undefined";
+ }
+ return result;
+}
+//�������
+function checkPassword(){
+ var result = true;
+ var password = document.getElementById("password");
+ var loginError = document.getElementById("loginError");
+ //��һ����passwordӦ����"ֻ��Ϊ���ֺ�Ӣ����ĸ"
+ if(password.value.search(/[^a-zA-Z_0-9\s]/g) != -1){
+ loginError.innerHTML = "��ʽ����ȷ��";
+ loginError.className = "yanzheng_2";
+ result = false;
+ }else{
+ //�ڶ�����passwordӦ����"������6��32λ֮��"
+ if(password.value.length < 6 || password.value.length > 16){
+ loginError.innerHTML = "��ʽ����ȷ��";
+ loginError.className = "yanzheng_2";
+ result = false;
+ }else{
+ loginError.innerHTML = "";
+ loginError.className = "undefined";
+ }
+ }
+ return result;
+}
+//email����
+function isSingleEmail(s){
+ var flag=true;
+ var emailRegS=/^([a-zA-Z0-9_\-\.\+]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
+ if (!emailRegS.exec(s))
+ flag=false ;
+ return flag ;
+}
+function keyDown(event){
+ var saveRegUserBtn = document.getElementById("saveRegUserBtn");
+ if (event.keyCode == 13){
+ saveRegUserBtn.click();//ʹ�ñ��ύ
+ }
+}
+
+function checkAll(){
+ var result = true;
+ if(!checkUserName())
+ result = false;
+ if(!checkPassword())
+ result = false;
+ return result;
+}
+//��¼
+function login(){
+ var form = document.getElementById("loginForm");
+ //if(checkAll()){
+ form.action='/userLogin.do';
+ form.submit();
+ //}
+}
+function changeCampaign(i){
+ var images=new Array();
+ var camImage="";
+
+ images[0] = new Array();
+ images[0][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=5630'
+ images[0][1]= '/contentmanage/24/41/9/1325759347454.jpg'
+
+ images[1] = new Array();
+ images[1][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6337'
+ images[1][1]= '/images/index/24/5/59/1324369250800.jpg'
+
+ images[2] = new Array();
+ images[2][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6356'
+ images[2][1]= '/images/index/24/36/60/1323327887859.jpg'
+
+ images[3] = new Array();
+ images[3][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6170'
+ images[3][1]= '/contentmanage/24/41/9/1320145202193.jpg'
+
+ images[4] = new Array();
+ images[4][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6275'
+ images[4][1]= '/images/index/24/0/0/1321407920128.jpg'
+
+ images[5] = new Array();
+ images[5][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=263'
+ images[5][1]= '/images/index/24/63/1/1323168052811.jpg'
+
+ images[6] = new Array();
+ images[6][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6298 '
+ images[6][1]= '/images/index/24/27/5/1320636574992.jpg'
+
+ images[7] = new Array();
+ images[7][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6252'
+ images[7][1]= '/contentmanage/24/50/50/1320145686567.jpg'
+
+ images[8] = new Array();
+ images[8][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6199'
+ images[8][1]= '/contentmanage/24/33/1/1320145165098.jpg'
+
+ images[9] = new Array();
+ images[9][0]= 'http://www.yiqifa.com/searchCampaignView.do?campaignId=6193'
+ images[9][1]= '/contentmanage/24/33/1/1320145184860.jpg'
+
+ var x = parseInt(document.getElementById("imageIndex").value) + parseInt(i);
+ document.getElementById("imageIndex").value=x;
+ if(x<0){
+ x = images.length-3;
+ document.getElementById("imageIndex").value = images.length-3;
+ }else if(x > images.length-3){
+ // x = images.length-3;
+ //document.getElementById("imageIndex").value = images.length-3;
+ x = 0;
+ document.getElementById("imageIndex").value = 0;
+ }
+ x = parseInt(x)*1;//һ�����
+ for(var i=0;i<=2;i=i+1){
+ if(images.length > parseInt(x)+i){
+ camImage = camImage + "<div class='img100708'><a href="+ images[parseInt(x)+i][0] + " target='_blank'><img src=" + 'http://image.yiqifa.com/ad_images' + images[parseInt(x)+i][1] + " width='218' height='60' /></a></div>";
+ }
+ }
+ document.getElementById("buy_camp_ul").innerHTML= camImage;
+}
+
+$(document).ready(function() {
+$(".pic").hover(function() {
+ $(this).addClass("pichover");
+ }, function() {
+ $(this).removeClass("pichover");
+ });
+});
+</script>
+
+<script type="text/javascript" src="/js/jquery.min.js"></script>
+<script type="text/javascript">
+ $(function(){
+ // Ԥ����ʾ��һ�� Tab
+ var _showTab = 0;
+ $('ul.tabs li').eq(_showTab).addClass('active');
+ $('.tab_content').hide().eq(_showTab).show();
+
+ // ��liҳǩ�����ʱ.
+ $('ul.tabs li').mouseover(function() {
+ var $this = $(this),
+ _index = $this.index();
+ $this.addClass('active').siblings('.active').removeClass('active');
+ $('.tab_content').eq(_index).stop(false, true).fadeIn().siblings().hide();
+
+ return false;
+ }).find('a').focus(function(){
+ this.blur();
+ });
+ });
+</script>
+<script type="text/javascript">
+ $(function(){
+ // Ԥ����ʾ��һ�� Tab
+ var _showTabs = 0;
+ $('ul.specialtabs li').eq(_showTabs).addClass('active');
+ $('.tab_contents').hide().eq(_showTabs).show();
+
+ // ��liҳǩ�����ʱ.
+ $('ul.specialtabs li').mouseover(function() {
+ var $this = $(this),
+ _index = $this.index();
+ $this.addClass('active').siblings('.active').removeClass('active');
+ $('.tab_contents').eq(_index).stop(false, true).fadeIn().siblings().hide();
+
+ return false;
+ }).find('a').focus(function(){
+ this.blur();
+ });
+ });
+</script>
+
+
+<script src="/Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
+</head>
+
+<body>
+<!--����ͷ�ļ�-->
+<div class="header">
+ <!--logo-->
+ <div class="logo">
+ <a href="index.html"><img src="/image/logo.jpg" alt="����logo" /></a><span>�����������ƽ̨</span>
+ </div>
+ <!--�������-->
+ <div class="quick-entrance">
+ <a href="/html/help.html" class="entrance01">������·</a>
+ <a href="/html/publishers_bangzhu.html" class="entrance02">��վ�����</a>
+ <a href="/html/bangzhu.html" class="entrance03">��������</a>
+ <div class="micro-blog"><span>��ע���𷢣�</span><a href="http://weibo.com/yiqifacom" target="_blank"><img src="/image/sina.jpg" alt="sina΢��" /></a><a href="http://t.qq.com/gouwukedaren" target="_blank"><img src="/image/qq.jpg" alt="��Ѷ΢��" /></a></div>
+ </div>
+ <!--������-->
+ <div class="rolling-news" id="marqueebox1">
+ <ul>
+
+ <li><a href="/bulletinView.do?id=10619" target="_parent">�����°�����</a></li>
+
+ </ul>
+ <script type="text/javascript">
+ function startmarquee(lh,speed,delay,index){
+ var t;
+ var p=false;
+ var o=document.getElementById("marqueebox"+index);
+ o.innerHTML+=o.innerHTML;
+ o.onmouseover=function(){p=true;}
+ o.onmouseout=function(){p=false;}
+ o.scrollTop = 0;
+ function start(){
+ t=setInterval(scrolling,speed);
+ if(!p){ o.scrollTop += 1;}
+ }
+ function scrolling(){
+ if(o.scrollTop%lh!=0){
+ o.scrollTop += 1;
+ if(o.scrollTop>=o.scrollHeight/2) o.scrollTop = 0;
+ }else{
+ clearInterval(t);
+ setTimeout(start,delay);
+ }
+ }
+ setTimeout(start,delay);
+ }
+ startmarquee(25,50,0,1);
+ </script>
+ </div>
+ <div class="clearBoth"></div>
+
+ <!--�ϵ���-->
+ <div class="nav">
+ <a href="/index.jsp">��ҳ</a><span></span>
+ <a href="/html/join.html">�����</a><span></span>
+ <a href="/html/publishers_jiameng.html">��վ��</a><span></span>
+ <a href="/html/gwk_about.html">�����</a><span></span>
+ <a href="/html/goldchain.html">����</a><span></span>
+ <a href="/searchCampaignBeginList.do">���</a><span></span>
+ <a href="/html/jifenjihua.html">��ּƻ�</a><span></span>
+ <a href="http://open.yiqifa.com">����ƽ̨</a><span></span> </div>
+ <div class="clearBoth"></div>
+</div>
+
+<!--������������-->
+<div class="main">
+ <div class="main-left">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!--�û���¼-->
+<form id="loginForm" name="form1" method="post" action="">
+ <div class="login">
+ <div class="title"></div>
+
+ <div class="content">
+ <p class="user-name"><label>�û���Email��</label>
+
+ <input type="text" id="userName" name="userName" value="" class="input01"/>
+
+<!-- <div class="yanzheng_2" style="width:119px;margin-top:3px;"> -->
+
+<!-- </div> -->
+
+
+ </p>
+ <p><label>���룺</label>
+
+ <input type="password" id="password" name="password" class="input01" onKeyDown="if (event.keyCode==13)login();"/>
+
+<!-- <div class="yanzheng_2" style="width:119px;margin-top:3px;"> -->
+
+<!-- </div> -->
+
+
+ </p>
+ <p class="valid-code"><label>��֤�룺</label>
+
+ <input type="text" id="checkCode" name="checkCode" class="input02" onKeyDown="if (event.keyCode==13)login()" />
+
+
+<!-- <div class="yanzheng_2" style="width:119px;margin-top:3px;"> -->
+
+<!-- </div> -->
+
+
+<!-- <div id="loginError" ></div> -->
+
+
+
+ <img src="/validateimage.do" class="valid" alt="��֤��ͼƬ" id="img"/>
+ <a href="javascript:refreshCode();">�����廻һ��</a></p>
+ <p class="btnarea"><label>&nbsp;</label><a href="javascript:login()"><img src="/image/login-btn.jpg" alt="��¼��ť" /></a><a href="/sendPassword.do" target="_blank" >������룿</a></p>
+ <div class="clearBoth"></div>
+ <p class="line"></p>
+ <p class="words">��û�������˺���</p>
+ <p class="registe-btn"><a href="/userRegEdit.do?regType=earner"><img src="/image/registe-btn.jpg" alt="ע�ᰴť" /></a></p>
+ </div>
+ <div class="footer"></div>
+
+ </div>
+ </form>
+
+ <!--��������-->
+ <div class="advantage">
+ <div class="border-top"><h3>��������</h3></div>
+ <div class="border-middle">
+ <a href="/html/youshi1.html" class="earner">��վ������</a>
+ <a href="/html/youshi2.html" class="plat">ƽ̨����</a>
+ <a href="/html/youshi3.html" class="advertiser">���������</a>
+ </div>
+ </div>
+ <!--�Ǽ���վ��-->
+ <div class="earner-star">
+ <div class="border-top"><h3>�Ǽ���վ��</h3></div>
+ <div class="border-middle">
+ <ul>
+
+ <li>
+
+ �ѹ�
+<!-- </a> -->
+ </li>
+
+ <li>
+
+ 2345����
+<!-- </a> -->
+ </li>
+
+ <li>
+
+ ����
+<!-- </a> -->
+ </li>
+
+ <li>
+
+ 360
+<!-- </a> -->
+ </li>
+
+ <li>
+
+ ����
+<!-- </a> -->
+ </li>
+
+ <li>
+
+ �׹���
+<!-- </a> -->
+ </li>
+
+ </ul>
+ </div>
+ </div>
+ <!--ý�屨��-->
+ <div class="media-reports">
+ <div class="border-top"><h3>ý�屨��</h3></div>
+ <div class="border-middle">
+ <ul>
+ <li><a href="http://tech.hexun.com/2011-12-14/136291385.html" target="_blank">�����Ч�����Ӫ��߷���̳</a></li>
+ <li><a href="http://v.ku6.com/show/acM8cLy1ZOEDmaVF.html" target="_blank">���ͼ۾���ĵ��̽���������</a></li>
+ <li><a href="http://www.emar.com.cn/news/2011/0823/131.html" target="_blank">2011�ɴ�����������</a></li>
+ <li><a href="http://tech.qq.com/a/20110822/000414.htm" target="_blank">δ���ͳ���̴��п�Ϊ</a></li>
+ <li><a href="http://www.donews.com/original/201107/538423.shtm" target="_blank">���깫˾��õ���������</a></li>
+ <li><a href="http://v.ifeng.com/news/tech/201105/f4aa5d20-fa67-4446-bea9-128ee7843917.shtml" target="_blank">����ƽֻ̨��ܵ�������</a></li>
+ <li><a href="http://www.admin5.com/article/20110603/348969.shtml" target="_blank">������Ч��Ӫ��</a></li>
+ <li><a href="http://tech.qq.com/a/20110521/000146.htm" target="_blank">��������վ���ɻ�3�ڷֳ�</a></li>
+ </ul>
+ </div>
+ </div>
+ <!--�������-->
+ <div class="Speech">
+ <div class="border-top"><h3>�������</h3></div>
+ <div class="border-middle">
+ <div class="words">
+ <p><span>��Сվ</span>��һ�����վ�����ֵ�����ӵ�м���IP�����վ�����������𷢺������и��ܵ������𷢹�����Ա���ȳ��רҵ���Ͻ����˫�����ϵ��Ż�Ŭ������벻������ף�������Խ��Խ��!</p>
+ </div>
+ <div class="words">
+ <p><span>Highwell</span>������Ϊ�й�Ч��Ӫ���һ��ˣ����Ƿdz������ܳ�Ϊ���𷢵ĺ����飬Ҳϣ������Я�����𷢹�ͬ��չ��</p>
+ </div>
+ <div class="words">
+ <p><span>����ţ</span>���𷢻�ַdz��ޣ����ڶһ����ƶ���ֵ������Ҫ��׬Ӷ����ܻ�֣��һ�������Ʒ����</p>
+ </div>
+ </div>
+ </div>
+ <!--�ϵ����-->
+ <div class="service">
+ <div class="border-top"><h3>�ϵ����</h3></div>
+ <div class="border-middle">
+ <p>��������010-58794151-6358</p><p>��վ�����010-58793980-8806</p><p>�������䣺<a href="mailto:kefu@emar.com.cn">�ͷ�����</a><a href="mailto:kexixing@emar.com.cn">Ͷ������</a></p>
+
+ </div>
+ </div>
+ </div>
+ <div class="main-right">
+ <!--�Ҳ��һ������-->
+ <div class="first">
+ <!--����ͼ-->
+ <div class="focus-map">
+ <div id="MainPromotionBanner">
+ <div id="SlidePlayer">
+ <ul class="Slides">
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=227"><img src='http://image.yiqifa.com/ad_images/images/index/24/8/8/1325323016831.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=3601"><img src='http://image.yiqifa.com/ad_images/images/index/24/39/57/1325647431355.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/bulletinView.do?id=11875"><img src='http://image.yiqifa.com/ad_images/images/index/24/58/58/1325647167958.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=5848"><img src='http://image.yiqifa.com/ad_images/images/index/24/2/2/1325759428404.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/bulletinView.do?id=11866&amp;pageNumber=1&amp;pageSize=20"><img src='http://image.yiqifa.com/ad_images/images/index/24/45/13/1325645867334.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=6117"><img src='http://image.yiqifa.com/ad_images/images/index/24/44/12/1325845785383.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=5625"><img src='http://image.yiqifa.com/ad_images/images/index/24/35/61/1325656503373.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=5731"><img src='http://image.yiqifa.com/ad_images/images/index/24/2/62/1324981503424.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=4712"><img src='http://image.yiqifa.com/ad_images/images/index/24/18/14/1325761283213.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=298"><img src='http://image.yiqifa.com/ad_images/images/index/24/29/3/1325156816678.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=6427"><img src='http://image.yiqifa.com/ad_images/images/index/24/38/58/1325843474687.jpg' /></a></li>
+
+ <li><a target="_blank" href="http://www.yiqifa.com/searchCampaignView.do?campaignId=5997"><img src='http://image.yiqifa.com/ad_images/images/index/24/14/50/1325034768135.jpg' /></a></li>
+
+ </ul>
+ </div>
+ <script type="text/javascript">
+ TB.widget.SimpleSlide.decoration('SlidePlayer', {eventType:'mouse', effect:'scroll'});
+ </script>
+ </div>
+ </div>
+ <!--��ֽ���-->
+ <div class="integral">
+ <div class="border-top"><h3>��ֽ���</h3><a href="/html/jifenjihua.html">�����ʲô��</a></div>
+ <div class="border-middle">
+ <ul class="pic">
+
+
+
+ <li><img src="/image/chongzhi.jpg" border="0" alt="��Ʒͼ" /></li>
+ <li><img src="/image/ka.jpg" border="0" alt="��Ʒͼ" /></li>
+ <li><img src="/image/xiangji.jpg" border="0" alt="��Ʒͼ" /></li>
+ <li><img src="/image/pic05.jpg" border="0" alt="��Ʒͼ" /></li>
+
+ </ul>
+ <p class="title">�һ���̬</p>
+ <ul class="list">
+
+ <li>��Ա<span class="font_red">to*****</span>
+ �ɹ��һ�<span class="font_blue_1">�ƶ���ֵ��100Ԫ</span></li>
+
+ <li>��Ա<span class="font_red">to*****</span>
+ �ɹ��һ�<span class="font_blue_1">�ƶ���ֵ��100Ԫ</span></li>
+
+ <li>��Ա<span class="font_red">to*****</span>
+ �ɹ��һ�<span class="font_blue_1">�ƶ���ֵ��100Ԫ</span></li>
+
+ </ul>
+ </div>
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <!--�Ҳ�ڶ�������-->
+ <div class="second">
+ <!--���𷢹���-->
+ <div class="yiqifa-announcement hiddenStyle">
+ <div class="border01-top"><h3>���𷢹���</h3><a href="/bulletinList.do"><img src="/image/btn02.jpg" alt="���" /></a><a id="yqfRss" href="#"><img src="/image/btn01.jpg" alt="����" /></a></div>
+
+ <ul>
+
+
+ <li><a href="/bulletinView.do?id=11771" target="_parent">����Ҫ֪ͨ��Ϊ�˰�ȫ�붨���޸�����</a></li>
+
+ <li><a href="/bulletinView.do?id=11458" target="_parent">�����𷢡����𷢻�ƴ˫12Ӷ��������վ��׬�ĸ�࣬һ��....</a></li>
+
+ <li><a href="/bulletinView.do?id=11871" target="_parent">�����𷢡����𷢻���֪ͨ������</a></li>
+
+ <li><a href="/bulletinView.do?id=8869" target="_parent">����Ҫ֪ͨ���������ȷ�����ÿ�ո���</a></li>
+
+ <li><a href="/bulletinView.do?id=11962" target="_parent">���ָ�����֪ͨ��1�۵꼴����ָ�����ƹ㣡</a></li>
+
+ <li><a href="/bulletinView.do?id=11961" target="_parent">��1��ͯװ������������ͯװ ���޸�����</a></li>
+
+
+
+ </ul>
+ </div>
+ <!--������-->
+ <div class="advertiser-announcement">
+ <div class="border01-top"><h3>�����̬</h3><a href="/advertiserTrendsList.do"><img src="/image/btn02.jpg" alt="���" /></a><a href="#" id="ggzRss"><img src="/image/btn01.jpg" alt="����" /></a></div>
+
+ <ul>
+
+
+ <li><a href="/bulletinView.do?id=11974" target="_parent">����͹�����Һ�����Ӵ���� ��߷�ȯ600Ԫ</a></li>
+
+ <li><a href="/bulletinView.do?id=11973" target="_parent">���ߺ��̳ǡ������ְ��Ŵ�ս</a></li>
+
+ <li><a href="/bulletinView.do?id=11972" target="_parent">��ţ�����һҹ�׼���������װ ֻ��219Ԫ</a></li>
+
+ <li><a href="/bulletinView.do?id=11971" target="_parent">����Ʒ�����Ӱ �����ݻ�</a></li>
+
+ <li><a href="/bulletinView.do?id=11970" target="_parent">����ѡ�2012������ȫ����200��100</a></li>
+
+ <li><a href="/bulletinView.do?id=11969" target="_parent">���ȿ͡�ÿ��˵�룬6����Ʒ�������</a></li>
+
+
+
+ </ul>
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <!--�Ҳ���������ݣ�ҳǩ�л����ֻ��-->
+ <div class="all-active">
+ <ul class="tabs">
+ <li><a href="#">�Ƽ�</a></li>
+ <li><a href="#">���»</a></li>
+ <li><a href="#">��һ</a></li>
+ </ul>
+ <div>
+ <div class="tab_content" id="tab1">
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=255' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/30/2/1320139046081.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=5579' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/1/1/1324610597830.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6198' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/61/3/1323417733744.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=227' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/31/63/1301640952491.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=247' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/21/53/1268641272660.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=254' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/58/6/1268641188128.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=4330' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/36/60/1324968701232.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=245' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/4/60/1320397864634.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=1085' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/24/56/1320913981265.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=4018' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/3/3/1257496436219.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <div class="clearBoth"></div>
+ </div>
+ <div class="tab_content" id="tab2">
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6436' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/58/6/1325752609196.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6402' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/10/10/1325813302053.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6439' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/50/50/1325309858633.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6369' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/26/58/1325310113918.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6403' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/36/4/1324973086320.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://yiqifa.com/searchCampaignView.do?campaignId=6392' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/18/14/1324896276804.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6299' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/10/10/1324892218253.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=5980' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/51/13/1324538713550.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://yiqifa.com/searchCampaignView.do?campaignId=6381' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/24/56/1324517606386.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6391' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/45/13/1324454004587.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <div class="clearBoth"></div>
+ </div>
+ <div class="tab_content" id="tab3">
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=5630' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/41/9/1325759347454.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6337' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/5/59/1324369250800.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6356' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/36/60/1323327887859.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6170' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/41/9/1320145202193.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6275' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/0/0/1321407920128.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=263' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/63/1/1323168052811.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6298 ' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/images/index/24/27/5/1320636574992.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6252' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/50/50/1320145686567.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6199' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/33/1/1320145165098.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <a href='http://www.yiqifa.com/searchCampaignView.do?campaignId=6193' target="_blank">
+
+
+ <img src="http://image.yiqifa.com/ad_images/contentmanage/24/33/1/1320145184860.jpg" width="130" height="109" class="index_img0818">
+
+
+
+ </a>
+
+ <div class="clearBoth"></div>
+ </div>
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <!--�Ҳ���������ݣ�һ����ɫ���ܣ�-->
+ <div class="special">
+ <ul class="specialtabs">
+ <li><a href="/html/gwk_about.html">�����</a></li>
+ <li><a href="/html/goldchain.html">����</a></li>
+ <li>�Զ������</li>
+ <li>�ƶ����</li>
+ </ul>
+ <div>
+ <div class="tab_contents" id="specialtab1"><img src="/image/pic08.jpg" /></div>
+ <div class="tab_contents" id="specialtab2"><img src="/image/pic17.jpg" /></div>
+ <div class="tab_contents" id="specialtab3"><img src="/image/pic16.jpg" /></div>
+ <div class="tab_contents" id="specialtab4"><img src="/image/pic15.jpg" /></div>
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <!--�Ҳ���������ݣ���վ������flash��-->
+ <div class="profit">
+ <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="745" height="90">
+ <param name="movie" value="/image/745-90.swf" />
+ <param name="quality" value="high" />
+ <embed src="/image/745-90.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="745" height="90"></embed>
+ </object>
+ </div>
+ <!--�Ҳ���������ݣ��Ż�ȯ��-->
+ <div class="coupon">
+ <div class="border-top"><h3>�Ż�ȯ</h3></div>
+ <div class="border-middle">
+ <ul>
+
+
+
+ <li>
+
+ <div class="pic">
+ <div class="left">
+ <p>100-15</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/30/2/1299837171228.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+
+ <li>
+
+ <div class="pic">
+ <div class="left">
+ <p>200-30</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/30/2/1299837171228.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+
+ <li>
+
+ <div class="pic">
+ <div class="left">
+ <p>50-10</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/34/2/1293759498968.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+ <li class="last">
+
+
+ <div class="pic">
+ <div class="left">
+ <p>500-200</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/13/51/1309954203591.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+
+ <li>
+
+ <div class="pic">
+ <div class="left">
+ <p>99-10</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/6/6/1291198182949.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+
+ <li>
+
+ <div class="pic">
+ <div class="left">
+ <p>100-15</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/56/59/37/1261378747784.JPG" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+
+ <li>
+
+ <div class="pic">
+ <div class="left">
+ <p>68-5</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/29/61/1290665442084.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+
+ <li class="last">
+
+
+ <div class="pic">
+ <div class="left">
+ <p>80-20</p>
+ <img src="http://image.yiqifa.com/ad_images/reguser/24/54/10/1281329820123.jpg" width="80" height="40" border="0" />
+ </div>
+ <div class="right">
+ <p>���</p>
+
+ <p><a href="/userLogin.do?yhq=yhq"><img src="/image/btn03.jpg" alt="ȥ��ȡ" /></a></p>
+
+ </div>
+ <div class="clearBoth"></div>
+ </div>
+ <br />
+
+ </li>
+
+ <div class="clearBoth"></div>
+ </ul>
+ </div>
+ </div>
+ </div>
+ <div class="clearBoth"></div>
+ <!--�������ϵ���Ƕ���-->
+ <div class="contact">
+ <div class="fold"></div>
+ <div class="open">
+ <div class="title"></div>
+ <div class="content">
+ <ul>
+ <li><a href="http://wpa.qq.com/msgrd?v=3&uin=1939337306&site=qq&menu=yes"><span><img src="/image/qqimg.jpg" /></span>��������</a></li>
+ <li><a href="http://wpa.qq.com/msgrd?v=3&uin=1048922014&site=qq&menu=yes"><span><img src="/image/qqimg.jpg" /></span>��ַ����</a></li>
+ <li><a href="http://wpa.qq.com/msgrd?v=3&uin=962748339&site=qq&menu=yes"><span><img src="/image/qqimg.jpg" /></span>��ֱý��</a></li>
+ </ul>
+ </div>
+ <div class="online"><a href="http://www.yiqifa.com/html/kefu.htm?arg=emar&style=4&charset=gbk&lytype=0&referer=http%3A%2F%2Fwww.eqifa.com%2F&keyword=&tpl=crystal_blue" target="_blank"><img src="/image/online.jpg" /></a></div>
+ </div>
+ </div>
+</div>
+<!--����β�ļ�-->
+
+<div class="footer">
+ <!--�µ���-->
+ <div class="nav-bottom">
+ <a href="/html/aboutus.html">��������</a>|<a href="/html/Contactus.html">�ϵ����</a>|<a href="/html/job.html">��ƸӢ��</a>|<a href="/html/tiaokuan.html">�������</a>|<a href="/html/fws_link.html">������</a>|<a href="/html/map.html">��վ��ͼ</a>
+ </div>
+ <p class="words">Copyright&copy;2004-2010 �������Ч��Ӫ��ƽ̨ [��ICP��10001024��] ������Ӫ�������������߿Ƽ����޹�˾</p>
+ <!--������Ϣ-->
+ <p class="beian"><a class="beian1" target="_blank" href="http://www.baic.gov.cn/"></a><a class="beian2" target="_blank" href="http://www.baic.gov.cn/"></a><a class="beian3" target="_blank" href="http://www.baic.gov.cn/"></a><a class="beian4" target="_blank" href="http://www.baic.gov.cn/"></a></p>
+</div>
+
+<!--RSS����-->
+<div class="rss">
+ <div class="float-top"><span class="ftop-l"></span><span class="ftop-r"></span>
+ <div class="ftop-m">
+ <h3><a class="win-close" href="#" id="rssClose"></a><a target="_blank" href="http://baike.baidu.com/view/1644.htm" class="more">ʲô��RSS��</a>RSS����</h3>
+ </div>
+ </div>
+ <div class="float-mid">
+ <p class="rss-title">�����Ķ���ֱ�Ӷ��ģ�</p>
+ <p class="rss-list"><a id="xianguoRss" target="_blank" href="" class="rss-xianguo"></a><a href="" target="_blank" id="googleRss" class="rss-google"></a></p>
+ <p class="rss-adr">
+ <label>���ĵ�ַ��</label><span><input type="text" id="rssAddress" value="" />
+ <input type="button" value="����" onclick="copyToClipboard()" /></span>
+ <em>���û��RSS�Ķ�����<a target="_blank" href="http://down.tech.sina.com.cn/content/3034.html">�������</a></em>
+ </p>
+ </div>
+ <div class="float-bottom"><span class="fbot-l"></span><span class="fbot-r"></span><div class="fbot-m"><p></p></div> </div>
+</div>
+</body>
+</html>
View
418 test/charsets/iso-8859-1
@@ -0,0 +1,418 @@
+
+<html>
+<head>
+<meta name="google-site-verification" content="jAe5iatPlve0j-h6pe6lOCIzQFRTD_MG4U9o4NEyVFI" />
+<TITLE>ZEDO Advertising Technology Partner</TITLE>
+<META NAME="DESCRIPTION" CONTENT="ZEDO offers a variety of internet advertising technology solutions for publishers. ZEDO provides premium publishers with more options and more visibility to make more revenue." />
+<META NAME="keyphrase" CONTENT="CPC, CPM, CPA, zedo ads, ad solutions for publishers advertisers and ad networks, ad rotation software, Banner rotation software, marketing, sales, banner, advertise, advertising, advertisement, online ads, paying, ads, ad, banner network, web promotion, banner exchange, direct marketing, cost per click, value click, double click, web marketing, link banner, geo targeting, behavioral targeting, retargeting, remarketing">
+<META NAME="KEYWORDS" CONTENT="banner serving, pop-ups, ad rotation, advertising, CPM, CPC, marketing, online media, trafficking, online ad, third generation technology, self targeting, selftargeting, adremote, ad remote, edge serving, edgeserving, geo targeting, targeting, promotions, web network, content delivery network, network marketing, internet commerce, media, advertisement, ad management, adserver, ad server, ad serving, ad delivery, ad targeting, admanager, ad manager, advertising software, c-commerce data mining and tracking software, real time reporting, banner server, ad server, ad serving, ad software, web-based banner utility, banner serving, ad server solutions, banner management software, tracking, online ad serving technology, advertising serving and management tool, rotating banner ads, statistics, impressions, click through, affiliate management, interactive marketing units, banner advertising rotation, advertising standards, banner rotation, advertising exchanges, internet advertising delivery application, banner rotation, advertising banner management system, skyscrapers, affiliate tracking, ad serving, banner exchange, ad cycle, pop-ups, banner-server, pop under, ad manager, management software, ROI" />
+<META name="verify-v1" content="Yic+kaAuVbgofy8eJL5s8zNHlb1d3c7obY4ma9EWQKw=" />
+<META NAME="author" CONTENT="webmaster@zedo.com">
+<META NAME="robots" CONTENT="all">
+<META NAME="rating" CONTENT="General">
+<META NAME="author" CONTENT="ZEDO Inc.">
+<META NAME="revisit" CONTENT="1 days">
+<META NAME="revisit-after" CONTENT="1 days">
+
+<META NAME="distribution" CONTENT="global">
+<META NAME="copyright" CONTENT="(C) Copyright 1999-2005 ~ZEDO.com">
+<META NAME="language" CONTENT="english">
+<META NAME="thieves" CONTENT="Ad Server - Ad Serving Technology">
+<META HTTP-EQUIV="expires" CONTENT="0">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<meta http-equiv="P3P" content="CP='CAO DSP COR LAW BUS PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC OTC DEVa TAIa OUR'">
+<script language="JavaScript" src="shared/AC_RunActiveContent.js"></script>
+<link rel="icon" href="http://www.zedo.com/favicon.ico" type="image/x-icon">
+<link rel="stylesheet" href="http://www.zedo.com/shared/brochure.css" type="text/css">
+<link rel="stylesheet" href="http://www.zedo.com/shared/tabs.css" type="text/css">
+<script language="javascript">AC_FL_RunContent = 0;</script>
+<script src="shared/flash_detect.js" language="javascript"></script>
+<script src="http://www.zedo.com/shared/brochure_script.js" language="javascript"></script>
+
+
+<script src="./shared/vScroller.js" language="javascript"></script> <!-- vertical scoller script -->
+
+
+</head>
+
+<body topmargin="0">
+<table width="100%" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td>&nbsp;</td>
+ <td width="900" valign="top" align="center">
+ <script type="text/javascript">
+ var urlstr="";
+ urlstr = document.URL;
+ urlstr = urlstr.replace("http://www.zedo.com/","");
+ document.write("<iframe src='./shared/commonHeader.htm?pg="+urlstr+"' frameborder='0' height='155' width='900' scrolling='no'></iframe>");
+ </script>
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
+<tr>
+ <td align="center">
+ <TABLE cellpadding="0" cellspacing="0" border="0">
+ <TR>
+ <TD>
+ <!--
+ <SCRIPT LANGUAGE="JavaScript">
+ var clickThroURL= "http://www.zedo.com";
+ var rightMenuItem = "visit ZEDO.com";
+ rightMenuItem= "";
+ var readMoreClickThro= "http://www.zedo.com/product/for-Publishers.htm";
+ var bannerFlashVar = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="900" height="214" id="main" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="menu" VALUE="false"><param name="scale" VALUE="noscale"><param name="salign" VALUE="LT"><param name="wmode" value="transparent"><param name="movie" value="./shared/main.swf?clickThroURL='+escape(clickThroURL)+'&rightMenuItem='+escape(rightMenuItem)+'&readMoreClickThro='+escape(readMoreClickThro)+'" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /> <embed src="./shared/main.swf?clickThroURL='+escape(clickThroURL)+'&rightMenuItem='+escape(rightMenuItem)+'&readMoreClickThro='+escape(readMoreClickThro)+'" quality="high" bgcolor="#ffffff" width="900" height="214" scale="noscale" salign="LT" name="main" align="middle" menu="false" wmode="transparent" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>';
+ document.write(bannerFlashVar);
+ </SCRIPT>
+ -->
+
+ <img src="./images/brochure/banner_homePage.jpg" width="900" height="214" onClick="document.location='http://www.zedo.com/product/for-Publishers.htm'" style="cursor:pointer;">
+ </TD>
+ </TR>
+ </TABLE>
+ </td>
+
+
+
+</tr>
+<tr><td style="height:10px;" colspan="3"></td> </tr>
+<tr>
+ <td align="center">
+ <a href="http://www.zedo.com/inview"><img src="images/brochure/InviewTabHP.gif" border="0" width="902" height="136"></a>
+ </td>
+
+
+</tr>
+<tr><td style="height:2px;" colspan="3"></td> </tr>
+<tr>
+ <td valign="top">
+ <table cellpadding="0" cellspacing="10" border="0" width="100%">
+ <tr>
+
+
+ <td width="300" valign="top">
+<table cellpadding="0" cellspacing="0" border="0" width="100%">
+ <tr><td>
+ <div class="roundBox">
+ <table cellpadding="5" cellspacing="0" border="0">
+ <tr>
+ <td class="greyTableHead_green" style="padding-top:8px;" nowrap>Publisher
+ solutions, tools, and services</td>
+ </tr>
+ <tr>
+ <td style="padding-left:5px;"> <SCRIPT LANGUAGE="JavaScript">
+ point_DrawTable();
+ </SCRIPT> </td>
+
+ </tr>
+ </table> </div></td></tr>
+ <tr><td height="13"></td>
+ </tr>
+ <tr><td>
+<div class="roundBox"><table cellpadding="3" cellspacing="0" border="0">
+ <tr>
+ <td class="greyTableHead_green" nowrap style="padding-top:8px;">ZEDO
+ in the News</td>
+ </tr>
+
+ <tr>
+ <td> <table cellpadding="3" cellspacing="0" border="0">
+ <tr>
+ <td valign="top"><div class="notesBullet"></div></td>
+ <td class="greyTablContent" valign="top" nowrap><a href="http://www.zedo.com/press/20110908-fastcompany.html">Overcoming
+ Corporate Culture Challenges</a> <table cellpadding="0" cellspacing="0" border="0" style="padding-top:5px;">
+ <tr>
+ <td nowrap class="greyTablContent_italic">September
+ 8, 2011</td>
+ </tr>
+
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" height="10"></td>
+ </tr>
+ <tr>
+ <td valign="top"><div class="notesBullet"></div></td>
+ <td class="greyTablContent" valign="top" nowrap><a href="http://www.zedo.com/press/20110906-fe.html" target="_self">Interview:
+ 'Innovations change user expirence'</a> <table cellpadding="0" cellspacing="0" border="0" style="padding-top:5px;">
+
+ <tr>
+ <td class="greyTablContent_italic">September
+ 6, 2011</td>
+ </tr>
+ </table></td>
+ </tr>
+ <tr>
+ <td colspan="2" height="10"></td>
+ </tr>
+ <tr>
+ <td valign="top"><div class="notesBullet"></div></td>
+
+ <td class="greyTablContent" valign="top" nowrap><a href="http://www.zedo.com/press/20110905-businessline.html" target="_self">Interview:
+ 'What drives managers at work'</a> <table cellpadding="0" cellspacing="0" border="0" style="padding-top:5px;">
+ <tr>
+ <td class="greyTablContent_italic">September
+ 5, 2011</td>
+ </tr>
+ </table></td>
+ </tr>
+ </table></td>
+ </tr>
+
+ </table> </div>
+</td></tr>
+</table>
+
+
+ </td>
+
+ <td valign="top" width="345">
+<table cellspacing="0" cellpadding="0" border="0">
+<tr>
+<td valign="top">
+ <div class="roundBox">
+ <table cellspacing="0" cellpadding="0" border="0">
+ <tbody>
+
+ <tr>
+ <td align="center" style="padding-top: 5px; padding-bottom: 2px; font-size: 16px; color: rgb(102, 102, 102);" class="commonMain">Introducing...</td>
+ </tr>
+ <tr>
+ <td> <table cellspacing="0" cellpadding="0" border="0">
+ <tbody>
+ <tr>
+ <td align="center"><img src="./images/brochure/ZINCLogo.gif" width="158" height="48" name="ZINC Logo"></td>
+ </tr>
+
+ <tr>
+ <td class="greyTablContent" align="center" style="padding-bottom:3px;">Click
+ to buy guaranteed placements on newspaper
+ sites.</td>
+ </tr>
+ <tr><td height="25" align="right" class="greyTablContent"><a href="http://blog.zedo.com/wordpress/blog/2011/04/07/zedo-announces-the-zinc-exchange/"><img border="0" src="./images/brochure/bullet_home.gif"></a>&nbsp;&nbsp;<a href="http://blog.zedo.com/wordpress/blog/2011/04/07/zedo-announces-the-zinc-exchange/">Know More</a></td>
+ </tr>
+ </tbody>
+ </table></td>
+ </tr>
+
+ </tbody>
+ </table>
+ </div>
+ </td>
+
+</tr>
+ <tr><td height="13"></td>
+ </tr>
+
+<tr><td valign="top"> <div class="roundBox">
+
+<table cellspacing="0" cellpadding="5" border="0">
+ <tr>
+ <td class="greyTableHead_green" nowrap style="padding-top:8px;padding-bottom:6px;">Make money below the fold!</td>
+ </tr>
+
+ <td class="greyTablContent" style="line-height:19px;">
+ If you still don't believe you can monetize
+ content below the fold, let us show you otherwise.
+ <p>Analytics for advertisers have never been
+ better. They want quality brand-safe content
+ and ads that are viewed not hidden below
+ the fold. This presents a challenge to publishers
+ especially if they have long pages. But
+ publishers don't worry - below the fold
+ can be monetized at good CPMs using ZEDO
+ technology. Advertisers using tools like
+ DoubleVerify will be able assure themselves
+ their ads have been seen -- even below the
+ fold.</p>
+ <p><a href="http://www.zedo.com/inview">Get in touch with our sales representative today!<br>
+
+ </a><br>
+ </p>
+ </td>
+ </tr>
+ </table>
+ </div>
+
+ </td>
+</tr>
+</table>
+</td>
+ <td width="182" valign="top"><table width="182" border="0" align="center" cellpadding="0" cellspacing="0" class="commonMain">
+
+<!-- <tr>
+ <td valign="top"><a href="http://www.ad-tech.com/ny/adtech_new_york.aspx" target="_blank"><img src="./images/brochure/adtech2011BtnHP.gif" width="182" height="98" border="0"></a></td>
+ </tr>
+ <tr>
+ <td style="height:13px;"></td>
+ </tr>
+ --> <tr>
+ <td style="height:10px;"><a href="http://www.zedo.com/product/richMedia.htm"><img src="images/brochure/richMediaArt.gif" width="182" height="100" border="0"></a></td>
+ </tr>
+ <tr>
+ <td style="height:13px;"></td>
+ </tr>
+ <tr>
+ <td><img src="./images/brochure/quotesTop.gif" width="182" height="39"></td>
+ </tr>
+ <tr>
+ <td valign="top" background="images/brochure/quotesBg.gif" style="padding:5px;">
+ <!-- vertical scroller starts -->
+ <div id="marqueecontainer" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed">
+ <div id="vmarquee" style="position: absolute; width: 98%;">
+ <div style="width:160px;">
+
+ <p><font color="#f4922a">"I am not exaggerating when I say I have never met a more professional and efficient group of people. I just sat next to the CEO of AdTech on the plane and told him there was no way we�d leave ZEDO. Your reporting, ease of use, ranking, and geo-targeting are industry leading and I�ve used them all, DART, Atlas, etc. Reporting is especially well done, this is a true asset to ZEDO as much as your human capital."</font><br>
+ <span style="font-size:11px; color:#666666;">- Peter S. Shin<br>VP, Business Development<br>Mobissimo</span></p>
+ <p><font color="#f4922a">"Zedo has reliable customer service. You can be certain that the support team will reply promptly to any questions posed."</font><br>
+ <span style="font-size:11px; color:#666666;">- Cheza Estacion<br>fomerly of ABS-CBN</span></p>
+ <p><font color="#f4922a">"I am very happy with your amazing support team. They are all very professional and responsive and help us with any issue we have."</font><br>
+ <span style="font-size:11px; color:#666666;">- Naama Miller<br>Director of Publisher Relations<br>XTEND Media</span></p>
+ <p> <font color="#f4922a">"ZEDO has been a great partner year after year, working with us to develop high-impact Rich Media formats so we have something unique to offer our clients. Their support team backs us up 24/7."</font><br>
+ <span style="font-size:11px; color:#666666;">- Josh Peerless<br>Senior Interactive Developer, Corporate Marketing<br>CBS Interactive</span></p>
+
+ <p><font color="#f4922a">"ZEDO is always there when you need them...they listen/they respond/they act....they're a perfect ad serving partner"</font><br>
+ <span style="font-size:11px; color:#666666;">- Roary Wilder<br>CEO<br>AdGroups</span></p>
+ <p><font color="#f4922a">"ZEDO [is] a leading provider of ad serving solutions. Their function set, service, and uptime is in my opinion unparalleled. ZEDO will offer just about any functionality you can think of or expect from an ad serving provider at rates that you will find very hard to beat. I have worked with ZEDO for several years and have had nothing but excellent service from them."</font><br>
+ <span style="font-size:11px; color:#666666;">- Jess Dolgin<br>JMedia</span></p>
+ <p><font color="#f4922a">"ZEDO is light years ahead of any other ad serving company as far as serving our needs."</font><br>
+ <span style="font-size:11px; color:#666666;">- Major Customer in the Newspaper Space</span></p>
+ <p><font color="#f4922a">"[The ZEDO Implementation team's] help has been invaluable, and helped enable a smooth transition for us."</font><br>
+ <span style="font-size:11px; color:#666666;">- Shawn Verdin<br>Client Services Coordinator<br>iMedia Connection</span></p>
+ <p><font color="#f4922a">"I think ZEDO is the perfect ad server for any site or company looking to make money from unsold ad inventory."</font><br>
+ <span style="font-size:11px; color:#666666;">- Major Customer in the Newspaper Space</span></p>
+ <p><font color="#f4922a">"We find ZEDO to have the best reporting of all ad servers that our team uses on behalf of our clients, being both fast and flexible, allowing us to drill down into data from multiple views."</font><br>
+ <span style="font-size:11px; color:#666666;">- Doucette Media</span></p>
+ <p><font color="#f4922a">"I love all the great development work Zedo does and the highly responsive support team that is available 24/7."</font><br>
+ <span style="font-size:11px; color:#666666;">- Dorian Kim<br>Senior Ad Operations Manager<br>DogTime Media, Inc</span></p>
+ <p><font color="#f4922a">"ZEDO's ad ops team is experienced with our ad server and works with us to make sure they understand our specific needs... we never have to worry about being short on trafficking resources."</font><br>
+ <span style="font-size:11px; color:#666666;">- Kelly Bolyard<br>Vice President<br>Paddock Publications</span></p>
+ <p><font color="#f4922a">"I would recommend ZEDO to anyone, your teams are always so helpful."</font><br>
+ <span style="font-size:11px; color:#666666;">- Colleen Harrison<br>Account Manager<br>Cyberstrobe Marketing</span></p>
+ </div>
+ </div>
+ </div>
+ <!-- vertical scroller ends -->
+ </td>
+
+ </tr>
+ <tr>
+ <td><img src="images/brochure/quotesBottom.gif" width="182" height="39"></td>
+ </tr>
+ </table></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+
+
+ <table width="900" border="0" cellspacing="0" cellpadding="0">
+
+ <tr>
+ <td height="15" align="center">
+ <table cellpadding="0" cellspacing="0" width="680" border="0">
+ <tbody><tr>
+ <td><div class="down_Lcorner"></div></td>
+ <td align="center"><div class="down_Middle" align="middle" style="width:697px;">
+ <table cellpadding="0" cellspacing="0" border="0" align="center">
+ <tbody><tr>
+ <td align="center" style="padding-top:5px; padding-bottom:5px;"><a href="http://www.zedo.com/press/pressrelease-21042009.htm" target="_self"><img src="./images/brochure/googleCertInfo.gif" width="122" height="47" border="0"></a></td>
+ <td style="width:20px;"></td>
+ <td align="center" style="padding-top:5px; padding-bottom:5px;"><a href="https://otalliance.org/about/Members.htm" target="_blank"><img src="./images/brochure/ota.gif" width="100" height="47" border="0"></a></td>
+ <td style="width:20px;"></td>
+ <td align="center" style="padding-top:5px; padding-bottom:5px;"><a href="http://water.org/" target="_blank"><img src="./images/brochure/waterOrgInfo.gif" width="122" height="47" border="0"></a></td>
+ <td style="width:20px;"></td>
+ <td align="center" style="padding-top:5px; padding-bottom:5px;"><a href="http://www.zedo.com/press/pressrelease-0211-2010.htm" target="_self"><img src="./images/brochure/mediaTrustLogoSm.gif" width="122" height="47" border="0"></a></td>
+
+
+<!-- <td style="width:20px;"></td>
+ <td align="center" style="padding-top:5px; padding-bottom:5px;"><a href="http://www.zedo.com/press/pressrelease-09122009.htm" target="_self"><img src="./images/brochure/exelateLogo.gif" width="76" height="31" border="0"></a></td>
+ --> </tr>
+ </tbody></table>
+ </div>
+ </td>
+ <td><div class="down_Rcorner"></div></td>
+ </tr>
+ </tbody></table>
+ </td>
+ </tr>
+ <tr>
+ <td height="15"></td>
+ </tr>
+
+ <tr>
+ <td align="center" class="commonBottom"> <a href="../product/for-Publishers.htm" target="_top">Publishers</a>
+ | <a href="../product/for-Advertisers.htm" target="_top">Advertisers</a>
+ | <a href="../product/forNetworks.htm" target="_top">Ad Networks</a>
+ | <a href="../company/about.htm" target="_top">About Us</a> | <a href="../press/press.htm" target="_top">News</a>
+ | <a href="../contact/contact.htm" target="_top">Contact Us </a> |
+ <a href="../company/privacy.htm" target="_top">Privacy Statement</a>
+ | <a href="http://www.zedo.com/tools/zedo_optout.cgi" target="_top">Opt
+ Out</a> | <a href="../company/anti-spyware.htm" target="_top">Anti-Spyware</a><a href="../company/optout.htm" target="_top"></a>
+ | <a href="http://blog.zedo.com" target="_top">Blog</a><a href="../company/optout.htm" target="_top"></a>
+ | <a href="mailto:salesinfo@zedo.com">Contact Sales</a><br>
+
+ <div style="padding-top:5px;"><a href="../ad-server.html" target="_top">What
+ is an Ad-Server</a></div>
+ <br> &copy; 2000-
+ <SCRIPT LANGUAGE="JavaScript">
+<!--
+ var mydate=new Date();
+ var year=mydate.getYear();
+
+ if (year < 1000){
+ year+=1900;
+ }
+ document.write(year);
+//-->
+</SCRIPT>
+ , ZEDO, Inc. </td>
+ </tr>
+ </table>
+ </td>
+ <td>&nbsp;</td>
+ </tr>
+
+</table>
+<!-- myseofriend.com --><script type="text/javascript">//<![CDATA[
+(function() {
+ function msf_async_load(){
+ var s = document.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'http://tracker.myseofriend.net/myseofriend.js';
+ var x = document.getElementsByTagName('script')[0];
+ x.parentNode.insertBefore(s, x);
+ s.onload = msf_async_load_after;
+ s.onreadystatechange = function() {
+ if (this.readyState == 'complete') {
+ msf_async_load_after();
+ }}
+ }
+ if (window.attachEvent){
+ window.attachEvent('onload', msf_async_load);
+ }else{
+ window.addEventListener('load', msf_async_load, false);
+ }
+ function msf_async_load_after(){
+ SA.setSetting('baseUrl', 'http://myseofriend.net/myseofriendlog.php');
+ SATracker = new SA.tracker();
+ SATracker.setSiteId('d1c91a8769fbdde5a294ff810f960dd0');
+ SATracker.trackPageView();
+ }
+})();
+//]]>
+</script><!-- myseofriend.com -->
+
+
+ <!-- Javascript tag -->
+<!-- begin ZEDO for channel: ZEDO Homepage - www , publisher: default , Ad Dimension: Slider - 1 x 1 -->
+<script language="JavaScript">
+var zflag_nid="187"; var zflag_cid="234"; var zflag_sid="0"; var zflag_width="1"; var zflag_height="1"; var zflag_sz="94";
+</script>
+<script language="JavaScript" src="http://c1.zedo.com/jsc/c1/fo.js"></script>
+<!-- end ZEDO for channel: ZEDO Homepage - www , publisher: default , Ad Dimension: Slider - 1 x 1 -->
+<!-- Begin ZEDO -->
+<img src="http://d7.zedo.com/img/bh.gif?n=826&g=20&a=2&s=1&l=1&t=i&f=1&e=1" width="1" height="1" border="0" >
+<!-- end ZEDO -->
+
+</body>
+</html>
View
104 test/charsets/shift_jis
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=shift_jis" />
+<meta http-equiv="Content-Script-Type" content="text/javascript" />
+<meta http-equiv="Content-Style-Type" content="text/css" />
+<meta name="Description" CONTENT="�u�n�b�L���O�v����u���ӂ̂������v�܂ł��L���J�o�[���鋐��f���ŒQ�w�Q�����˂�x�ւ悤�����I">
+<meta name="KeyWords" CONTENT="�Q�����˂�, �f����, 2ch, BBS">
+<meta name="Author" CONTENT="�Q�����˂�">
+<meta name="verify-v1" content="hMevVuWJIPYrUj9ItfRJByoLNIpyhnrWaywiH+IFocU=" />
+<title>�Q�����˂�f���‚ւ悤����</title>
+<style type="text/css" media="all">
+@import url(2ch_top.css);
+</style>
+<script>
+<!--
+function fcs(){document.f.STR.focus();}
+-->
+</script>
+</head>
+
+<body onLoad="document.f.STR.focus()">
+
+<div id="wrapper">
+<div id="header">
+<div id="header_inside">
+<div class="header_left">
+<a href="http://www2.2ch.net/2ch.html"><img src="images/2ch_logo.gif" width="151" height="40" alt="�Q�����˂�" align="middle" border="0" /><a href="http://www2.2ch.net/2ch.html">�f����</a>�b
+<a href="http://c.2ch.net/">imode</a>�b<a href="http://orz.2ch.io/top.html">�g��orz</a>�b<a href="http://p2.2ch.net/">�r���[�Ap2</a>
+</div>
+
+<div class="senna_banner">
+
+<a href="http://razil.jp/product/senna/"><img src="images/senna88x31.gif" width="88" height="31" alt="Senna" align="middle" border="0" /></a>
+</div>
+<div class="header_right">
+<!---find 2ch form --->
+<form method=GET name=f action="http://find.2ch.net/" style="margin:0px">
+<input size=25 name=STR value="" class="form_input">
+<select name="TYPE" class="form_select">
+<option value="BODY">�{��</option>
+
+<option value="TITLE" selected>�X���b�h�^�C�g��</option>
+<option value="POSTERS">���e��</option>
+</select>
+<input type="image" src="images/search_button.gif" alt="����" class="form_button"><br />
+<input type=hidden name=BBS value=ALL>
+
+<input type=hidden name=ENCODING value=SJIS>
+<input type=hidden name=COUNT value=50>
+<div class="caption">�{������⌟��ݒ��<a href="http://find.2ch.net/moritapo/notlogin.php">���O�C��</a><a href="http://find.2ch.net/moritapo/welcome/">&raquo;�ڍ�</a></div>
+
+</form>
+</div>
+</div><!--- header_inside --->
+</div><!--- end of header--->
+
+<div id="under_header">
+<a href="http://newsnavi.2ch.net/">�j���[�X</a>�b<a href="http://headline.2ch.net/bbynews/">�w�b�h���C��</a>�b<a href="http://epg.2ch.net/">�e���r��</a>�b<a href="http://www.2ch.net/kakolog.html">�ߋ����O�q��</a>
+
+</div><!--- end of under header--->
+
+<div id="main">
+<iframe src="http://cast.texpo.jp/2chtop/main_frame.html" width="100%" height="550" scrolling="no" border="0" frameborder="0"></iframe>
+</div><!--- end of main--->
+
+<div id="footer_menu">
+<div class="guide">
+<a href="http://info.2ch.net/guide/">�g������</a>�b<a href="http://info.2ch.net/guide/adv.html#saku_guide">�폜�K�C�h���C��</a>�b<a href="http://www2.2ch.net/2ch2.html">�g���Ń��j���[</a>�b<a href="http://info.2ch.net/blog.html">�Ђ�䂫��L</a>�b<a href="http://www.2ch.net/ad.html">�L���̂��ē�</a>
+
+</div>
+
+<div class="service">
+<iframe src="http://cast.texpo.jp/2chtop/moritapo_frame.html" width="100%" height="50" scrolling="no" border="0" frameborder="0"></iframe>
+</div>
+
+<div class="banner">
+<A href="http://www.bb-chat.tv/" target=_blank><IMG height=60 src="http://img.bbchat.tv/images/bannar/46860-3.gif" width=468 border=0></A><br>
+</div>
+
+<div class="condition">
+�Q�����˂�̂����p�͗��p�Ҋe�ʂ̂����f�ɂ��C�����Ă��܂��b<a href="precautions.html">2ch�̃f�[�^���p�ɂ‚���</a>
+
+</div>
+</div><!--- end of footer_menu--->
+
+
+<div id="footer">
+<div class="footer_left">
+<a href="http://www.bunka.go.jp/jiyuriyo/" target="_blank">
+<img src="http://www.dd.iij4u.or.jp/~cap/y_3copyok.jpg" width="184" height="31" border="0" alt="���R���p�}�[�N" /></a>
+</div>
+
+<div class="footer_right">
+<a href="http://count.2ch.net/?index" target="_blank">
+<img src="http://count.2ch.net/ct.php/index" width="88" height="31" border="0" alt="��������J�E���^�["></a>
+
+
+</div>
+</div><!---end of footer--->
+
+</div><!--- end of wrapper--->
+</body>
+</html>
View
324 test/charsets/windows-1251
@@ -0,0 +1,324 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+<meta http-equiv="X-UA-Compatible" content="IE=edge" />
+<script type="text/javascript" src="/js/loader_nav7199_0.js"></script>
+
+<link rel="shortcut icon" href="/images/faviconnew.ico" />
+
+<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
+<meta name="description" content="<b>���������</b> � ������������� �������� ��� ������������ � ������ �����,<br>������� ��������� ���������� ������� ��������� �������. �� �����, ����� ������, ������������, �������������, ������ � ������� ������ ���������� � ��������." />
+
+<title>����� ����������</title>
+
+<noscript><meta http-equiv="refresh" content="0; URL=/badbrowser.php"></noscript>
+
+<link rel="stylesheet" type="text/css" href="/css/al/common.css?245" />
+<!--[if lte IE 6]><style type="text/css" media="screen">/* <![CDATA[ */ @import url(/css/al/ie6.css?19); /* ]]> */</style><![endif]-->
+<!--[if IE 7]><style type="text/css" media="screen">/* <![CDATA[ */ @import url(/css/al/ie7.css?13); /* ]]> */</style><![endif]-->
+
+<script type="text/javascript">
+var vk = {
+ ad: 1,
+ adupd: 120000, // 2 min
+ al: parseInt('4') || 4,
+ id: 0,
+ intnat: '' ? true : false,
+ host: 'vkontakte.ru',
+ lang: 0,
+ rtl: parseInt('') || 0,
+ version: 7199,
+ zero: false,
+ contlen: 6120,
+ loginscheme: 'https',
+ ip_h: 'e0831fb5a965306fad',
+ vc_h: '3c0badde2efed080358fef616b7955bb',
+ navPrefix: '/',
+ dt: parseInt('') || 0,
+ time: [2012, 1, 9, 2, 28]
+}
+
+window.locDomain = vk.host.match(/[a-zA-Z]+\.[a-zA-Z]+\.?$/)[0];
+var _ua = navigator.userAgent.toLowerCase();
+if (/opera/i.test(_ua) || !/msie 6/i.test(_ua) || document.domain != locDomain) document.domain = locDomain;
+var ___htest = (location.toString().match(/#(.*)/) || {})[1] || '';
+if (vk.al != 1 && ___htest.length && ___htest.substr(0, 1) == vk.navPrefix) {
+ if (vk.al != 3 || vk.navPrefix != '!') {
+ location.replace(location.protocol + '//' + location.host + '/' + ___htest.replace(/^(\/|!)/, ''));
+ }
+}
+
+var StaticFiles = {
+ 'common.js' : {v: 678},
+ 'common.css': {v: 245},
+ 'ie6.css' : {v: 19},
+ 'ie7.css' : {v: 13}
+ ,'lang0_0.js':{v:5479},'index.css':{v:15},'index.js':{v:21}
+}
+
+</script>
+<link type="text/css" rel="stylesheet" href="/css/al/index.css?15"></link><script type="text/javascript" src="/js/al/common.js?678"></script><script type="text/javascript" src="/js/lang0_0.js?5479"></script><script type="text/javascript" src="/js/al/index.js?21"></script>
+
+</head>
+
+<body onresize="onBodyResize()" class="is_rtl">
+ <div id="system_msg" class="fixed"></div>
+ <div id="utils"></div>
+
+ <div id="layer_bg" class="fixed"></div><div id="layer_wrap" class="scroll_fix_wrap fixed"><div id="layer"></div></div>
+ <div id="box_layer_bg" class="fixed"></div><div id="box_layer_wrap" class="scroll_fix_wrap fixed"><div id="box_layer"><div id="box_loader"><div class="loader"></div><div class="back"></div></div></div></div>
+
+ <div id="stl_left"></div><div id="stl_side"></div>
+
+ <script type="text/javascript">domStarted();</script>
+
+ <div class="scroll_fix_wrap" id="page_wrap">
+<div><div class="scroll_fix">
+ <div id="page_layout" style="width: 791px;">
+ <div id="page_header" class="p_head p_head_l0">
+ <div class="back"></div>
+ <div class="left"></div>
+ <div class="right"></div>
+ <div class="content">
+ <div id="top_nav" class="head_nav">
+ <a id="top_home_link" class="top_home_link fl_l" href="/" class="fl_l" style=""></a>
+ <div id="top_links">
+ <div class="fl_r" id="top_menu_wrap" style="display: none">
+ <a id="top_reg_link" class="fl_r top_nav_link" href="/join" style="display: none" onclick="return !showBox('join.php', {act: 'box', from: nav.strLoc}, {}, event)">�����������</a>
+ </div>
+ <a class="fl_l top_nav_link" href="" id="top_back_link" onclick="return nav.go(this, event, {back: true})"></a>
+ </div>
+</div>
+ </div>
+ </div>
+
+ <div id="side_bar" class="fl_l" style="">
+ <div id="quick_login">
+ <form method="POST" name="login" id="quick_login_form" action="https://login.vk.com/?act=login" onsubmit="if (vklogin) {return true} else {quick_login();return false;}">
+ <input type="hidden" name="act" value="login" />
+ <input type="hidden" name="q" value="1" />
+ <input type="hidden" name="al_frame" value="1" />
+ <input type="hidden" name="expire" id="quick_expire_input" value="" />
+ <input type="hidden" name="captcha_sid" id="quick_captcha_sid" value="" />
+ <input type="hidden" name="captcha_key" id="quick_captcha_key" value="" />
+ <input type="hidden" name="from_host" value="vkontakte.ru" />
+ <input type="hidden" name="from_protocol" value="http" />
+ <input type="hidden" name="ip_h" value="e0831fb5a965306fad" />
+ <div class="label">������� ��� e-mail:</div>
+ <div class="labeled"><input type="text" name="email" class="text" onfocus="show('quick_expire')" id="quick_email" /></div>
+ <div class="label">������:</div>
+ <div class="labeled"><input type="password" name="pass" class="text" onfocus="show('quick_expire')" id="quick_pass" /></div>
+ <div class="checkbox" id="quick_expire" onclick="checkbox(this);ge('quick_expire_input').value=isChecked(this)?1:'';"><div></div>����� ���������</div>
+ <input type="submit" class="submit" />
+ </form>
+ <div class="button_blue button_wide"><button id="quick_login_button">�����</button></div>
+ <div class="button_blue button_wide" id="quick_reg_button" style="display: none"><button onclick="top.showBox('join.php', {act: 'box', from: nav.strLoc})">�����������</button></div>
+ <div class="clear forgot"><a href="/restore" target="_top">������ ������?</a></div>
+</div>
+ </div>
+
+ <div id="page_body" class="fl_r" style="width: 631px;">
+ <div id="header_wrap2">
+ <div id="header_wrap1">
+ <div id="header" style="">
+ <h1 id="title">����� ����������</h1>
+ </div>
+ </div>
+ </div>
+ <div id="wrap_between"></div>
+ <div id="wrap3"><div id="wrap2">
+ <div id="wrap1">
+ <div id="content"><div id="index">
+ <iframe class="upload_frame" src="https://login.vk.com/?al_frame=1&from_host=vkontakte.ru&from_protocol=http&ip_h=e0831fb5a965306fad"></iframe>
+ <div class="content">
+ <p><b>���������</b> � ������������� �������� ��� ������������ � ������ �����,<br>������� ��������� ���������� ������� ��������� �������.</p>
+
+ <h2>������������ �����������</h2>
+
+ <div class="msg" id="ij_msg"></div>
+
+ <div class="ij_form">
+ <div class="ij_reg_row">
+ <input type="text" class="big_text" id="ij_first_name" value="" placeholder="���� ���" onkeydown="if (event.keyCode == 10 || event.keyCode == 13) Index.submitJoinStart();" />
+ </div>
+ <div class="ij_reg_row">
+ <input type="text" class="big_text" id="ij_last_name" value="" placeholder="���� �������" onkeydown="if (event.keyCode == 10 || event.keyCode == 13) Index.submitJoinStart();" />
+ </div>
+ <div class="ij_reg_row" id="ij_sex_row">
+ <input type="hidden" id="ij_sex" name="ij_sex" />
+ </div>
+ <div class="button_blue button_wide button_big ij_button">
+ <button id="ij_submit" onclick="Index.submitJoinStart()">
+ <span class="ij_with_arr">������������������</span>
+ </button>
+ </div>
+ </div>
+
+ <h2>� ��� ������� ���������?</h2>
+ <ul class="listing">
+ <li><span>����� �����, � �������� �� �����-���� �������, �������� ��� ��������.</span></li>
+ <li><span>������ ������ � �����, ������� ��� ��������, � ����� ����� ������.</span></li>
+ <li><span>������ ���������� � �������� � ����, ��� ��� �����.</span></li>
+ </ul>
+ </div>
+ <div class="reg">
+ <table cellspacing="0" cellpadding="0" id="ij_screens"><tr>
+ <td><a class="ij_scr" onclick="JoinPhotoview.show(0)"><img src="/images/join/dial_m.png" class="ijs_img" /></a></td>
+ <td><a class="ij_scr" onclick="JoinPhotoview.show(1)"><img src="/images/join/news_m.png" class="ijs_img" /></a></td>
+ <td><a class="ij_scr" onclick="JoinPhotoview.show(2)"><img src="/images/join/photos_m.png" class="ijs_img" /></a></td>
+ </tr></table>
+ </div>
+</div></div>
+ </div>
+</div></div>
+ </div>
+
+ <div id="footer_wrap" class="fl_r" style="width: 661px;">
+ <div id="bottom_nav">
+ <a href="/help.php?page=about">� �����</a>
+ <a href="/techsupp.php" style="">������</a>
+ <a href="/blog">����</a>
+ <a href="/help.php?page=terms">�������</a>
+ <a href="/ads">�������</a>
+ <a href="/developers.php">�������������</a>
+ <a href="/jobs.php" style="">��������</a>
+</div>
+<div id="footer" class="clear">
+ <div class="copy_lang"><a href="/help.php?page=about">���������</a> &copy; 2006-2012 <a onclick="ajax.post('al_index.php', {act: 'change_lang', lang_id: 0, hash: '2010b4aa278a76df5d'})">�������</a><a onclick="ajax.post('al_index.php', {act: 'change_lang', lang_id: 1, hash: '2010b4aa278a76df5d'})">���������</a><a onclick="ajax.post('al_index.php', {act: 'change_lang', lang_id: 3, hash: '2010b4aa278a76df5d'})">English</a><a onclick="showBox('lang.php', {act: 'lang_dialog'}, {noreload: true})">��� ����� &raquo;</a></div>
+ <div>
+
+
+ </div>
+</div>
+ </div>
+ <div class="clear"></div>
+ </div>
+</div></div></div>
+ <div class="progress" id="global_prg"></div>
+
+ <script type="text/javascript">
+ if (parent && parent != window && (browser.msie || browser.opera || browser.mozilla || browser.chrome || browser.safari || browser.iphone)) {
+ document.getElementsByTagName('body')[0].innerHTML = '';
+ } else {
+ domReady();
+ updateMoney(0);
+gSearch.init();
+if (window.qArr && qArr[5]) qArr[5] = [5, "�� �������", "", "goods", 0x00000100];
+if (browser.iphone || browser.ipad || browser.ipod) {
+ setStyle(bodyNode, {webkitTextSizeAdjust: 'none'});
+}var qf = ge('quick_login_form'), ql = ge('quick_login'), qe = ge('quick_email'), qp = ge('quick_pass');
+var qlb = ge('quick_login_button'), prgBtn = qlb;
+
+var qinit = function() {
+ setTimeout(function() {
+ ql.insertBefore(ce('div', {innerHTML: '<iframe class="upload_frame" id="quick_login_frame" name="quick_login_frame"></iframe>'}), qf);
+ qf.target = 'quick_login_frame';
+ }, 1);
+}
+
+if (window.top && window.top != window) {
+ window.onload = qinit;
+} else {
+ setTimeout(qinit, 0);
+}
+
+qf.onsubmit = function() {
+ if (!ge('quick_login_frame')) return false;
+ if (!trim(qe.value)) {
+ elfocus(qe);
+ return false;
+ } else if (!trim(qp.value)) {
+ elfocus(qp);
+ return false;
+ }
+ lockButton(prgBtn);
+ prgBtn = qlb;
+ return true;
+}
+
+window.focusLoginInput = function() {
+ scrollToTop(0);
+ notaBene('quick_email');
+}
+window.changeQuickRegButton = function(noShow) {
+ if (noShow) {
+ hide('top_reg_link', 'quick_reg_button');
+ show('top_search_link');
+ } else {
+ hide('top_search_link');
+ show('top_reg_link', 'quick_reg_button');
+ }
+}
+window.submitQuickLoginForm = function(email, pass, opts) {
+ setQuickLoginData(email, pass, opts);
+ if (opts && opts.prg) prgBtn = opts.prg;
+ if (qf.onsubmit()) qf.submit();
+}
+window.setQuickLoginData = function(email, pass, opts) {
+ if (email !== undefined) ge('quick_email').value = email;
+ if (pass !== undefined) ge('quick_pass').value = pass;
+ var params = opts && opts.params || {};
+ for (var i in params) {
+ var el = ge('quick_login_' + i);
+ if (el) {
+ val(el, params[i]);
+ } else {
+ qf.appendChild(ce('input', {type: 'hidden', name: i, id: 'quick_login_' + i, value: params[i]}));
+ }
+ }
+}
+
+if (qlb) {
+ qlb.onclick = function() { if (qf.onsubmit()) qf.submit(); };
+}
+
+if (browser.opera_mobile) show('quick_expire');
+Index.initNew();
+JoinPhotoview.init([{"src":"\/images\/join\/dial_1.png?1","width":790,"height":600,"desc":"��������� � �������� ������ ��� ������ ������ ���������"},{"src":"\/images\/join\/news_1.png?1","width":790,"height":600,"desc":"��������� ������� �� ����� ����� ������ � ��������� �����"},{"src":"\/images\/join\/photos_1.png?1","width":790,"height":600,"desc":"�������� ������������ � ������� �� ����� ����� � ��������"}]);
+cur.lang = extend(cur.lang || {}, {
+ index_screen_m_of_n: '����������� {num} �� {count}',
+ index_to_main: '������� ��������',
+ index_choose_sex: '������� ���'
+});
+var sd = false;
+if (sd) Index.initSexDD(sd);
+placeholderSetup('ij_first_name', {back: true});
+placeholderSetup('ij_last_name', {back: true});
+var login = ge('quick_email');
+if (login) {
+ login.focus();
+}
+if (1) {
+ hide('support_link_td');
+}
+var ts_input = ge('ts_input'), oldFF = browser.mozilla && parseInt(browser.version) < 8;
+if (browser.mozilla && !oldFF) {
+ setStyle(ts_input, {padding: (vk.rtl ? '3px 22px 4px 4px' : '3px 4px 4px 22px')});
+}
+placeholderSetup(ts_input, {back: false, reload: true});
+if (browser.opera || browser.msie || oldFF) {
+ setStyle(ts_input, {padding: (vk.rtl ? '3px 22px 4px 4px' : '3px 4px 4px 22px')});
+}
+if (browser.chrome) {
+ setStyle(ts_input, {padding: (vk.rtl ? '4px 23px 3px 2px' : '4px 3px 3px 23px')});
+}
+TopSearch.init();
+if (browser.msie8 || browser.msie7) {
+ var st = {border: '1px solid #a6b6c6'};
+ if (hasClass(ge('ts_wrap'), 'vk')) {
+ if (vk.rtl) st.left = '1px';
+ else st.right = '0px';
+ } else {
+ if (vk.rtl) st.right = '146px';
+ else st.left = '146px';
+ }
+ setStyle(ge('ts_cont_wrap'), st);
+}
+window.tsHintsEnabled = 1;
+handlePageParams({"id":0,"loc":"","notopmenu":1,"width":791,"width_dec":160,"width_dec_footer":130});addEvent(document, 'click', onDocumentClick);
+ }
+ </script>
+</body>
+
+</html>
View
30 test/charsets/windows-1252
@@ -0,0 +1,30 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=windows-1252" /><meta name="description" content="Scopri perch� ForumFree � visitato ogni giorno da migliaia di persone. Registrandoti puoi creare tutti i forum/blog che vuoi e puoi ricevere le visite di migliaia di utenti gi� registrati." /><link rel="alternate" type="application/rss+xml" title="ForumFree" href="http://blogsearch.google.com/blogsearch_feeds?q=site:forumfree.it&amp;output=rss" />
+ <title>ForumFree - La pi� grande comunit� di forum gratis</title>
+ <link rel="stylesheet" type="text/css" href="http://img.forumfree.net/home/css/style.css" /><link rel="stylesheet" type="text/css" href="http://img.forumfree.net/home/css/ForumFree.css" /><!--[if IE]><link rel="stylesheet" type="text/css" href="http://img.forumfree.net/home/css/ie.css" /><![endif]--><!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="http://img.forumfree.net/home/css/ie7.css" /><![endif]--><!--[if lte IE 6]><link rel="stylesheet" type="text/css" href="http://img.forumfree.net/home/css/ie6.css" /><style type="text/css">h1 a {background-image:none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http://img.forumfree.net/home/img/f-logo.png",sizingMethod="scale")}</style><![endif]-->
+ <script type="text/javascript" src="src/jq.js"></script><script type="text/javascript" src="http://img.forumfree.net/home/js/guest.js"></script>
+</head>
+<body>
+<div id="header"><h1><a href="http://www.forumfree.it/">ForumFree</a></h1><ul id="lang-selector"><li><a href="/?l=0" class="first"><img src="http://img.forumfree.net/home/img/flag-it.png" alt="Italiano" width="16" height="11" /></a></li><li><a href="/?l=1"><img src="http://img.forumfree.net/home/img/flag-gb.png" alt="English" width="16" height="11" /></a></li><li><a href="/?l=2"><img src="http://img.forumfree.net/home/img/flag-es.png" alt="Espanol" width="16" height="11" /></a></li><li><a href="/?l=3"><img src="http://img.forumfree.net/home/img/flag-fr.png" alt="Francais" width="16" height="11" /></a></li><li><a href="/?l=4"><img src="http://img.forumfree.net/home/img/flag-de.png" alt="Deutsch" width="16" height="11" /></a></li><li><a href="/?l=5"><img src="http://img.forumfree.net/home/img/flag-pt.png" alt="Portugese" width="16" height="11" /></a></li></ul><div id="search"><a href="/?wiki&amp;l=0" id="help" title="Aiuto e Guide"><img src="http://img.forumfree.net/index_file/spacer.gif" style="background-image:url('http://img.forumfree.net/home/img/help.png') !important;background-image:none;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://img.forumfree.net/home/img/help.png',sizingMethod='scale');width:24px;height:24px" alt="Wiki" /></a><script type="text/javascript">function getOption(x){jQuery('#options1').slideUp(); document.forms[0].select.value=document.forms[0].sub.value=x; if(document.forms[0].keyword.value!='') document.forms[0].submit()}</script><form action="/?act=cerca" method="post" id="search-form" onsubmit="if(this.keyword.value==''||this.sub.value=='cerca'){jQuery('#options1').slideToggle(); return false} jQuery('#options1').slideUp; return true"><div><input name="keyword" type="text" id="search-query" class="round-5" /><input type="hidden" name="select" value="" /><input name="sub" type="submit" value="cerca" id="search-submit" /><ul id="options1" class="nascosta"><li onclick="getOption('forum o blog')">forum o blog</li><li onclick="getOption('discussione')">discussione</li><li onclick="getOption('utente')">utente</li></ul><input type="hidden" name="cid" value="1" /><input type="hidden" name="s" value="4cd5b0d1b1122207babcec03c27f3d95" /><input type="hidden" name="act" value="cerca" /></div></form></div></div><ul class="accessibility"><li><a href="#content">Vai al contenuto</a></li><li><a href="#sidebar">Vai al menu</a></li><li><a href="#footer">Vai al pi� di pagina</a></li></ul><div id="userbar-wrapper"><div id="userbar" class="round-5"><span class="username" style="width:100%;text-align:center"><a href="http://supporto.forumfree.it/?act=Login&amp;CODE=00" onclick="return false" style="display:block;width:100%">Accedi</a></span><form action="http://supporto.forumfree.it/?" method="post" id="userbar-tools" class="guest" autocomplete="off" onsubmit="if(this.UserName.value==''||this.PassWord.value==''){alert('Devi riempire tutti i campi del form'); return false}"><div><input type="hidden" name="act" value="Login" /><input type="hidden" name="CODE" value="01" /><label for="user-login">E-mail o Nome utente</label><input type="text" maxlength="32" name="UserName" value="" id="user-login" />Password<input type="password" maxlength="32" name="PassWord" value="" id="pass-login" /><label for="CookieDate">Ricordami</label><input type="checkbox" name="CookieDate" id="CookieDate" value="1" checked="checked" /><input type="submit" name="submit" value="entra" /><a href="http://supporto.forumfree.it/?act=Reg&amp;CODE=10" class="reg" style="display:block;width:100%;text-align:center; margin: 6px 0 12px 0"><span class="highlight">Recupera password</span></a></div></form><a href="#" id="userbar-toggle" class="open"></a></div></div><div class="container"><div id="content" class="guest round-5"><form action="/" method="post" autocomplete="off" onsubmit="if(this.UserName.value==''||this.PassWord.value==''||this.PassWord_Check.value==''||this.EmailAddress.value==''){alert('Devi riempire tutti i campi del form'); return false}"><div id="registration-form" class="round-5"><input type="hidden" name="c" value="1" /><input type="hidden" name="act" value="Reg" /><input type="hidden" name="CODE" value="02" /><input type="hidden" name="b4ae4360483adbaa66da53f87d8bb2f2" value="MTMyNjA2MjI3OA==" /><h3>Registrati subito!</h3><div>
+<p><span>E-mail</span><input type="text" maxlength="50" name="EmailAddress" tabindex="1" class="round-5" /></p>
+<p><span>Nome</span><input type="text" maxlength="32" name="UserName" tabindex="2" class="round-5" /></p>
+<p><span>Password</span><input type="password" maxlength="32" name="PassWord" tabindex="3" class="round-5" /><input type="hidden" name="PassWord_Check" value="1" /></p>
+<p class="tos"><input type="checkbox" name="agree1" value="1" style="width:auto;margin:0" tabindex="4" /> accetto <a href="/?l=0&amp;wiki=Regolamento_integrale" target="_blank"><b>i termini e le condizioni</b></a> autorizzando il trattamento dei miei dati personali ai sensi dell'<a href="/?l=0&amp;wiki=Privacy" target="_blank"><b>informativa</b></a><br style="margin-bottom:8px" /><input type="checkbox" name="agree2" value="1" style="width:auto;margin:0" tabindex="5" /> acconsento al trattamento dei dati per l'invio di comunicazioni commerciali di cui all'art. 2.B dell'<a href="/?wiki=Privacy" target="_blank"><b>informativa</b></a></p>
+<input type="submit" value="registrati" name="submit" class="submit round-5" style="margin:10px 0;width:50%" /></div></div></form><div id="tabs"><h2>Il tuo forum. <span>Gratis.</span></h2><ul><li><img src="http://img.forumfree.net/home/img/guest_fast.png" alt="" /><b>In un attimo.</b> ForumFree ti permette di creare un forum o un blog in pochi semplici passi.</li><li><img src="http://img.forumfree.net/home/img/guest_multi.png" alt="" /><b>Migliaia di forum.</b> Accedi a tutti i forum con una sola registrazione. Le tue impostazioni personali rimangono le stesse.</li><li><img src="http://img.forumfree.net/home/img/guest_skin.png" alt="" /><b>La tua grafica.</b> Puoi utilizzare uno dei temi creati dai nostri utenti, oppure creare il tuo stile personalizzato.</li><li><img src="http://img.forumfree.net/home/img/guest_safe.png" alt="" /><b>Facile e sicuro.</b> Puoi scegliere chi potr� accedere o scrivere sul tuo forum in modo molto veloce ed efficace.</li></ul></div></div><ul id="skin-showcase"><li><a href="http://www.forumcommunity.net/?c=517176" target="_blank" rel="nofollow"><img src="http://staff.forumfree.net/skinlab/thumb/2014.jpg" alt="The Stars Will Show You The Way" width="200" height="150" /></a></li><li><a href="http://www.forumfree.it/?c=842776" target="_blank" rel="nofollow"><img src="http://staff.forumfree.net/skinlab/thumb/2017.jpg" alt="Blublack" width="200" height="150" /></a></li><li><a href="http://www.forumfree.it/?c=828547" target="_blank" rel="nofollow"><img src="http://staff.forumfree.net/skinlab/thumb/1996.jpg" alt="Night Star Club" width="200" height="150" /></a></li><li><a href="http://www.forumfree.it/?c=829742" target="_blank" rel="nofollow"><img src="http://staff.forumfree.net/skinlab/thumb/1983.jpg" alt="Striped" width="200" height="150" /></a></li><li><a href="http://www.forumfree.it/?c=702786" target="_blank" rel="nofollow"><img src="http://staff.forumfree.net/skinlab/thumb/1966.jpg" alt="Searching Calm" width="200" height="150" /></a></li></ul>
+<div id="features"><div class="column assist"><h3>Assistenza</h3><p><img src="http://img.forumfree.net/home/img/salvagente.png" alt="" />Dubbi o problemi con il tuo forum? Tranquillo! Il servizio ha una grande raccolta di <a href='/?wiki&amp;l=0'>guide</a> e un <a href='http://supporto.forumfree.it'>forum di supporto</a> ufficiale in cui potrai ricevere assistenza.</p></div><div class="column engines"><h3>Motori di ricerca</h3><p><img src="http://img.forumfree.net/home/img/ricerca.png" alt="" />I nostri forum si trovano nelle <a href='/?act=provenienza'>prime posizioni</a> in tutti i principali motori di ricerca e ricevono giornalmente migliaia di visite.</p></div><div class="column"><h3>Album</h3><p><img src="http://img.forumfree.net/home/img/album.png" alt="" /><a href='/?l=0&amp;wiki=Image_Hosting'>Carica le immagini</a> direttamente sul tuo album. Potrai allegarle ai messaggi e mostrarle ai tuoi amici in pochi passi.</p></div><div class="column"><h3>Skin</h3><p><img src="http://img.forumfree.net/home/img/skin.png" alt="" />Personalizza il tuo forum in un attimo. <a href='http://staff.forumfree.net/skinlab/?f=1'>Centinaia di temi grafici</a> sono gi� pronti. Puoi chiedere consiglio agli altri utenti sullo <a href='http://skinlab.forumfree.it'>Skin Lab</a>, la nostra community ufficiale di grafica.</p></div></div></div><div id="footer"><div class="container"><div class="column" style="width:24%"><h4 id="stats">Statistiche</h4><ul id="stats-list" class="round-5"><li><span class="num">19.983</span>Visitatori</li><li><span class="num">31.726</span>Utenti online</li><li><span class="num">8.520.444</span>Utenti registrati</li><li><span class="num">485.280.189</span>Messaggi</li><li><span class="num">59.671.533</span>Discussioni</li><li><span class="num">862.248</span>Forum/blog</li><li><a href="http://www.forumfree.it/?act=geo"><span class="num"><img src="http://img.forumfree.net/f/it.png" alt="IT" width="16" height="11" />&nbsp; 86.3%</span>Geo</a></li><li><a href="http://www.forumfree.it/?act=browser"><span class="num"><img src='http://img.forumfree.net/index_file/browser/Chrome.gif' width='18' height='18' alt='' /> &nbsp;33.8%</span>Web Browser</a></li><li><a href="http://www.forumfree.it/?act=os"><span class="num"><img src="http://img.forumfree.net/home/img/win.png" alt="Win" width="16" height="16" />&nbsp; 83.5%</span>OS</a></li><li><a href="http://www.forumfree.it/?act=risoluzione"><span class="num">1366x768</span>Risoluzione</a></li><li><a href="http://www.forumfree.it/?act=provenienza"><span class="num">13.430 &nbsp;Google</span>Referer</a></li></ul></div><div class="column" style="width:25%"><h4 id="top-forum">Top General</h4><ol id="top-forum-list" class="round-5"><li><a href="http://dnagobbo.forumfree.it" target="_blank">DnaGobbo-Per chi ha la Juve nel Dna</a></li><li><a href="http://grandefratello.forumfree.it" target="_blank">Grande Fratello 12 Gf12 Forum</a></li><li><a href="http://fcinternazionale.forumfree.it" target="_blank">Fc Internazionale 1908 - ...una</a></li><li><a href="http://orologi.forumfree.it" target="_blank">Orologi &amp; Passioni</a></li><li><a href="http://vicolodellenews.forumfree.it" target="_blank">Vicolodellenews Official Forum</a></li><li><a href="http://onepiecegeneration.forumfree.it" target="_blank">One Piece Generation &#124;</a></li><li><a href="http://angolodellamicizia.forumfree.it" target="_blank">L&#39;angolo dell&#39;Amicizia</a></li><li><a href="http://ilovepes.forumfree.it" target="_blank">Ilovepes - Pro Evolution Soccer</a></li><li><a href="http://juveforever.forumfree.it" target="_blank">JuveForever</a></li><li><a href="http://lotto-mery5-e-claufont.forumfree.it" target="_blank">www.lotto previsioni facebook</a></li></ol><h5 style="text-align:right;font-size:95%"><a href="/?act=topforum">Top Forum</a> � <a href="/?act=topblog">Top Blog</a> &nbsp;</h5></div><div class="column" style="width:25%"><h4 id="top-blog">International</h4><ol id="top-blog-list" class="round-5"><li><a href="http://elbarrio.forumfree.it" target="_blank">.::ecuatorianas desnudas y latinas</a></li><li><a href="http://mundoyaoi.forumfree.it" target="_blank">Mundo Yaoi</a></li><li><a href="http://nakedonstage.forumfree.it" target="_blank">Naked on stage</a></li><li><a href="http://lapanchinadimariella.forumfree.it" target="_blank">La panchina di Mariella &amp;</a></li><li><a href="http://rocky74.forumfree.it" target="_blank">Sexy Dream Girls</a></li><li><a href="http://durresi.forumfree.it" target="_blank">Muzike Shqip Me Te Bukura Ne</a></li><li><a href="http://wcwgdrwrestling.forumfree.it" target="_blank">World Championship Wrestling [the</a></li><li><a href="http://fcinternazionale.forumfree.it" target="_blank">Fc Internazionale 1908 - ...una</a></li><li><a href="http://orologi.forumfree.it" target="_blank">Orologi &amp; Passioni</a></li><li><a href="http://vipefamose.forumfree.it" target="_blank">Vip E Famose</a></li></ol><h5 style="font-size:95%">&nbsp; <a href="/?act=geo&cn=XX">Top International</a></h5></div><div class="column" style="width: 20%"><h4 id="links">Link Utili</h4><ul id="links-list" class="round-5"><li><a href="http://www.forumfree.it/?act=email" rel="nofollow">Contatti</a></li><li><a href="http://www.forumcommunity.net" rel="nofollow">ForumCommunity</a></li><li><a href="http://www.blogfree.net/" rel="nofollow">BlogFree</a></li><li><a href="http://supporto.forumfree.it/" target="_blank" rel="nofollow">Support Board</a></li><li><a href="http://top.blogfree.net/" target="_blank" rel="nofollow">ForumFree News</a></li><li><a href="http://skinlab.forumfree.it/" target="_blank" rel="nofollow">Skin Lab</a> � <a href="http://chat.forumfree.it/" target="_blank" rel="nofollow">#Chat IRC</a></li><li><a href="/?wiki=About">About ForumFree</a></li><li><a href="http://www.facebook.com/forumfree" target="_blank" rel="nofollow">Facebook fan page</a></li><li><a href="/?l=0&amp;wiki=Regolamento_integrale">Condizioni</a> � <a href="/?wiki=Privacy">Privacy</a></li><li><a href="javascript:if (eval('typeof window.sidebar.addPanel==\'function\'')) {window.sidebar.addPanel('ForumFree - La pi� grande comunit� di forum gratis','http://www.forumfree.it','');} else {window.external.AddFavorite('http://www.forumfree.it','ForumFree - La pi� grande comunit� di forum gratis');}">Aggiungi ai preferiti</a></li><li>� 2002-2012 ForumFree</li>
+</ul></div></div></div>
+</body>
+</html><script type="text/javascript">
+var _gaq = _gaq || [];
+_gaq.push(['_setAccount', 'UA-24543844-3']);
+_gaq.push(['_setDomainName', '.forumfree.it']);
+_gaq.push(['_trackPageview']);
+
+(function() {
+var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+})();
+</script>
View
57 test/restler.js
@@ -1,8 +1,12 @@
-var rest = require('../lib/restler');
-var http = require('http');
-var sys = require('util');
-var zlib = require('zlib');
+var rest = require('../lib/restler');
+var http = require('http');
+var sys = require('util');
+var zlib = require('zlib');
+var path = require('path');
+var fs = require('fs');
+var crypto = require('crypto');
+
var p = sys.inspect;
var port = 9000;
@@ -470,11 +474,54 @@ module.exports['Deserialization'] = {
}).on('fail', function() {
test.ok(false, 'should not have got here');
});
- },
+ }
+
+};
+function md5(data) {
+ return crypto.createHash('md5').update(data).digest('hex');
+}
+
+function charsetsResponse(request, response) {
+ var charset = request.url.substr(1);
+ response.writeHead(200, {
+ 'content-type': 'text/plain; charset=' + charset,
+ 'content-encoding': 'gzip'
+ });
+ fs.createReadStream(path.join(__dirname, charsetsDir, charset)).pipe(zlib.createGzip()).pipe(response);
+}
+
+module.exports['Charsets'] = {
+ setUp: setup(charsetsResponse),
+ tearDown: teardown()
+};
+
+var charsetsDir = 'charsets';
+var charsetCases = {
+ /**
+ * key - the name of the charset of tested file found in <charsetsDir> directory with the same name
+ * value - md5 hash of properly utf8-iconv'erted file.
+ */
+ 'iso-8859-1' : '8c7fbd6fb81d089573540bf0bdf82cc6',
+ 'gb2312' : 'ab788473ee3b5f5fff5eba4ca6172834',
+ 'windows-1251' : 'ab90f5e5333149acbfd58441cfe69d70',
+ 'shift_jis' : '3b93ee3382ed73ec6d064a2ce852a50a',
+ 'windows-1252' : 'b9bd334aeb238eb104628168cb011351',
+ 'gbk' : '01329db97a6a202ecffaf95d4f77a18d'
};
+for (var charset in charsetCases) {
+ (function(charset, hash) {
+ module.exports['Charsets']['Should correctly convert charset ' + charset] = function(test) {
+ rest.get(host + '/' + charset).on('complete', function(data) {
+ test.equal(md5(Buffer(data, 'utf8')), hash, 'hashes should match');
+ test.done();
+ });
+ };
+ })(charset, charsetCases[charset]);
+}
+
function redirectResponse(request, response) {
if (request.url == '/redirected') {

0 comments on commit 4fe9cc4

Please sign in to comment.