Moodle community sites

 
 
Davo
HTML editor and mobile phones
Group DevelopersGroup Particularly helpful Moodlers

I noticed earlier today that when I visited the forums via my Android (1.6) phone, I initially had a text box for typing in my reply, but after a few seconds this was replaced by the HTML editor, which did not appear to work at all.

Is it possible to disable the HTML editor on such devices (without me having to switch off javascript whenever I visit the moodle website, then back on again when I leave)?

 
Average of ratings: -
Tim at Lone Pine Koala Sanctuary
Re: HTML editor and mobile phones
Group DevelopersGroup Documentation writersGroup Particularly helpful Moodlers

We need to know which phone/browser combinations the HTML editor works on, and which it doesn't. Then we can make sure that Moodle gives the HTML editor to everyone who can use it, but not to others. Probably best to report this at http://tracker.moodle.org/.

 
Average of ratings: -
Picture of Mauno Korpelainen
Re: HTML editor and mobile phones
Group Particularly helpful Moodlers

Most likely current core moodle 2 supports very few mobile devices. Some people have reported that they can use tinymce without any major problems with the latest versions of Nokia and SonyEricsson but most mobile models (thousands of them) lack a proper/functional support for contentEditable and therefore Rich Text Editors are not working properly (TinyMCE or any other javascript based editor) - mobiles may render buttons but editor can't be used if selection, content entry and deletion of content does not work. I tried to test my custom plugins with a couple of models some months ago shortly while visiting a mobile shop (with my test site editor) and I was not at all pleased to see how difficult it was to use editor or custom plugins in a mobile device.

In my opinion this whole mobile issue should be solved either in moodlelib.php or in theme layout files with clear separation of mobile devices and "normal deveices" because this is not only an editor issue, it's also a design/layout issue. Mobiles may need different mobile editor toolbars and different init code that can be given with different mobile editor - the same way as we can give separate init code for any other optional editor ( lib/editor/tinymobile ). In current moodle 2 we should probably render only textarea for all mobile devices...

Detection of mobiles can be made for example with

<?php
$useragent=$_SERVER['HTTP_USER_AGENT'];
if(preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i',substr($useragent,0,4)))
{require ("mobilethings.php");} else {
require ("normalthings.php");}
}
?>

and some similar discussions are found from iPad posts ( for example http://moodle.org/mod/forum/discuss.php?d=149179  ) and about layouts for example http://moodle.org/mod/forum/discuss.php?d=156092

Original open source mobile phone detection code to my detection code is found from http://detectmobilebrowser.com/

 
Average of ratings: -
Picture of Mauno Korpelainen
Re: HTML editor and mobile phones
Group Particularly helpful Moodlers

In fact this mobile issue is terribly complex...

I used at least 4 hours today to test some of the most famous mobile browsers / emulators and can conform that mobile Safari and Opera can't use editor properly with any mobile model or mobile operating system I tested - these browsers simply can't use contentEditable. You can test mobile opera online with Opera Mini Simulator - a live demo of Opera Mini 5 that functions as it would when installed on a handset in http://www.opera.com/mobile/demo/ . Buttons are shown as expected but you can't use selection etc which makes modifying of content impossible. Therefore a better option is to render plain textarea and Opera has a cool keyboard for that purpose...

Opera

On the other hand latest models of Nokia (I tested N900 and N8) use a browser that is based on Mozilla but moodle (moodlelelib.php) does not detect it as supported browser for editor. Still on the main site of Moxiecode I was able to use both buttons and contentarea of editor - yet it was far from perfect user experience... attached an image from N8 emulator http://apu.ndhub.net/devices

Nokia

Another, much more difficult thing to handle is the (missing) core theme support for mobiles... big grin

 

 
Average of ratings: -