<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/dev/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lashae</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/dev/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lashae"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/dev/Special:Contributions/Lashae"/>
	<updated>2026-06-06T11:29:40Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/dev/index.php?title=Interface_guidelines&amp;diff=1791</id>
		<title>Interface guidelines</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/dev/index.php?title=Interface_guidelines&amp;diff=1791"/>
		<updated>2009-04-04T13:55:07Z</updated>

		<summary type="html">&lt;p&gt;Lashae: /* Language strings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Work in progress}}&lt;br /&gt;
This document is not authoritative, it is a collection of ideas and under construction.&lt;br /&gt;
&lt;br /&gt;
==Keeping it simple==&lt;br /&gt;
&lt;br /&gt;
Use the minimum interface required to get the job done.&lt;br /&gt;
Order the elements by contexts. Give the user a strong orientation where the places are to do several things.&lt;br /&gt;
&lt;br /&gt;
==Standard pages==&lt;br /&gt;
&lt;br /&gt;
===Activity modules===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;index.php&#039;&#039; - lists all instances for that module in a course&lt;br /&gt;
*&#039;&#039;view.php&#039;&#039; - displays a particular instance&lt;br /&gt;
*&#039;&#039;config.html&#039;&#039; - configure an instance of the module&lt;br /&gt;
&lt;br /&gt;
===Blocks===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;config.html&#039;&#039; - configure an instance of the block&lt;br /&gt;
&lt;br /&gt;
==One script per major function/page==&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
==Page layout==&lt;br /&gt;
&lt;br /&gt;
# Print headings with print_heading, use the CSS hooks for IDs and Classes&lt;br /&gt;
# Print boxes around text using print_simple_box, use the CSS hooks for IDs and Classes&lt;br /&gt;
&lt;br /&gt;
==Form layout==&lt;br /&gt;
&lt;br /&gt;
# Show the more important settings at the top&lt;br /&gt;
# Each entry should have a label, and if necessary, a help file&lt;br /&gt;
# If there are more than 10 options, split them into required and optional/extra/advanced parameters&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Dealing with tables==&lt;br /&gt;
&lt;br /&gt;
Use the print_table function whenever possible.&lt;br /&gt;
&lt;br /&gt;
==Standard navigation tools==&lt;br /&gt;
&lt;br /&gt;
# All pages should call print_header, and supply a standard navigation path to be displayed in it. Where possible, it should look like: COURSE &amp;gt;&amp;gt; INDEX &amp;gt;&amp;gt; INSTANCE &amp;gt;&amp;gt; SUBPAGES...&lt;br /&gt;
# Pages within activity modules should call navmenu() to generate the appropriate navigation menu.&lt;br /&gt;
# Links should include associated image (if available). For example, looking at an assignment in a course displays the assignment pic and then the assignment description as a single link; however, most of the blocks like the activity block exclude the image from the link. This is important as some folks are more graphically rather than text oriented and click on the picture and do not understand why it is not working. We need to be consistent (see MDL-6820).&lt;br /&gt;
&lt;br /&gt;
==URLs==&lt;br /&gt;
&lt;br /&gt;
# URLs should be as short as possible.&lt;br /&gt;
# No underscores in parameter names or files names&lt;br /&gt;
# Never use two words when one would do.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Buttons vs links==&lt;br /&gt;
&lt;br /&gt;
This is a hard one to define ...&lt;br /&gt;
&lt;br /&gt;
The Google Web Accelerator issue definitely provides some pointers here:&lt;br /&gt;
&lt;br /&gt;
# Actions which can modify the state of Moodle (data files, database, session information) should be performed through buttons&lt;br /&gt;
# At the very least, such actions which are implemented as links should forward to a confirmation page which *does* use buttons&lt;br /&gt;
&lt;br /&gt;
==Language strings==&lt;br /&gt;
&lt;br /&gt;
# Use your own language strings in a separate file. Don&#039;t use existing language files from moodle.php or other lang files. So translators can translate in the contexts in different ways as terms are used in the special learning culture.&lt;br /&gt;
&lt;br /&gt;
==CSS naming==&lt;br /&gt;
&lt;br /&gt;
* Don&#039;t add font, color or layout definitions in code. This belongs to CSS theme files.&lt;br /&gt;
* See [[Standards|theme standards]]&lt;br /&gt;
&lt;br /&gt;
==Linking to help==&lt;br /&gt;
&lt;br /&gt;
* Help buttons should be on the right of the thing (as an exception it can be left, if the thing is right-aligned)&lt;br /&gt;
&lt;br /&gt;
==Related topics==&lt;br /&gt;
&lt;br /&gt;
Robin Good&#039;s Latest News. &amp;quot;Interaction Design Meets Online Real Estate&amp;quot; 1 Mar. 2005 http://www.masternewmedia.org/news/2005/03/01/interaction_design_meets_online_real.htm&lt;br /&gt;
&lt;br /&gt;
The article presents a view of virtual spaces with the focus on human actions. It reminded me of communicative approaches like Moodle. The interface serves as the handle of all the communication tools.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[pt:Guia para interface]]&lt;br /&gt;
[[es:Manual de estilo de la interfaz]]&lt;br /&gt;
[[ja:インターフェースガイドライン]]&lt;/div&gt;</summary>
		<author><name>Lashae</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/dev/index.php?title=Talk:Interface_guidelines&amp;diff=27906</id>
		<title>Talk:Interface guidelines</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/dev/index.php?title=Talk:Interface_guidelines&amp;diff=27906"/>
		<updated>2009-04-04T13:50:47Z</updated>

		<summary type="html">&lt;p&gt;Lashae: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I want to contribute for the &amp;quot;Language Strings&amp;quot; title.&lt;br /&gt;
&lt;br /&gt;
The prepositions in English usually does not correspond to meaningfull words in other languages. Say &amp;quot;&#039;&#039;&#039;3 of 10 is being displayed&#039;&#039;&#039;&amp;quot; string should be coded in the language file as is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wrong Approach:&lt;br /&gt;
----&lt;br /&gt;
Phrase 1: &#039;&#039;&#039;of&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Phrase 2: &#039;&#039;&#039;is being displayed&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Instead, the correct approach is:&lt;br /&gt;
----&lt;br /&gt;
Phrase: &#039;&#039;&#039;%s of %s is being displayed&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Because the preposition may or may not exist in the translation as a word, therefore the translated string may also be shuffled, i.e. may not be starting with &amp;quot;3&amp;quot; for the specific example above.&lt;br /&gt;
&lt;br /&gt;
I think, this problem can be avoided by setting a guideline for it like:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Use whole sentences or sub-sentences as language strings, do not divide your sentence into words of prepositions to avoid dublication in translations. Because not all the languages have the same grammer and linguistics that English built on.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This way, the the translated UI would be much more understandable.&lt;/div&gt;</summary>
		<author><name>Lashae</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/dev/index.php?title=Talk:Interface_guidelines&amp;diff=27905</id>
		<title>Talk:Interface guidelines</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/dev/index.php?title=Talk:Interface_guidelines&amp;diff=27905"/>
		<updated>2009-04-04T13:49:06Z</updated>

		<summary type="html">&lt;p&gt;Lashae: Language Strings, prepositions and non-standard linguistics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I want to contribute for the &amp;quot;Language Strings&amp;quot; title.&lt;br /&gt;
&lt;br /&gt;
The prepositions in English usually does not correspond to meaningfull words in other languages. Say &amp;quot;&#039;&#039;&#039;3 of 10 is being displayed&#039;&#039;&#039;&amp;quot; string should be coded in the language file as is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wrong Approach:&lt;br /&gt;
----&lt;br /&gt;
Phrase 1: &#039;&#039;&#039;of&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Phrase 2: &#039;&#039;&#039;is being displayed&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Instead, the correct approach is:&lt;br /&gt;
----&lt;br /&gt;
Phrase: &#039;&#039;&#039;%s of %s is being displayed&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Because the preposition may or may not exist in the translation as a word, therefore the translated string may also be shuffled, i.e. may not be starting with &amp;quot;3&amp;quot; for the specific example above.&lt;br /&gt;
&lt;br /&gt;
I think, this problem can be avoided by setting a guideline for it like:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Use whole sentences or sub-sentences as language strings, do not divide your sentence into words of prepositions to avoid dublication in translations. Because not all the languages have the same grammer and linguistics that has English.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This way, the the translated UI would be much more understandable.&lt;/div&gt;</summary>
		<author><name>Lashae</name></author>
	</entry>
</feed>