Monday, November 24, 2008

Batch Convert UTF-8

For i18n, multi-language web content, there is always confusion about text encoding standard, namely English(ISO-8859-1), Chinese(simplied chinese in GB2312 or traditional chinese in BIG5 format) and UTF-8.

At this point of time, I couldn't find a convinient tool to conviniently convert other encoding standards into UTF-8.

The following Unix command can do the job - iconv

To batch convert all files under the current directory, here's the combination:
find . -name "*.php" -exec iconv -f ISO-8859-1 -t utf-8 {} -o {}.new \;

Note the " \;" (that's _space_\; ... It's essential. )



Source: http://www.webmasterworld.com/forum40/1537.htm

Monday, September 22, 2008

Converting VCD to AUDIO

1. Copy VCD/music.dat -> Harddisk/music.mpg
Note: Filename dat -> mpg

2. http://cn.ziddu.com/downloadfile/231937/TMPGEnc2.5.zip.html

- Top Left Pane: Load Audio source Harddisk/music.mpg
- Bottom Pane: Output file name: Harddisk/music.mp2

- Right Pane: select ES(Audio only)

- Click [Setting], select Stream type=MPEGII, Channel mode=Dual channel, click [OK]
- Then click "Start"

3. http://cn.ziddu.com/download/231933/audacity-win-1.2.6.zip.html

- File -> Open Harddisk/music.mp2



- Click on the location "AVSEQ11", select Split Stereo Track.
- Then you'll see the track seperated to left channel on top and right channel at the bottom.
- [Mute] the channel which you don't want.

- Highlight the portion of the track which you want to save - use mouse to click on the track and drag
- File -> Export Selection as MP3

4. Using Windows Media Player to play mp3 file.

Click Burn tab.

Friday, August 22, 2008

Online Radio Software

3 online radio software:

龙卷风网络收音机
http://cradio.cn/

飞狐网签
http://www.nofox.com/

TapinRadio
http://www.raimersoft.com/tapinradio.aspx

Friday, August 08, 2008

Business Domain Knowledge

Commercial Lending
+ Enterprise Loan
+ Pte Ltd Loan

Consumer Lending
+ Secured (10 years)
+ Unsecured (Payslip), e.g. GE Money

Consumer Banking - Credit card + Bank Account

Treasury - Speical Customer + Personal Banker

Capital Market - Share

Trade Finance - 交易,借钱,贸易, Trading Futures, Forex.

Monday, July 21, 2008

AVG8 Command line scanner

avgscanx /HEUR /SCAN /ARC /RT /NOBREAK /NOBOOT /NOMEM /NOHIMEM target.file

Friday, April 18, 2008

Joomla 中文化 日期 乱码

中文化的Joomla版本,文章的日期显示乱码,例如 2008/04/18, ????

可能的解决方法是,

全局配置->语言及时区->国家代码:
输入zh_CN.UTF8

Default was en_GB

备注:
控制日期格式的设定在 JOOMLA_ROOT\language\(language).php

Keyword:
_DATE_FORMAT_LC

Friday, March 14, 2008

CSS Universal Selector

* {
border: 1px solid black;
}

Tuesday, March 11, 2008

mosLoadModule style option

mosLoadModule( ..., $style)

$style can be:

0: Modules are displayed in a table with a single row and column. This is the default setting, and you will never really need to use it.

1: Modules are displayed in a table with multiple column rows, giving it the effect of being displayed horizontally, rather than vertically like the default.

-1: Modules are displayed in plain text output, without title.

-2: Modules are displayed wrapped in a single < div > tag, with title in < h3 > header tag.

-3: Modules are displayed wrapped in several < div > tags with title in < h3 > header tag allowing more complex CSS styling to be applied, such as stretchable, rounded corners.

There is another way to control menu module output:

Module -> Site Modules -> Main Menu
Menu Style = Flat List

Example: Top Menu, Lastest News and Popular link menus are already using Flat List option.

Friday, February 22, 2008

Examples of web design company

They are able to effectively use SEF and design Templates.

http://www.efusiontech.com/Portfolio.html
http://www.hyper3media.com/

iProber - PHP探针

Source: http://www.joomlagate.com/component/option,com_smf/Itemid,31/topic,1524.msg6120/#msg6120

今天收到 Lunarpages 的通知,即日起他们的 Basic Plan 的虚拟主机空间增大到 1500GB(注意:没有小数点!),而价格还是 6.95美元/月!

Jaleo: 用探针看看服务器剩余空间就知道是不是真的

比如 anhosting主机“Many people get suspended when they try to use more than 30GB of storage on a overseller.”

硬盘一般为2*500GB 大多数共享主机都是这样的配置 少数有2TB,一个用户给1500GB是不可能的,有些主机商提供的是无限制的空间和流量,是不是可以无限制的使用?
在国外大多数人都知道这是overselling,"an overseller is a host that offers more than they can offer. For example. A web host cannot provide each user with 50GB of storage let alone 500GB of storage."

国内大多数人都不理解,所以有误解,最终导致帐户被封。

Hostmonster 我用过半年,期间我试过占用了50GB空间,结果几个月后被警告,只得删除。

Hostony 我用了1年,我占的空间最大,有80GB(他们提供400GB的空间),但是服务器剩余空间只有可怜的4G,每次快用完的时候,服务器的cpanel就崩溃了,因为没有剩余空间了,管理员都会删除一些服务器上不用的文件,苦苦支撑了几个月后,实在没有办法,告诉我让我清理自己的空间,我只能删除了60GB,这个主机商算客气了,其它的主机商都是毫不客气的suspend。

PHP探针 下载: http://depoch.net/download.htm

[Joomla] 英文版Joomla!支持中文的解决之道

Source: http://www.pccto.com/bbs/t600/

1,前台中文化
2,UTF-8支持
3,后台英文,跟随官方升级
4,没有乱码

以最新稳定版Joomla 1.0.12 为例,下载最新官方版本。

英文版Joomla完美支持中文

来自Joomla之门的白建鹏为我们带来了这篇非常实用及时的文章,本站在更换系统时用的就是英文原版的Joomla加前台中文,不过并没有严格按照下述步骤进行改动,因为那时我们白老弟的这篇文章还没有写出来呢,不过现在好了,有这方面需求的朋友可以参考这篇文章了。

版权原站所有。原文地址:http://www.joomlagate.com/content/view/20/29/
按理来说,我们要支持中文,直接安装Joomla中文版就可以了。没有必要这么费神研究让英文版来完美支持中文。不过,确实存在这样一种需求:可能是合资公司,为了网站维护人员的方便,后台必须是英文界面,而前台要发布中文内容;或者管理员可能是Joomla发烧友,一心想得到最新的Joomla核心,那么安装英文版就能做到网站核心随时与官方核心同步。比如,我的两个网站,“杏林书香网”和本站即是如此。

当然了,这个方法的创始者并非我,而是我的好友AutoIt。我想大家对这个名字应该很熟悉,如果你是新手,那么一定要去AutoIt 大侠的网站去补补课,顺便表达一下对这位中国Joomla前驱者的尊敬。

言归正传,我下面简单介绍一下这个方法:


第一步:思路
我们知道,英文原版Joomla 1.0.x 版本只支持ISO-88590-1语言编码(1.5版本不适合或者不需要看本文,据说完美支持UTF-8编码)。如果有人说他也能输入中文,那是因为中文也以该编码输出了。我们的目的是支持UTF-8编码的中文。当然,偏爱GB2312编码的用户可以参考本文。

还有一个问题必须注意,就是在英文原版Joomla安装时,会询问是否载入示范数据,默认是载入,而且一般人都会选择载入。这样你才能看清楚Joomla的结构,对于新手来说很有必要这么做。但是,该“示范数据”的SQL文件本身就是ISO-88590-1编码的,因此也需要转换。

英文原版Joomla的前台也是英文界面。我们要汉化前台,必须使用中文语言包。这就需要“拿来主义”一下,我们选择台湾Joomla中文站的汉化版Joomla,从中提取中文前台语言包。

第二步:操作
注:此方法由AutoIt总结,白建鹏执笔记录。感谢AutoIt摸索出的先进经验!
1、下载 Joomla 1.0.11 英文版安装包,最好是 zip 格式;
2、安装一个 FTP 工具(如 FlashFXP 3.4 中文版);
3、上传安装包到网站根目录并解压。如果没有解压权限可以请求管理员帮你解压。否则只能在本地解压后上传;
4、不要开始安装!先从中文版Joomla 1.0.11 版本中提取3个中文前台汉化文件
simplified_chinese.php
simplified_chinese.ignore.php
simplified_chinese.xml
这三个文件位于 /language 目录下面。
打开 simplified_chinese.php 文件并设置编码为 utf-8 。方法:
查找
/** templates/*.php */
DEFINE('_ISO','charset=UTF-8');
DEFINE('_DATE_FORMAT','Y-m-d'); //Uses PHP's DATE Command Format - Depreciated /**
这一段代码,将 charset 的值设置成为 utf-8 即可;
然后用FTP软件上传这三个文件到你网站的 /language 目录下面。
5、修改前台、后台模板,使其能够正确显示 utf-8 编码的中文。方法:
打开前台模板的 index.php 文件(位置 /templates/rhuk_solarflare_ii),找到
原始代码
<meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
这一行代码,修改为
修改后代码<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
并移动到紧跟 <head>标签之后。
同样方法修改后台模板的 index.php 文件( 位置:/administrator/templates/joomla_admin/
)。提醒:如果网站开通后下次更换模板,不论是前台还是后台,都要在上传之后立即按上述方法修改代码,使其接受 utf-8 编码,然后才能启用该模板。否则所有内容变成乱码!

6、修改joomla.php文件(位置 /includes)的1018行左右。
原始代码
if (!$username || !$passwd)
{ echo "<script> alert (\""._login_incomplete. "\"); ......
在 if 这行下面加:
修改后代码 header('content-type:text/html; Charset=UTF-8');
也可能在 function mosErrorAlert 这个函数里.
原始代码
function mosErrorAlert( $text, $action='window.history.go(-1);', $mode=1 ) {
$text = nl2br( $text );
$text = addslashes( $text );
$text = strip_tags( $text );
switch ( $mode ) {
case 2:
header('content-type:text/html; Charset=UTF-8');
echo "<script>$action</script> \n";
break;
case 1:
default:
header('content-type:text/html; Charset=UTF-8');
echo "<script>alert('$text'); $action</script> \n";

6、将 /installation/sql/下的 joomla.sql 及 sample_data.sql 转换为UTF-8编码格式。

7、申请一个 gmail 的信箱,这个信箱将成为网站管理员专用信箱,用来发送会员通知,收取访客反馈等等。建议使用网站域名作为信箱帐户。(如果你没有gmail信箱的注册邀请,可以到本站论坛发布申请,我们有大量邀请向会员发放,先到先得,呵呵)

8、在浏览器地址栏输入 http://www.yoursite.com (注意,这是举例,你需要替换为你自己的网站URL)即可看到安装画面,按照提示一步一步安装;安装完成后看看根目录下的 configuration.php 文件,如果不是 utf-8 编码,也要改成 utf-8 编码。然后进入后台开始安装其他组件。

为了方便大家体验,我已经把1~6的步骤几乎替你完成了,在本站下载栏目,你可以找到修改版的Joomla 1.0.11英文版,上述修改均已经做过。你只需要上传到你的网站,直接开始安装即可。当然,我制作的版本支持的是UTF-8编码,喜欢gb2312编码的用户只好自己按照上述步骤亲手打造了。

顺便说明一下,我提供的这个版本是根据最新的SVN打包的,实际上已经是 1.0.12 开发版了,因此喜欢尝鲜的朋友可以用,注重安全的还是不要采用,直接到官方网站下载1.0.11英文版,毕竟SVN版本经常会有一些漏洞。

Joomla 1.0.12 中文版安装,彻底解决乱码问题

摘自:苏武的BLOG http://zhangxueqing.blog.sohu.com/41701091.html
今天是个好日子,继刚刚发布的《Joomla_1.0.12安装手记》之后,本来想休息一下,再研究该安装手记中未解决的问题,即初始安装Joomla 1.0.12 中文版,彻底解决乱码问题,下午闲来无事,手痒,便决定趁热打铁,没想到很容易大功告成!
还是先说一下初始环境:
Windows平台+Apache2.0.55+php5.1.1+MySQL5.0.27+phpMyAdmin2.9.1.1+ZendOptimizer3.2.0+Joomla_1.0.12-RC1-Full_Package(Chinese).tar.gz
其中对于MySQL和phpMyAdmin的配置不再进行任何限制,而Joomla_1.0.12-RC1-Full_Package(Chinese).tar.gz文件可以到Joomla台湾站点去下载,这里提供一个链接:http://rt.openfoundry.org...l_Package(Chinese).tar.gz

下面说一下安装过程:
1、下载Joomla_1.0.12-RC1-Full_Package(Chinese).tar.gz文件,解压缩到站点的一个文件夹下,比如是joomla文件夹。

2、修改includes文件夹下的database.php文件,找到该行:
//@mysql_query("SET NAMES 'utf8'", $this->_resource);
在其下加入如下两行:
@mysql_query("SET NAMES 'utf8'", $this->_resource);
@mysql_query("SET CHARACTER SET UTF8", $this->_resource);
存盘,切记要用UltraEdit打开,且不要修改该文件的编码格式,以下的修改皆如此!

2、修改installation/sql/sql_simplified_chinese文件夹下的joomla.sql文件(假设joomla安装时选择的是简体中文,如果要选择其它语言安装,则同样的方式修改相应语言文件夹下的文件),寻找关键字#__poll_data,在其下大约是第六行,可以看到如下:
`text` text NOT NULL default '',
把它修改为:
`text` text NOT NULL,
在该文件内进行以下全局替换,把:
TYPE=MyISAM
替换为:
TYPE=MyISAM CHARSET=utf8
寻找关键字#__core_acl_aro,修改以下行:
CREATE TABLE `#__core_acl_aro` (
`aro_id` int(11) NOT NULL auto_increment,
`section_value` varchar(240) NOT NULL default '0',
`value` varchar(240) NOT NULL default '',
`order_value` int(11) NOT NULL default '0',
`name` varchar(255) NOT NULL default '',
`hidden` int(11) NOT NULL default '0',
PRIMARY KEY (`aro_id`),
UNIQUE KEY `section_value_value_aro` (`section_value`,`value`),
UNIQUE KEY `#__gacl_section_value_value_aro` (`section_value`,`value`),
KEY `hidden_aro` (`hidden`),
KEY `#__gacl_hidden_aro` (`hidden`)
) TYPE=MyISAM CHARSET=utf8;
改为:
CREATE TABLE `#__core_acl_aro` (
`aro_id` int(11) NOT NULL auto_increment,
`section_value` varchar(240) NOT NULL default '0',
`value` varchar(240) NOT NULL default '',
`order_value` int(11) NOT NULL default '0',
`name` varchar(255) NOT NULL default '',
`hidden` int(11) NOT NULL default '0',
PRIMARY KEY (`aro_id`),
# UNIQUE KEY `section_value_value_aro` (`section_value`,`value`),
# UNIQUE KEY `#__gacl_section_value_value_aro` (`section_value`,`value`),
KEY `hidden_aro` (`hidden`),
KEY `#__gacl_hidden_aro` (`hidden`)
) TYPE=MyISAM CHARSET=utf8;
ALTER TABLE `#__core_acl_aro` CHANGE `section_value` `section_value` VARCHAR( 240 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL default '0';
ALTER TABLE `#__core_acl_aro` CHANGE `value` `value` VARCHAR( 240 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL default '';
ALTER TABLE `#__core_acl_aro` ADD UNIQUE `section_value_value_aro` ( `section_value` , `value` );
ALTER TABLE `#__core_acl_aro` ADD UNIQUE `#__gacl_section_value_value_aro` (`section_value`,`value`);
存盘!

3、修改installation/sql/sql_simplified_chinese文件夹下的sample_data.sql文件,查找关键字#__contact_details,找到该行:
INSERT INTO `#__contact_details` VALUES (1, '姓名', '职称', '住址', '市/镇', '省/市', '国家/地区', '邮递区号', '电话', '传真', '其它连络资讯', 'asterisk.png', 'top', 'email@email.com', 1, 1, 0, '0000-00-00 00:00:00', 1, '', 0, 12, 0);
改为:
INSERT INTO `#__contact_details` VALUES (1, '姓名', '职称', '住址', '市/镇', '省/市', '国家/地区', '区号', '电话', '传真', '其它连络资讯', 'asterisk.png', 'top', 'email@email.com', 1, 1, 0, '0000-00-00 00:00:00', 1, '', 0, 12, 0);
其实只是把其中的“邮递区号”改为“区号”!
存盘!

4、进入到phpMyAdmin中,建立一个数据库,比如是joomla,其中字元整理选择utf8_general_ci

5、开始安装Joomla,根据安装向导一步一步进行,当要选择数据库名称时,输入第4步建立的数据库名即可。

结束语:
安装joomla是一件闹心的过程,经过多次实践,终于完成,感谢在网上提供了很多文章和帮助的网友,自己的心得也不能独享,奉献给大家!
现在回想起来,其实都是MySQL和phpMyAdmin的字元校正闹的,按照以上步骤安装,joomla的数据库编码格式是utf8的,而且也不再用修改phpMyAdmin的配置,在phpMyAdmin下能够看到joomla数据能够正常显示,也可以用phpMyAdmin正常地导入和导出,joomla前台显示也完全正常!省去了以后的很多麻烦!

[Joomla] sef化后, 结尾增加.html 的方法

Source: http://www.fticc.com/blog/?action_viewthread_tid_55.html

/includes/sef.php

18行左右:
$url_array = explode('/', $_SERVER['REQUEST_URI']);

替换为:
$url_array = explode('/', $_SERVER['REQUEST_URI']=str_replace(".html","",$_SERVER['REQUEST_URI']));

搜索下行代码第一个出现的地方[约在513行左右]
// allows SEF without mod_rewrite

在其上面增加
if(!strcasecmp(substr($string,-1),"/"))$string=substr($string,0,-1);
if($string!="")$string.=".html";

ok. 这样,你的也就有了这个 .html 的尾巴了...

不一定适合所有的组件. 如果你刚好碰到了可能要用下面的样子来替换上面的两行:
if (!eregi("com_docman",$string)){
if(!strcasecmp(substr($string,-1),"/"))$string=substr($string,0,-1);
if($string!="")$string.=".html";
}
注意: 上面代码里出现的 com_docman 就是在com_docman 里不加这个尾巴.你的看着改.

其实我用的是:
$string=substr($string,0,-1);
$string.=".html";
都没加判断...因为我用的东西也不多,使用过程没发现异常... ^_^

Tuesday, January 29, 2008

Changing Toplink connection

When changing Toplink to talk to another database, the following 3 files need to be touched.

1) model\src\META-INF\TopLinkMap.xml
toplink:login xsi:type="toplink:database-login"

2) model\src\META-INF\sessions.xml
login

3) model\toplink\TopLinkMap\TopLinkMap.mwp
login-infos