'Courses' to 'Projects'

'Courses' to 'Projects'

by Dave White -
Number of replies: 12
Are there any plans to make the word 'Course' in the interface changable in the same way 'Taechers' and 'Students' is?
Average of ratings: -
In reply to Dave White

Re: 'Courses' to 'Projects'

by Timothy Takemoto -

I don't know of one. But if you don't mind the name being changed globally you can use the name by changing the language file which is I presume moodle/langs/en/course.php where en is your language, or via the GUI to change the language files at adminin>languages.
Tim

In reply to Timothy Takemoto

Re: 'Courses' to 'Projects'

by Michael Penney -

You can also create a custom lang for a course or set of courses. I did this for a sports themed course. For instance for english, duplicate lang/en to lang/en_projects, and then change the strings in the lang/en_projects/moodle.php, etc.

Force this language as the default for the course(s) that will use it.

In reply to Michael Penney

Re: 'Courses' to 'Projects'

by Chardelle Busch -
Picture of Core developers
These are good ideas--Michael's course language file is probably the best workaround. This is something I grapple with all of the time--for example, my "community" area (a social format course) is NOT a course by any means, and to call it one is confusing. The trouble is that the word course is used in different global locations. For example, the calendar, the My Courses block, etc, which I'm afraid causes even more confusion. Mike Churchward's Nav block could be good for this, you can have a block for each category--which can be named appropriately, for example you could have My Projects, My Courses, etc. blocks. Although if I remember right, his code my need some updating, I think each category has to have its own homepage.  Alternatively, what would be a good generic word to replace course site-wide?  How do some of the other programs (BB WebCT) do it?

As for the "Course events" in the calendar, I am assuming you could force this word in your course language file too, I hadn't thought of that until now, I'll have to try it.

Any other ideas?
In reply to Chardelle Busch

Re: 'Courses' to 'Projects'

by Robert Brenstein -
I am afraid that custom lang-packs are not really a good general solution, just a band-aid for specific instances. Like with teacher and student strings, course string should be a variable in lang-files, so it is substituted with course-specific strings at run time.

Besides, if I already have a custom language and string another one on top of it, one that actually includes more strings from the original parent, I have even a bigger headache to keep them in sync and up to date with changes in the parent lang-file.

And to top it, in my case, the "course" in question is multilingual, so I can't force a single language.
In reply to Robert Brenstein

Re: 'Courses' to 'Projects'

by Chris Jeffries -

Well, I think I agree the language file solution is a bit of a kludge, but if you are going to use it, you could at least do something like this....

Create new language, say 'cu' (for custom), then inside this, put

include_once('moodle.php');
$string['course'] = 'Discussion area';

Then at least, as you write new versions of Moodle, you don't have to keep recreating the whole thing.

Chris.

In reply to Dave White

Re: 'Courses' to 'Projects'

by Yves Dufour -
We are using 'Projects' within our intranet...
but all handcrafted .... would be so nice to redefine it .... approve
In reply to Dave White

Re: 'Courses' to 'Projects'

by Robert Brenstein -
Yes, being able to change that in course settings would be really handy at times. The global settings is fine for the bulk of "courses" but some are exceptions (we have a couple of these).
In reply to Dave White

Re: 'Courses' to 'Projects'

by Nicolas Martignoni -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers Picture of Translators
I suggest you evangelize for resolution of this bug: http://moodle.org/bugs/bug.php?op=show&bugid=3685
In reply to Dave White

Re: 'Courses' to 'Projects'

by Phil Gray -

Having looked through the 'Lang' files I now have a clearer idea of why there is no quick fix to enable changing the label 'Course' to something like 'Project' as one can with 'Student' and 'Teacher'. I also see why changing 'Student' and 'Teacher' in Configation > Site Settings does not change these occurances in message texts

Even doing a global search and replace of the the Lang files seems out of the question as many string variable names have 'course' embedded in them and there is no standard as to how these variables are named. So short of writing a parser to determine if an occurence of 'course' is in the variable name or varable value before trying to change the term, I am not sure of the best way of approaching this.

Is there a repository of ammended 'Lang' files where others may have been through this previously and stored their results for others?

ie. I would love to lay my hands on a Moodle 1.6 en_utf8 folder where every string value of 'course' had been changed to 'project'. What would even be better would be a file where 'Student' had also been changed to 'Member' and 'Teacher' to 'Facilitator' or to some other term that would be able to be globally searched and replaced.

Failing this has anyone written a parser that can recognise the value part of string variable and change every occurance of a user-definable term to another user definable term?

Thanks in advance,

Phil Gray

 

In reply to Phil Gray

Re: 'Courses' to 'Projects'

by Todd Cranston-Cuebas -
While I admit changing all instances of "course" to "skills assessment" was a pain, it did work beautifully! Actually, it took a careful 30-40 minutes to make the change and when I update to Moodle 1.6 I'll probably have to do it over. Overall, well worth the effort for a quick fix, but I admit, I'd like to have a simpler way of making this change in a way that will "stick" with future upgrades.

Todd
In reply to Todd Cranston-Cuebas

Re: 'Courses' to 'Projects'

by Jonathan Newman -
As a workaround until the abilty to replace all instances of "student" "teacher" and "course" in language pack strings is integrated into Moodle administration, you can use a perl script found in the cvs repostitory's "contrib/devtools" directory to replace these strings in a custom language pack:

http://moodle.cvs.sourceforge.net/moodle/contrib/devtools/customlang.pl?revision=1.3&view=markup

Thanks to Martin Langhoff and Jun Yamog for their earlier contributions to the script.

A lot of things are still hard-coded and could use more polishing. You'll want to review the code and make a number of changes based on your particular needs.

Here are some specifics on what it does:

1. Rewrites language string variations of "student," "teacher" and
"course" to "writer" "manager" and "module" respectively. *

2. Creates a new custom language directory if it doesn't already exists based on a variable named "$customlangdir" which defines the original language directory. **

3. References a variable "$originlangdir" which defines the new
origin language directory. ***

4. Deletes the contents of the old custom language directory if the directory already exists (before it rewrites it). ****

5. Outputs original and custom string for testing and review. ****

6. Omits the following directories:
help/
docs/
README/
fonts/

* For example, "student", "students", "Student", "Students" get changed to "writer", "writers", "Writer", and "Writers" -- these can be edited in the script to your needs). The occurance of "student" "teacher" and "course" in string variable name remains unchanged.

** The $customlangdir variable name is currently set to "lang_xx_en" and any two characters can be used "aa" "ab" etc -- as this is the Moodle convention and the database enforces this (via the varchar length of the mdl_user.lang field in the database--at least in Moodle 1.6).

*** The $originlangdir variable name is currently set to "lang_en" (ie, the english language pack).

**** This is to allow you to make multiple iterations on developing and testing the custom language pack -- as I needed to.

Happy new, custom language pack creating!

Jonathan