Differences between revisions 9 and 10
Revision 9 as of 2007-09-10 13:51:11
Size: 2757
Editor: guest-86
Comment:
Revision 10 as of 2007-09-10 13:51:37
Size: 2758
Editor: guest-86
Comment:
Deletions are marked like this. Additions are marked like this.
Line 47: Line 47:
 ** baseURL is the location of the web site to test and  * * baseURL is the location of the web site to test and

About character encoding (28May07 Markus)

CompleteSearch supports ISO-8859-1 and the multibyte character encoding UTF-8. UTF-8 is the default encoding with the following consequences:

  • The $AC->settings->encoding is 'utf-8' unless overriden in autocomplete_config.php

  • The texts in text.php are saved as UTF-8
  • The css file uses '@charset "utf-8";'
  • We use mb_strtolower (instead of strtolower) with parameter $AC->settings->encoding to enable UTF-8

We do the following depending on the defined encoding:

  • We UTF-8 encode $AC->settings->capitals if $AC->settings->encoding is UTF-8

  • In ajax.php we UTF-8 encode the query string if $AC->settings->encoding is UTF-8 and the charset of content_type is not UTF-8 (means the request is sent as a non-UTF-8 type)

  • We set the page encoding of index.php, options.php and change_options.php according to $AC->settings->encoding (<meta http-equiv="content-type" content="text/html;charset=<?php echo $AC->settings->encoding; ?>">)

  • Texts from text.php are UTF-8 decoded by $AC->get_text() if $AC->settings->encoding is ISO-8859-1

  • We url encode the javascript code in function javascript_rhs (in generate_javascript.php) if $AC->settings->encoding is not UTF-8 (this is not necessary if utf-8 is used)

Note: The form attribute accept-charset

If the form attribute accept-charset is set to "UTF-8" the form variables are UTF-8 encoded before sent to server (even if the page encoding is not UTF-8).

The PHP Apache extension php_mbstring

The use of the mb_strtolower function (and other mb_ functions) requires the extension php_mbstring in php.ini:

In windows:
extension=php_mbstring.dll

or in linux:
extension=php_mbstring.so

(On geek, the mb_... functions were available by default, on Markus' laptop the line above had to be added.)

If this is the first extension you use be sure to have specified the location of the extension with the extension_dir directive.

Testing with Selenium remote control (short: SeleniumRC)

There are two ways to use SeleniumRC:

  • on your client with the Selenium (proxy) server written in Java
  • with the Selenium IDE, a firefox extension This is the easiest way but only works with firefox, that means no cross browser testing. You have to open the following url with Selenium IDE extension installed in your firefox browser:

    chrome://selenium-ide/content/selenium/TestRunner.html?baseURL=http://search.mpi-inf.mpg.de/markus/&test=http://search.mpi-inf.mpg.de/markus/tests/TestSuite.html&auto=true where

  • * baseURL is the location of the web site to test and
  • test is the start location of the test suite, means the code of the tests generated with the Selenium IDE

CompleteSearch: completesearch/Markus (last edited 2007-09-25 13:47:12 by guest-214)