Commit Graph

56 Commits

Author SHA1 Message Date
Christophe Vilayphiou ba4d71a026 Changes in orbit_bar and js in announcements 2012-02-23 15:51:33 +08:00
Christophe Vilayphiou a3f152b200 Changes for jquery 1.7 (.live -> .on), create module_layout 2012-02-20 03:24:05 +08:00
Christophe Vilayphiou 44a346ffe9 Changes for orbit bar, login 2012-02-19 16:33:22 +08:00
Christophe Vilayphiou 9cd3cbc478 Modifications for design, pages, page_parts…
Move orbit_bar out of kernel.js
2012-02-17 02:09:32 +08:00
Christophe Vilayphiou e0accbecaa Changes into page_part edition.
Can choose between 'text', 'public_r_tag' and 'widget'
2012-02-16 13:09:09 +08:00
Christophe Vilayphiou 1913f0aca8 Add tinymce 2012-02-15 10:02:05 +08:00
Christophe Vilayphiou 3e70634add Announcement modifications and tags 2012-02-15 00:34:22 +08:00
Christophe Vilayphiou 55ae7de01c Orbit-bar in front-end and back-end, side-bar and drop-down menu 2012-02-15 00:34:22 +08:00
unknown f097f83f2b announcement_category edit 2012-02-06 16:20:51 +08:00
Matthew Kaito Juyuan Fu 8b3b71ca58 fix js bugs,partial bugs 2012-02-06 16:17:07 +08:00
Matthew Kaito Juyuan Fu 394099c388 Ad banner close complete,need validation 2012-02-04 09:37:23 +08:00
Matthew Kaito Juyuan Fu f530eb7112 Revert "mistake commit"
This reverts commit 2608b72d65.
2012-02-03 14:39:15 +08:00
Matthew Kaito Juyuan Fu 2608b72d65 mistake commit 2012-02-03 14:28:08 +08:00
Matthew Kaito Juyuan Fu a980847eb3 Basic function for AdBanner 2012-02-01 14:27:51 +08:00
Christophe Vilayphiou 5518ae362d Ray's modification before redesign 2012-01-24 11:57:27 +08:00
chris2tof b04d845a5a New rss.js from Harry and fix html form for assets 2012-01-24 11:56:08 +08:00
Christophe Vilayphiou 3e912b6262 Merge branches 'master' and 'exception_notification' into new_announcement_dev 2012-01-16 07:57:40 +08:00
chris2tof 4be97f6ea6 Merge branch 'fix_it'
Conflicts:
	app/assets/javascripts/page_edit.js
	app/assets/javascripts/rss.js
	app/assets/stylesheets/admin.css.erb
	app/assets/stylesheets/admin_back_end.css.erb
	app/controllers/admin/app_auths_controller.rb
	app/controllers/admin/module_apps_controller.rb
	app/controllers/admin/users_controller.rb
	app/controllers/application_controller.rb
	app/models/app_auth.rb
	app/models/user/user.rb
	app/views/admin/app_auths/index.html.erb
	app/views/admin/attributes/_attribute_field.html.erb
	app/views/admin/designs/_new.html.erb
	app/views/admin/designs/new.html.erb
	app/views/admin/infos/_form.html.erb
	app/views/admin/module_apps/_app_selector.html.erb
	app/views/admin/module_apps/index.html.erb
	app/views/admin/pages/_form.html.erb
	app/views/admin/roles/_form.html.erb
	app/views/admin/roles/_sub_role.html.erb
	app/views/admin/users/_form.html.erb
	app/views/admin/users/_show_sub_role.html.erb
	app/views/admin/users/_sub_role.html.erb
	app/views/admin/users/edit.html.erb
	app/views/admin/users/index.html.erb
	app/views/admin/users/new.html.erb
	app/views/admin/users/show.html.erb
	app/views/layouts/admin.html.erb
	lib/fraisier/layout.html
	lib/parsers/parser_back_end.rb
	lib/parsers/parser_layout.rb
	lib/tasks/dev.rake
	spec/models/app_auth_basic.rb
	vendor/built_in_modules/NewBlog/.gitignore
	vendor/built_in_modules/NewBlog/Gemfile
	vendor/built_in_modules/NewBlog/Gemfile.lock
	vendor/built_in_modules/NewBlog/MIT-LICENSE
	vendor/built_in_modules/NewBlog/NewBlog.gemspec
	vendor/built_in_modules/NewBlog/README.rdoc
	vendor/built_in_modules/NewBlog/Rakefile
	vendor/built_in_modules/NewBlog/app/assets/images/NewBlog/.gitkeep
	vendor/built_in_modules/NewBlog/app/assets/javascripts/NewBlog/.gitkeep
	vendor/built_in_modules/NewBlog/app/assets/stylesheets/NewBlog/.gitkeep
	vendor/built_in_modules/NewBlog/app/assets/stylesheets/NewBlog/application.css
	vendor/built_in_modules/NewBlog/app/assets/stylesheets/NewBlog/production.css
	vendor/built_in_modules/NewBlog/app/controllers/.gitkeep
	vendor/built_in_modules/NewBlog/app/controllers/application_controller.rb
	vendor/built_in_modules/NewBlog/app/controllers/panel/blog/back_end/posts_controller.rb
	vendor/built_in_modules/NewBlog/app/helpers/.gitkeep
	vendor/built_in_modules/NewBlog/app/helpers/application_helper.rb
	vendor/built_in_modules/NewBlog/app/mailers/.gitkeep
	vendor/built_in_modules/NewBlog/app/models/.gitkeep
	vendor/built_in_modules/NewBlog/app/models/comment.rb
	vendor/built_in_modules/NewBlog/app/models/post.rb
	vendor/built_in_modules/NewBlog/app/views/.gitkeep
	vendor/built_in_modules/NewBlog/app/views/layouts/application.html.erb
	vendor/built_in_modules/NewBlog/app/views/layouts/edit_view.html.erb
	vendor/built_in_modules/NewBlog/app/views/layouts/production.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/_form.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/index.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/latest_post.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/new.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/show.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/front_end/posts/show.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/widget/posts/index.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/widget/posts/latest_post.html.erb
	vendor/built_in_modules/NewBlog/config/locales/en.yml
	vendor/built_in_modules/NewBlog/lib/NewBlog.rb
	vendor/built_in_modules/NewBlog/lib/NewBlog/engine.rb
	vendor/built_in_modules/NewBlog/lib/NewBlog/version.rb
	vendor/built_in_modules/NewBlog/lib/tasks/NewBlog_tasks.rake
	vendor/built_in_modules/NewBlog/script/rails
	vendor/built_in_modules/NewBlog/test/NewBlog_test.rb
	vendor/built_in_modules/NewBlog/test/dummy/Rakefile
	vendor/built_in_modules/NewBlog/test/dummy/app/assets/javascripts/application.js
	vendor/built_in_modules/NewBlog/test/dummy/app/assets/stylesheets/application.css
	vendor/built_in_modules/NewBlog/test/dummy/app/controllers/application_controller.rb
	vendor/built_in_modules/NewBlog/test/dummy/app/helpers/application_helper.rb
	vendor/built_in_modules/NewBlog/test/dummy/app/mailers/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/app/models/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/app/views/layouts/application.html.erb
	vendor/built_in_modules/NewBlog/test/dummy/config.ru
	vendor/built_in_modules/NewBlog/test/dummy/config/application.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/boot.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/database.yml
	vendor/built_in_modules/NewBlog/test/dummy/config/environment.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/environments/development.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/environments/production.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/environments/test.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/backtrace_silencers.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/inflections.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/mime_types.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/secret_token.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/session_store.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/wrap_parameters.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/locales/en.yml
	vendor/built_in_modules/NewBlog/test/dummy/config/mongoid.yml
	vendor/built_in_modules/NewBlog/test/dummy/config/routes.rb
	vendor/built_in_modules/NewBlog/test/dummy/lib/assets/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/log/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/public/404.html
	vendor/built_in_modules/NewBlog/test/dummy/public/422.html
	vendor/built_in_modules/NewBlog/test/dummy/public/500.html
	vendor/built_in_modules/NewBlog/test/dummy/public/favicon.ico
	vendor/built_in_modules/NewBlog/test/dummy/script/rails
	vendor/built_in_modules/NewBlog/test/integration/navigation_test.rb
	vendor/built_in_modules/NewBlog/test/test_helper.rb
	vendor/built_in_modules/blog/app/controllers/application_controller.rb
	vendor/built_in_modules/blog/app/controllers/panel/blog/posts_controller.rb
	vendor/built_in_modules/blog/app/helpers/application_helper.rb
	vendor/built_in_modules/blog/app/models/comment.rb
	vendor/built_in_modules/blog/app/models/post.rb
	vendor/built_in_modules/blog/app/views/layouts/application.html.erb
	vendor/built_in_modules/blog/app/views/panel/blog/posts/_form.html.erb
	vendor/built_in_modules/blog/app/views/panel/blog/posts/index.html.erb
	vendor/built_in_modules/blog/app/views/panel/blog/posts/show.html.erb
	vendor/built_in_modules/blog/config/initializers/backtrace_silencers.rb
	vendor/built_in_modules/blog/config/initializers/inflections.rb
	vendor/built_in_modules/blog/config/initializers/mime_types.rb
	vendor/built_in_modules/blog/public/404.html
	vendor/built_in_modules/blog/public/422.html
	vendor/built_in_modules/blog/public/500.html
	vendor/built_in_modules/blog/public/favicon.ico
	vendor/built_in_modules/blog/public/stylesheets/.gitkeep
	vendor/built_in_modules/blog/script/rails
	vendor/built_in_modules/blog/vendor/plugins/.gitkeep
	vendor/built_in_modules/new_blog/.gitignore
	vendor/built_in_modules/new_blog/Gemfile
	vendor/built_in_modules/new_blog/Gemfile.lock
	vendor/built_in_modules/new_blog/MIT-LICENSE
	vendor/built_in_modules/new_blog/README.rdoc
	vendor/built_in_modules/new_blog/Rakefile
	vendor/built_in_modules/new_blog/app/assets/images/NewBlog/.gitkeep
	vendor/built_in_modules/new_blog/app/assets/javascripts/NewBlog/.gitkeep
	vendor/built_in_modules/new_blog/app/assets/stylesheets/NewBlog/.gitkeep
	vendor/built_in_modules/new_blog/app/assets/stylesheets/NewBlog/application.css
	vendor/built_in_modules/new_blog/app/assets/stylesheets/NewBlog/production.css
	vendor/built_in_modules/new_blog/app/controllers/.gitkeep
	vendor/built_in_modules/new_blog/app/controllers/application_controller.rb
	vendor/built_in_modules/new_blog/app/controllers/panel/new_blog/back_end/posts_controller.rb
	vendor/built_in_modules/new_blog/app/helpers/.gitkeep
	vendor/built_in_modules/new_blog/app/mailers/.gitkeep
	vendor/built_in_modules/new_blog/app/models/.gitkeep
	vendor/built_in_modules/new_blog/app/models/comment.rb
	vendor/built_in_modules/new_blog/app/models/post.rb
	vendor/built_in_modules/new_blog/app/views/.gitkeep
	vendor/built_in_modules/new_blog/app/views/layouts/application.html.erb
	vendor/built_in_modules/new_blog/app/views/layouts/edit_view.html.erb
	vendor/built_in_modules/new_blog/app/views/layouts/production.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/_form.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/index.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/latest_post.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/new.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/show.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/front_end/posts/show.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/widget/posts/index.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/widget/posts/latest_post.html.erb
	vendor/built_in_modules/new_blog/config/locales/en.yml
	vendor/built_in_modules/new_blog/lib/new_blog/version.rb
	vendor/built_in_modules/new_blog/lib/tasks/NewBlog_tasks.rake
	vendor/built_in_modules/new_blog/new_blog.gemspec
	vendor/built_in_modules/new_blog/script/rails
	vendor/built_in_modules/new_blog/test/NewBlog_test.rb
	vendor/built_in_modules/new_blog/test/dummy/Rakefile
	vendor/built_in_modules/new_blog/test/dummy/app/assets/javascripts/application.js
	vendor/built_in_modules/new_blog/test/dummy/app/assets/stylesheets/application.css
	vendor/built_in_modules/new_blog/test/dummy/app/controllers/application_controller.rb
	vendor/built_in_modules/new_blog/test/dummy/app/helpers/application_helper.rb
	vendor/built_in_modules/new_blog/test/dummy/app/mailers/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/app/models/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/app/views/layouts/application.html.erb
	vendor/built_in_modules/new_blog/test/dummy/config.ru
	vendor/built_in_modules/new_blog/test/dummy/config/application.rb
	vendor/built_in_modules/new_blog/test/dummy/config/boot.rb
	vendor/built_in_modules/new_blog/test/dummy/config/database.yml
	vendor/built_in_modules/new_blog/test/dummy/config/environment.rb
	vendor/built_in_modules/new_blog/test/dummy/config/environments/development.rb
	vendor/built_in_modules/new_blog/test/dummy/config/environments/production.rb
	vendor/built_in_modules/new_blog/test/dummy/config/environments/test.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/backtrace_silencers.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/inflections.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/mime_types.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/secret_token.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/session_store.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/wrap_parameters.rb
	vendor/built_in_modules/new_blog/test/dummy/config/locales/en.yml
	vendor/built_in_modules/new_blog/test/dummy/config/mongoid.yml
	vendor/built_in_modules/new_blog/test/dummy/config/routes.rb
	vendor/built_in_modules/new_blog/test/dummy/lib/assets/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/log/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/public/404.html
	vendor/built_in_modules/new_blog/test/dummy/public/422.html
	vendor/built_in_modules/new_blog/test/dummy/public/500.html
	vendor/built_in_modules/new_blog/test/dummy/public/favicon.ico
	vendor/built_in_modules/new_blog/test/dummy/script/rails
	vendor/built_in_modules/new_blog/test/integration/navigation_test.rb
	vendor/built_in_modules/new_blog/test/test_helper.rb
	vendor/plugins/NewBlog/.gitignore
	vendor/plugins/NewBlog/Gemfile
	vendor/plugins/NewBlog/Gemfile.lock
	vendor/plugins/NewBlog/MIT-LICENSE
	vendor/plugins/NewBlog/NewBlog.gemspec
	vendor/plugins/NewBlog/README.rdoc
	vendor/plugins/NewBlog/Rakefile
	vendor/plugins/NewBlog/app/assets/images/NewBlog/.gitkeep
	vendor/plugins/NewBlog/app/assets/javascripts/NewBlog/.gitkeep
	vendor/plugins/NewBlog/app/assets/stylesheets/NewBlog/.gitkeep
	vendor/plugins/NewBlog/app/assets/stylesheets/NewBlog/application.css
	vendor/plugins/NewBlog/app/assets/stylesheets/NewBlog/production.css
	vendor/plugins/NewBlog/app/controllers/.gitkeep
	vendor/plugins/NewBlog/app/helpers/.gitkeep
	vendor/plugins/NewBlog/app/mailers/.gitkeep
	vendor/plugins/NewBlog/app/models/.gitkeep
	vendor/plugins/NewBlog/app/views/.gitkeep
	vendor/plugins/NewBlog/app/views/layouts/edit_view.html.erb
	vendor/plugins/NewBlog/app/views/layouts/production.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/index.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/latest_post.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/new.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/show.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/widget_index.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/widget_latest_post.html.erb
	vendor/plugins/NewBlog/config/locales/en.yml
	vendor/plugins/NewBlog/lib/NewBlog/version.rb
	vendor/plugins/NewBlog/lib/tasks/NewBlog_tasks.rake
	vendor/plugins/NewBlog/script/rails
	vendor/plugins/NewBlog/test/NewBlog_test.rb
	vendor/plugins/NewBlog/test/dummy/Rakefile
	vendor/plugins/NewBlog/test/dummy/app/assets/javascripts/application.js
	vendor/plugins/NewBlog/test/dummy/app/assets/stylesheets/application.css
	vendor/plugins/NewBlog/test/dummy/app/controllers/application_controller.rb
	vendor/plugins/NewBlog/test/dummy/app/mailers/.gitkeep
	vendor/plugins/NewBlog/test/dummy/app/models/.gitkeep
	vendor/plugins/NewBlog/test/dummy/app/views/layouts/application.html.erb
	vendor/plugins/NewBlog/test/dummy/config.ru
	vendor/plugins/NewBlog/test/dummy/config/application.rb
	vendor/plugins/NewBlog/test/dummy/config/boot.rb
	vendor/plugins/NewBlog/test/dummy/config/database.yml
	vendor/plugins/NewBlog/test/dummy/config/environment.rb
	vendor/plugins/NewBlog/test/dummy/config/environments/development.rb
	vendor/plugins/NewBlog/test/dummy/config/environments/production.rb
	vendor/plugins/NewBlog/test/dummy/config/environments/test.rb
	vendor/plugins/NewBlog/test/dummy/config/initializers/secret_token.rb
	vendor/plugins/NewBlog/test/dummy/config/initializers/session_store.rb
	vendor/plugins/NewBlog/test/dummy/config/initializers/wrap_parameters.rb
	vendor/plugins/NewBlog/test/dummy/config/locales/en.yml
	vendor/plugins/NewBlog/test/dummy/config/mongoid.yml
	vendor/plugins/NewBlog/test/dummy/config/routes.rb
	vendor/plugins/NewBlog/test/integration/navigation_test.rb
	vendor/plugins/NewBlog/test/test_helper.rb
2012-01-12 18:15:43 +08:00
unknown ec235bcaa3 merge with master 2012-01-11 20:31:52 +08:00
chris2tof d85f29e65c Fix missing modification for "panel_main" to "back_main" 2011-12-29 17:49:48 +08:00
chris2tof c1238a7043 Prefix ids with "back_" in back-end layout to avoid conflict with site's ids 2011-12-29 15:35:13 +08:00
chris2tof ea19f11fe2 Integrate Harry's modifications to reload pop-up content 2011-12-29 14:09:06 +08:00
chris2tof 245def9cb6 Integration of pop-up and generic js.erb 2011-12-28 20:49:53 +08:00
chris2tof 62aaf79491 Merge with sub_roles 2011-12-23 18:34:21 +08:00
Matthew Fu d3ca1647be fix page form bugs 2011-12-23 13:54:28 +08:00
chris2tof e7c9816139 Move NewBlog to built_in_modules and delete "vendor/templates" 2011-12-22 01:38:27 +08:00
chris2tof a09f8e4551 merge with november_presentation 2011-12-20 16:47:17 +08:00
chris2tof afbffe37d5 Users can now be saved with sub_roles 2011-12-20 14:35:28 +08:00
chris2tof 4108ebf06d Fix mongoid deeply nested polimorphic
Got the commit from github. The roles and sub_roles save.
2011-12-19 21:22:26 +08:00
chris2tof d27d7a623c Changes for sub_roles
Issues: update doesn't create new i18n_variables, role form has bugs
2011-12-18 10:07:42 +08:00
chris2tof d23cf152da Merge 'standardization' and 'role structure modification' 2011-12-10 18:21:59 +08:00
Christophe Vilayphiou f774084e9a Back-end standardization 2011-12-10 18:03:32 +08:00
chris2tof e0cdedfa2e Remove useless controller and view
user_attributes_controller and user_attributes views
2011-12-06 18:12:12 +08:00
chris2tof 69a8fce64a Fix double loading bug
On an html load, the page was reload by the js "popstate"
2011-12-05 11:22:32 +08:00
chris2tof 26b49dcf02 Remove js from html 2011-12-05 10:36:25 +08:00
chris2tof 75a3c4d5b1 Modify assets
Each layout has a manifest for css and js
2011-12-05 09:54:41 +08:00
Matthew Kaito Juyuan Fu cb07a35cc9 Revert ff82391b7d0d17c17568ed21176b8b0112a34e31^..HEAD 2011-10-20 10:06:06 +08:00
Matthew Kaito Juyuan Fu ff82391b7d Revert "Merge with new_blog"
This reverts commit 64c68fcdeb.
2011-10-20 10:01:39 +08:00
chris2tof 64c68fcdeb Merge with new_blog 2011-10-18 11:36:01 +08:00
chris2tof 07ccacb7d7 Modifications of the JS in Design 2011-09-09 15:40:13 +08:00
chris2tof a571d1dcff Clean code and workaround mongoid embedded with carrierwave 2011-09-08 18:12:04 +08:00
chris2tof c427e2af14 Page form with drop down. Modifications for Designs 2011-08-25 08:13:38 +08:00
chris2tof e74f2931b1 Modifications asset pipeline 2011-08-20 22:54:07 +08:00
Kaito f6ae58cef4 Trying to create Design from upload package 2011-08-12 17:47:03 +08:00
Kaito b6db304579 add nokogiri into Gemfile and fixing dup bug again... 2011-07-29 17:49:10 +08:00
Kaito c9e4d0f345 in design,after online editing,return json url,callback not finish 2011-07-28 18:54:31 +08:00
Kaito 1839269581 finishing saving edited file online and redo dev.rake modification 2011-07-28 18:08:16 +08:00
Kaito 9eb80d7424 Made r_editor into class style add functions 2011-07-27 17:23:01 +08:00
Kaito dabd6dd5b5 Fixing upload bug 2011-07-26 18:22:17 +08:00
Kaito 1ac10e70a2 redo lost code.... 2011-07-22 16:28:41 +08:00