General help

 
 
Picture of Mike Churchward
My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful MoodlersGroup Testers
The content of the "My Moodle" page is currently controlled by hard-coded display functions.

The "My Moodle" feature would be so much more useful if we could extend and customize what goes into the middle section. It would be a great place to offer informational dashboards - reports, summaries, activities, etc.

In some ways, it would be nice to offer 'blocks' targeted for this feature that appear in the middle, and for side blocks to be able to target output for the middle.

There are a few ways that I can imagine handling this:
  1. Extending the block capability to allow 'middle' blocks.
  2. Extending the 'My Moodle' display through plug-ins.
Extending the blocks might be a nice way to handle this. The beauty of that is it would also be possible to add that feature to other courses.

Plug-ins could reside in a '/my/extensions/' directory and adhere to a standard calling mechanism. This mechanism would require some form of 'get_output' call to display what was required.

Anyone have any thoughts on this?

mike
 
Average of ratings: -
Picture of Mike Churchward
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful MoodlersGroup Testers
Okay. I'm leaning towards number 1. By changing 7 lines of code in '/my/pagelib.php' and adding 3 lines to '/my/index.php', I now have fully functioning block displays in the middle section.

mike
 
Average of ratings: -
Picture of Skip Marshall
Re: My Moodle: Extending "My Moodle"
 
Hi Mike,
This sounds like a great extension to 'My Moodle'. We are currently developing block customizations to provide employees with details regarding their professional development track and continuing education credits. Although much of what we are working on is specific to our corporate environment, we would be interested in collaborating on generic offerings to enhance My Moodle. We're currently in the planning phase. As we get details worked out, we'll be happy to post specifics for suggestions and comments.

Skip
 
Average of ratings: -
Picture of Mark Jones
Re: My Moodle: Extending "My Moodle"
 

Would you share the changes you made for the middle block display?

Thanks,

Mark

 
Average of ratings: -
Picture of Mike Churchward
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful MoodlersGroup Testers
Surely...

In '/my/pagelib.php', add the following changes:
  1. At the top, after the 'require_once...' statement, add:
    define('BLOCK_POS_CENTRE', 'c');
  2. In the function "blocks_get_positions", change the return line to:
    return array(BLOCK_POS_LEFT, BLOCK_POS_CENTRE, BLOCK_POS_RIGHT);
  3. Change the function "blocks_move_position" to the following:
    function blocks_move_position(&$instance, $move) {
     if($instance->position == BLOCK_POS_LEFT && $move == BLOCK_MOVE_RIGHT) {
     return BLOCK_POS_CENTRE;
     } else if ($instance->position == BLOCK_POS_CENTRE && $move == BLOCK_MOVE_RIGHT) {
     return BLOCK_POS_RIGHT;
     } else if ($instance->position == BLOCK_POS_CENTRE && $move == BLOCK_MOVE_LEFT) {
     return BLOCK_POS_LEFT;
     } else if ($instance->position == BLOCK_POS_RIGHT && $move == BLOCK_MOVE_LEFT) {
     return BLOCK_POS_CENTRE;
     }
     return $instance->position;
     }
In the '/my/index.php', output the centre blocks where you want them. I did it before the rest of the content with the following change:
  1. After outputting the middle column (the line "echo '<td valign="top" id="middle-column">';") add the lines:
     if (blocks_have_content($pageblocks, BLOCK_POS_CENTRE) || $PAGE->user_is_editing()) {
     blocks_print_group($PAGE, $pageblocks, BLOCK_POS_CENTRE);
     }
That should do it.

Now, another cool thing you can do is change a block's output depending on its position. So, if its in the centre area, you could provide more output. Just add the condition:
 if ($this->instance->position == BLOCK_POS_CENTRE) {
to your 'get_content' method and set the content appropriately.

Also, you can force other pages to display on the MyMoodle page by using that pagelib setup. For example, you could have a block link to a php page that sets itself up on the MyMoodle page.

To do this, in the php page, set it up as a My Moodle page using something like:
 $CFG->pagepath = $CFG->wwwroot.'/my/index.php';
 $PAGE = page_create_instance($USER->id);
Then you can just use the standard 'pagelib' functions to output the page and you've got yourself another My Moodle page.

mike
 
Average of ratings:Useful (2)
Picture of Urs Hunkler
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers

And to be able to work with center sticky blocks you need to add one line to admin/stickyblocks.php

I have placed the output line plus some comments before the center content (you may search for

print_box_start();
):

// Output the middle blocks
blocks_print_group($PAGE, $blocks, BLOCK_POS_CENTRE);

// Moodle standard content
print_box_start();
print_heading($strheading);
 
 
Average of ratings:Useful (1)
Picture of Ger Tielemans
Re: Make Sticky Blocks admin for center blocks work for 1.9.5
 
Minimal change: get Sticky blocks admin working in 1.9.5:

/admin/stickyblocks.php

require_login();

require_capability('moodle/site:manageblocks', get_context_instance(CONTEXT_SYSTEM));

define('BLOCK_POS_CENTRE', 'c'); //extra line 1


..............

blocks_print_group($PAGE, $blocks, BLOCK_POS_CENTRE); //extra line 2


print_container_start();

} else {
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('stickyblocks');
admin_externalpage_print_header();
}



//print_box_start(); //remove box start

// Moodle standard content

print_heading($strheading);
popup_form("$CFG->wwwroot/$CFG->admin/stickyblocks.php?pt=", $options, 'selecttype', $pt, 'choose', '', '', false, 'self', get_string('stickyblockspagetype','admin').': ');
echo '<p>'.get_string('stickyblocksduplicatenotice','admin').'</p>';
// print_box_end(); //remove box end

this is how stickyblocks admin looks and works!


 
Average of ratings: -
Picture of Geoff Goldrick
Re: Make Sticky Blocks admin for center blocks work for 1.9.5
 
Excuse my newbie ignorance but are these changes in addition to those outlined by mike churchward above?
 
Average of ratings: -
Picture of Ger Tielemans
Re: Make Sticky Blocks admin for center blocks work for 1.9.5
 
yes
 
Average of ratings: -
Picture of David Sturrock
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
We use myMoodle and sticky blocks to have a "standard" myMoodle appearance and would like to add more features to this page. But I feel we need to settle on a few user interface issues before we try to pump more information into this page.
  1. Biggest request we have is the ability for the user to define the order that courses are listed in the centre column. In a list of 15 courses they want to be able to push the most current courses to the top of the list (especially teachers). Similarly, some users want to be able to collapse course details so they can choose to see full details for some and only the course name for others. Perhaps treating each course box as a "topic box" would enable much of this functionality.
  2. The second issue is around making it simple for users to customise the page. Picking up on Mike's idea of enabling blocks to be placed into the centre column, how about enabling ajax editing on this page as well? Viola, we have a simple igoogle/pageflakes interface.
  3. If we are going to push more information to this page in terms of data from other modules or additional blocks we need to consider how it's all going to sensibly fit on 1 page. This puts more weight behind the collapsible course display option above or raises the question of providing the option to create new pages off the myMoodle one. But then, how far do we really need to take this?
David
 
Average of ratings: -
Picture of Gareth Morgan
Re: My Moodle: Extending "My Moodle"
 

Hello, David,

Regarding the first point, we are currently making a change to the Open University's OpenLearn Moodle instance which includes making the course boxes "collapsible", allowing each box to be reduced to a title only if required. Please see screenshot. We did not pursue the approach of making the course boxes into topic boxes, however.

We amended course/lib.php, in function print_overview, after the statement which prints the start of the box around the course data, and put in a button which performs a click to hide/click to reveal.  The hiding and revealing of the section was done by using the standard JavaScript function elementToggleHide, in much the same way as is done for the content of blocks (see moodleblock.class.php).

Another change is intended to help with the kind of issue mentioned in your third point - fitting a large amount of information onto the page (necessary because we have increased the number of modules that can print overviews of recent activity - please see Jenny Gray's earlier posting).  We have adopted a "two column" approach to the information that is printed for modules within a course. 

This was simply done by putting each module's information within a div tag is assigned a style in the relevant stylesheet that is left-aligned and given a width of 50%.

These features could be committed to Core if the Moodle community considers them to be desirable, but it is possible that they could conflict with other similar MyMoodle enhancements that might deliver more useful functionality in some contexts:  for example, Mike Churchward's suggestion to allow blocks in the centre column, or your AJAX editing suggestion, and so I would be grateful to know if anyone has developed such changes with a view to committing them to core.

By the way, the other point that I should mention is that we have done a non-course specific print_overview function in Blog. This could also be committed to Moodle Core if the developer community approves.

Thanks,

Gareth Morgan.


 
Average of ratings:Useful (1)
melodrama
Re: My Moodle: Extending "My Moodle"
 
These changes to core are highly desirable from my pov.
 
Average of ratings: -
simpsons_avatar2
Re: My Moodle: Extending "My Moodle"
 
Gareth Morgan wrote:

We amended course/lib.php, in function print_overview, after the statement which prints the start of the box around the course data, and put in a button which performs a click to hide/click to reveal. The hiding and revealing of the section was done by using the standard JavaScript function elementToggleHide, in much the same way as is done for the content of blocks (see moodleblock.class.php).

Can you share in more detail the code you added to /course/lib.php to make this happen?

Thanks.
 
Average of ratings: -
Picture of Jenny Gray
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers
Matt, I'll respond here for the record, but I think you found the answer for yourself anyway?

There's a bug with a patch attached in Tracker at http://tracker.moodle.org/browse/MDL-13587
 
Average of ratings: -
simpsons_avatar2
move recent courses to top of list
 
By adding 4 lines to the file course/lib.php, I was able to get the mymoodle page to move the most recently visited courses automatically to the top of the list. No user invervention required.

The function print_overview($courses) which starts on line 760 has two main segments, an if statement followed by a foreach loop. Between those two segments just add:

$b = array();
foreach ($courses as $key => $course) {
$b[$key] = $course->lastaccess;
}
array_multisort($b,SORT_DESC,$courses);

So long as you are logged in, the order of courses on the mymoodle page remains fixed. But if you log out and log in again, the new access times are registered and the order changes, putting the most recently visited course first and listing the courses by the order visited below that.

I think this is easier and better than requiring the user to edit the page and reorder the courses.

It seems this may have been the original intent of the authors of the mymoodle page, because the code to determine the lastaccess time is already there, but is never used after the time is determined, so by default the courses were listed in order of their course id number, which is irrelevant to the user.
 
Average of ratings: -
Picture of Jenny Gray
Re: move recent courses to top of list
Group DevelopersGroup Particularly helpful Moodlers
I agree that this is an excellent improvement, but your code doesn't seem to work quite right for me.

That's to say, it does work - the courses are displayed in the new order. But I also see lots of PHP Notice errors about data that seems to have got lost out of the $courses array and which is needed by the various module_print_overview functions to make sure they can report into myMoodle properly. So now, for example the forum with posts in one of my courses isn't being listed.

I'm also concerned that its a bit inefficient (or that could be as a result of the errors, I'm not sure!)


 
Average of ratings: -
Picture of Ger Tielemans
Re: move recent courses to top of list
 

We made some changes too:

  1. We work with periods in our schools
  2. the admin can set the start date and end date of each period
  3. we create a table to store the periods with start and enddates
  4. for a teacher the settings page of a course gets a dropdown with the periods as a choice
    (we use this in our period overview, the Zapbox, see my profile)
  5. we extend the table mdl_course with the field period
  6. In the code above from Matt we can now sort by period


On the personal profile page we offer the student the choice to show/not show the additional course messages/info in the course list on the my page:

  1. extend the profile page with the choice: show messages
  2. extend the Mdl_user table with the field showmessages
  3. create a condition in the code that checks for "show course messages?"
    (But I also like the solution above smile)

/course/lib.php

function print_overview($courses) {

...  

$b = array();
foreach ($courses as $key => $course) {
$b[$key] = $course->period;
}
array_multisort($b,SORT_DESC,$courses);

 //change des in asc if you want last period on top (and students sign in with their key during the year)

    foreach ($courses as $course) {
        print_simple_box_start('center', '100%', '', 5, "coursebox");
        $linkcss = '';
        if (empty($course->visible)) {
            $linkcss = 'class="dimmed"';
        }
        print_heading('<a title="'. format_string($course->fullname).'" '.$linkcss.' href="'.$CFG->wwwroot.'/course/view.php?id='.$course->id.'">'. format_string($course->fullname).'</a>');
        if (array_key_exists($course->id,$htmlarray)) {
            foreach ($htmlarray[$course->id] as $modname => $html) {
              if ($USER->mymessages==1) {echo $html;}
            }
        }
 //bring this outside the conditional loop..
  echo "<center><font size=-2>Periode: ";
      $nrGER="--";
      // watch out: periodes are NOT regular numbers, depends of the way it is implemented
      if ($course->period==6) {$nrGER =1;}
      if ($course->period==7) {$nrGER =2;}
      if ($course->period==8) {$nrGER =3;}
      if ($course->period==9) {$nrGER =4;}
      echo $nrGER."</font></center>";
        print_simple_box_end();
    }
}


 
Average of ratings: -
Picture of Fred Quay
Re: My Moodle: Extending "My Moodle"
 
Hi Mike,

Some monthes ago, I tried with no success to convince about the necessity to make My Moodle a comprehensive personal planning tool, you could read my propositions here.
I guess my english level didn't permit me to develop my convictions so as to share with the community the need to give Moodle a better interface to favorize individual engagement.

 
Average of ratings: -
Picture of Mike Churchward
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful MoodlersGroup Testers
I'm not sure if we're talking about quite the same thing, but what I'm suggesting might help you get there...

First, when I say "My Moodle", I mean the page reached at '/my/index.php' on any Moodle site.

When I looked at your posts, you described wanting to see all activities in "My Moodle". Currently, you do see a lot of this. Can you describe what you would like to see? You also described "mandatory" activities, but then didn't respond to the replies for more information.

In any case, what I am describing is a way to put other content on that page; I think using a centre block will work for this.

mike
 
Average of ratings: -
Picture of Fred Quay
Re: My Moodle: Extending "My Moodle"
 
Sure my interest is about ../my/index.php.

What I mean : if My Moodle lists unread forum Messages and lessons, quizzes and workshops are not listed. Do I mistake ? As a teacher, if a use Moodle to give my pupils mandatory activities, such as a dated assignment (included in My Moodle under the course name) or a dated Lesson (not included), I intend Moodle to inform the users about both.
So I plead to see all dated activities published by My Moodle.
 
Average of ratings: -
Picture of Jenny Gray
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers
I agree, there are lots of things that could be included in the My Moodle page that aren't covered at the moment.

In developer terms, each module needs a print_overview function. From a quick scan of the code, only forum, chat and assignment of the core modules offer this at the moment. All the others, like lesson, quiz, workshop that you're interested in, don't support it yet.

I'm personally interested in pushing some other updates in as well from blocks, like blog entries, new participants, and maybe covering the site level updates so that our side-wide forums can be listed as well.

I know there are some big changes afoot in Moodle 1.9 to the way events are handled, I'm not sure if that will change the way My Moodle gets its data. If it does, it might be worth while holding off on major changes just yet. Does any-one know?
 
Average of ratings:Useful (1)
Picture of Stephen Bourget
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Testers
There are some issues filed in Moodle Tracker for some of the core modules that currently are missing the print overview function.

Choice module: MDL-6373
Quiz module: MDL-6376
Lesson module: MDL-10568

The issues listed have the code for the print_overview function and it should work with both Moodle 1.8 and 1.9
 
Average of ratings: -
Picture of Matt Albert
Re: My Moodle: Extending "My Moodle"
 
I was able to get the forums posting up on my moodle but the quiz hack has no effect. Does anyone have any clue as to why this might be?
 
Average of ratings: -
Picture of Jenny Gray
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers
I have added tracker entries for glossary and wiki modules, and supplied print_overview functions for each of them. I could check them in, but I'd appreciate a code review first!!

glossary - MDL-12073
wiki - MDL-12074
 
Average of ratings: -
Picture of Dave Kichler
Re: My Moodle: Extending "My Moodle"
 
I agree! The My Moodle page definately needs further development. I am currently working on re-writing the html role specific block (considering the horrible inconsistencies in its current state!) and plan to extend that functionality to the entire block system. The fact that there are no roles or contexts associated with the My Moodle page make it pretty much impossible to implement this type of functionality properly.

Right now, for development purposes, I'm using the Front Page roles/contexts to display blocks on the My Moodle page (since usually one or the other is used). Maybe once I get the functionality working I'll develop some roles for My Moodle or perhaps a context that would be part of a user profile (my moodle role/context).
 
Average of ratings: -
Picture of Rick Barnes
Re: My Moodle: Extending "My Moodle"
 
Will/does my moodle show pupils the grades and feedback for assignments they have completed?

I would like to start using my moodle with our pupils but we need to wait for us to be able to set different assignment deadlines for different groups. wiuthout this I would need each teacher to maintain their own copy of a course so that they showed the appropriate deadlines to pupils.
 
Average of ratings: -
Picture of Steinn Sigurðarson
Re: My Moodle: Extending "My Moodle"
 
Hey, interesting discussion!

Now this hasn't been officially released yet by the COVCELL project, but you might be interested in the Course Standing block we developed for the My Moodle page:

http://isdev.odg.cc/course_standing-0.2.0.zip

It's not very tested, but since I stumbled upon your post I'd love to get some feedback.

Best,
Steinn E. Sigurðarson
ODG ehf.
 
Average of ratings: -
Julian Ridden
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Moodle Course Creator Certificate holdersGroup Particularly helpful MoodlersGroup Translators
Thought I would check it out, but you have forgotten to add the lang file to the zip. Could you upload it to this discussion?

Ill then add it to the Playpen.

Thanks

JR
 
Average of ratings: -
Picture of Steinn Sigurðarson
Re: My Moodle: Extending "My Moodle"
 
Hey, completely my bad!

I'm more used to using tar/gz files, and I forgot to add the -r switch to my zip program!

Now I've updated the file at the previously posted URL to include the lang directory (and other subdirectories, if there were any wink.

Thanks for the heads up and patience,
Best,
Steinn
 
Average of ratings: -
Picture of Roger Emery
Re: Extending "My Moodle" - more personal
 
We've enabled "my moodle" as the default home page for users in concert with automatic enrollement from our records system.

Here's something simple that make so much difference:-
I've tweaked the code (yesterday) to show the users name and picture as a heading block - it just adds that personal touch. "Hi, Daisy!" etc

Screen capture attached.
Code below - its all hard coded/styled/languaged in a table at the moment as proof of concept as I'm still tweaking, but will do it properly once we have upgraded to 1.8x (currently using 1.72).
It uses the 100x100 user picture reduced to 50x50 - the exact half doesn;t leave jaggy edges to the picture.

One file changed:- ../my/index.php

These additions from Line 55 (ish) onwards...

/// The main overview in the middle of the page

$firstname=$USER->firstname;
$userpicture=$USER->picture;
$userid=$USER->id;
if ($userpicture) {
$picturepathname = 'http://mycourse.solent.ac.uk/user/pix.php/'.$userid.'/f1.jpg';
} else {
$picturepathname = 'http://mycourse.solent.ac.uk/pix/u/f1.png';
}
echo '<table style="border-color:#eeeeee;" border="0" cellpadding="4" cellspacing="2" width="100%">';
echo '<tr><td style="background-color:#eeeeee; border-color:#dddddd;"><a href="http://mycourse.solent.ac.uk/user/view.php?id='.$userid.'"><img src="'.$picturepathname.'" align="right" width="50" height="50"></a><b><span style="font-size: 6px">&nbsp;<br></span><span style="font-size: 18px">Hi, '.$firstname.'!</span><span style="font-size: 12px"><br>Your sites below...</span></b>';
echo'</td></tr>';
echo '</table><br/>';

 
Average of ratings:Useful (6)
Ray Lawrence
Re: Extending "My Moodle" - more personal
Group Particularly helpful Moodlers
HI Roger,

I like this. smile Just a quick thought.... have you considered re-working this as a block, with scope to edit the text? It could then be used in courses too (although not in the centre of the course page sad).
 
Average of ratings: -
Picture of Steinn Sigurðarson
Re: Extending "My Moodle" - more personal
 
On our agenda in the covcell project (to be delivered this month actually, yikes!) is also what we call a "personal profile block".

Which started out to be a pretty complicated block where people could manage their personal information and decide who sees what etc -- but I said no to that idea, since we just don't have the time and money to make such a block with an interface that would make it actually useful.

Instead, we decided to just make a little block for use with the My Moodle page, where a user would see their own picture, a greeting, and perhaps some basic stats on themselves (number of courses they're registered in, etc?) ... ideas?

In fact, seeing that screen shot from Solent reminded me of what a difference such a simple block could make!

I'll throw one together soon and post it here!

Best,
Steinn

 
Average of ratings: -
Picture of Roger Emery
Re: Extending "My Moodle" - more personal
 
Just to note - the avatar/picture of the user links to their profile
 
Average of ratings: -
Picture of Steinn Sigurðarson
Re: Extending "My Moodle" - more personal
 
Just a quick mail from the COSELLO conference, we are now publishing (finally!) the COVCELL tools we hadn't published yet.

Here is a screenshot of what I call "COVCELL + My Moodle".
covcell_mymoodle.png
 
Average of ratings:Useful (2)
Picture of Roger Emery
Re: Extending "My Moodle" - more personal
 
Not sure I'd know where to start with a block version to be honest! Have to look into that.
Just wanted this on the students 'my' / homepage for now - hence the hack.

Also thought though a similar block/centre resource within a course would be good to show the tutor(s) avatar/name in a similar way with links to their profile - This would personalise the course sites/pages with the info of who is teaching as a compliment to the students homepage showing who is learning.


 
Average of ratings: -
Ray Lawrence
Re: Extending "My Moodle" - more personal
Group Particularly helpful Moodlers
I like the fact that this is central and not to the side in a block... Just did a bit of cutting and pasting, I feel a new course format coming on.

 
Average of ratings: -
Picture of Ger Tielemans
Re: Extending "My Moodle" - more personal
 

We made this change: echo the users's name in the navigation bar, then a static, hardcoded part of the code in /calendar/ moved to /my page/ in the center, sticky blocks on the left and the right and then finally blocks students can choose to paste on their privat my page (like the HTMl-block on the right with the personal web 2.0 favorit links..)

Availability of the blocks is depending of the (block) settings in:

  function applicable_formats() {
        return array('all' => true);
    }

(not available block for students and teachers on my page: 'my' =>false )


 
Average of ratings: -
Nick Dolley
Re: Extending "My Moodle" - more personal
 
Hi Roger,

I really like the look of your 'My Moodle' page, we have utilised your mod to allow images and the welcome message above the courses list and it looks great!

I was just wondering how you managed to get 'My Moodle' to display the recent forum activity in the courses and assignment deadline dates?

Any help would be greatly appreciated.

Many thanks!

Nick
 
Average of ratings: -
Picture of Roger Emery
Re: Extending "My Moodle" - more personal
 
Hi Nick,

The display of recent activity and assignments is built into the standard 'my' page so I have added nothing, although I have read that others have found this feature does not work because of a bug in certain versions. We are using 1.82

Roger
 
Average of ratings: -
Wild and Free!
Re: Extending "My Moodle" - more personal
 

This works GREAT! Thanks!

 
Average of ratings: -
Picture of Ben Christopher
Re: Extending "My Moodle" - more personal
 

Hi roger,

i am using 1.9+.

am i right in saying that i can paste this code into ../my/index.php and all this "block" will appear for all my users?

thanks

Ben

 
Average of ratings: -
Gareth J Barnard
Re: Extending "My Moodle" - more personal
Group DevelopersGroup Particularly helpful Moodlers
Hi Roger,

I hope that you read this!

Anyway, I have had a go at implemening your code and made a few alterations - so in index.php of /my/ for Moodle 1.9.5 inserted at line 66:

$firstname=$USER->firstname;
$userpicture=$USER->picture;
$userid=$USER->id;
if ($userpicture) {
$picturepathname = $CFG->wwwroot.'/user/pix.php/'.$userid.'/f1.jpg';
} else {
$picturepathname = $CFG->wwwroot.'/pix/u/f1.png';
}
echo '<div style="border: 2px solid #5C5CD4; border-radius:2ex; -moz-border-radius:2ex; -webkit-border-radius:2ex; background-color:#5C5CD4; color:#ffffff;"><table border="0" cellpadding="4" cellspacing="2" width="100%">';
echo '<tr><td width="90%"><p style="font-weight: bold;"><span style="font-size: 4px">&nbsp;<br></span><span style="font-size: 18px;">';
$timetodecode = date("G");
if ((int)$timetodecode < 6 && (int)$timetodecode >= 0) {
echo 'The twilight hours can be the most productive,';
} elseif ((int)$timetodecode < 12) {
echo 'Good Morning';
} elseif ((int)$timetodecode < 18) {
echo 'Good Afternoon';
} elseif ((int)$timetodecode <= 23 || (int)$timetodecode == 0) {
echo 'Good Evening';
}
echo ' '.$firstname.'</span><br /><span style="font-size: 12px">Your courses are below...</span></p></td><td width="10%"><a href="'.$CFG->wwwroot.'/user/view.php?id='.$userid.'"><img src="'.$picturepathname.'" width="50" height="50"></a></td>';
echo '</tr></table></div><br />';

The code is site independent and implements round borders when used with a suitable CSS3 complient browser such as Firefox or Safari.

Cheers,

Gareth
 
Average of ratings: -
Picture of Matt Albert
Re: My Moodle: Extending "My Moodle"
 
The modifications to My Moodle discussed in here are interesting and I have implemented some. One thing that bothers me is that My Moodle is still very limited. It would be great if this was a true starting page for users in witch the first few of their blog post were right there in the middle of the page. It would also be great to have a listing and a central place for all of the users files on the "My Moodle" page. Has anyone given any thought to how this all can be accomplished without using the limited blocks option?
 
Average of ratings: -
Picture of Mike Churchward
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful MoodlersGroup Testers
Well, I think you could do it using some of my suggestions above. You could create a block that outputs what you want and load it into the middle area of My Moodle. You could further design the output to take advantage of the fact that its in the middle.

mike
 
Average of ratings: -
Art Lader
Re: My Moodle: Extending "My Moodle"
Group Documentation writers
Just one quick question:

My Moodle works just swell on our installation, but it outputs only the course title, not info about forums, assignments, chats, etc. For example, in one of the courses in the screen capture below, there is a recurring daily chat, but nothing about that shows up. Hmmm....

I have not found a setting or a switch for this. Probably overlooking something obvious, of course.

Any ideas, Fellow Moodlers?

Thanks,
Art

 
Average of ratings: -
Tim at Lone Pine Koala Sanctuary
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Documentation writersGroup Particularly helpful Moodlers
It is up to the individual modules to support My Moodle. Some do, some don't. The quiz only will from Moodle 1.9, for example.
 
Average of ratings:Useful (1)
Art Lader
Re: My Moodle: Extending "My Moodle"
Group Documentation writers

That's great about the quiz, Tim. I did not realize that. I am still using 1.8.2, but look forward to 1.9.

I was sure that chats and assignments were showing up before I upgraded. Maybe my memory of that is simply incorrect.

-- Art
 
Average of ratings: -
Picture of Paul Nijbakker
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi Art,

It is a bug i Moodle 1.8.2. we are experiencing it too, but it is supposed to have been resolved for 1.8.3 (will be upgrading this weekend to see).

Rgrds,
Paul.
 
Average of ratings: -
Picture of Paul Nijbakker
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
The 1.8.3 upgrade does indeed restore the MyMoodle page to its functions. (However, be aware that there might be an issue with user pictures (see http://moodle.org/mod/forum/discuss.php?d=82208)

Rgrds,
Paul.
 
Average of ratings: -
Howard
Re: My Moodle: Extending "My Moodle"
 

Hey Mike, I think your ideas for extending My Moodle are great. I'm wondering if we can use this feature in our ChristianCourses.com site to allow students to see a database listing of their transcripts from the old site, that we could somehow import into Moodle and key to each student.

Also, where do students have the option of turning on their My Moodle dashboard? I don't really want to "force students to use My Moodle" on a site-wide basis. I assume we can add a Sticky Block to the My Moodle pages so that student who want to can go to their My Moodle page and a list of their courses taken from the old site would automatically appear.

 
Average of ratings: -
Picture of A. T. Wyatt
Re: My Moodle: Extending "My Moodle"
 
Greetings, Howard!

I can't answer the sticky block question (we don't use them, preferring to generate all new courses with the same set of customized default blocks), but I can tell you that all you have to do to make My Moodle available is to put this link:
http://yourmoodle.site/my
wherever you think it is most appropriate. I have such a link on the front page of our site. People can access it easily, but it isn't a forced redirection.

atw
 
Average of ratings: -
Howard
Re: My Moodle: Extending "My Moodle"
 

Thanks for your reponse! That's very simple. It seems that the My Moodle page is very much loke the blog page, except it has my courses in the center block instead of a blog. Thanks again for your help.

Howard

 
Average of ratings: -
Picture of Gareth Morgan
Re: My Moodle: Extending "My Moodle"
 

Hi,

We have made some enhancements to MyMoodle at the Open University which we think could be beneficial to the Moodle Community as a whole, and would like to canvass opinion on whether we should commit them to core.

I realise that I’ve covered these to some extent in an earlier posting, but I think I need to be a bit clearer about what they are, so first of all, we have added print_overview functions to the glossary module, wiki module, and questionnaire module (see tracker entries MDL-12073, MDL-12074, CONTRIB-276 respectively).

For each course in which the user is enrolled, a message will be displayed for each of these types of modules if there has been any activity in the module since the user last viewed the course.  The message will appear within the rectangular box which surrounds the title of that course, and will give the number of actions that have occurred, plus a hyperlink leading to the module’s own display pages, where the user can find out more information regarding the actions within the module. So, for example, if two other users have completed and submitted the course questionnaire, the following will be displayed.

Questionnaire: <questionnaire name>
2 new questionnaire responses since unit last viewed

Please also see the upper frame of the screenshot, where a course called "Parliament and the law" is showing a message indicating that there has been one new questionnaire submission since the currently-logged-in user viewed that course.  (Note - on our web site, we have been using the term "unit" in place of "course" - we will amend that in language files contributed back to Moodle)

We have made the following improvements to the function which prints the course information:

a. A new section at the start of the MyMoodle page called "Site-level activity", to display blog activity and modules that are held at site, rather than course level.  This can be seen in my screenshots.  On our LearningSpace site we called it "LearningSpace site-level activity".  One blog message and three forum messages are displayed in the upper screenshot:

Learning Journal Entries
            2 entries since last log in.

Forum:  Arts and History forum
            5 posts since last log in.
            5 total unread.

Etc…

Within this section, first the blog overview function, which we have created within the blog code, is called to display information about activity in the blogs, if there has been any (see below for more detail).  We called the blog the "Learning Journal" on our own site.  After that, the print_overview functions are called on all the modules that are held in the site course, (i.e. the introductory course of the site, usually course ID 1, if one has been set up), and the messages from these displayed.  Three messages from forum overviews can be seen in the site section of the upper screenshot.

The display of site-level activity may not be useful to all Moodle environments, (e.g. in some, there may be no interactive modules at this level, or the activity may be kept private) so we will put in a config. setting under My preferences/Appearance/My Moodle, which will allow the hiding or revealing of the whole section (the Site Level Activity box shown in the screenshot).

b. For each course, we display course-related information, including the currently-logged-in user's role:  e.g.

Role: Student

(this is not shown in the screenshot).

c. For each block that is used by the course, we call a print_overview function, if the block has one, similar to the call to a module’s print_overview function, in order to generate a similar activity message.  This is something we support with our custom-built blocks on our site and which is not supported, at present by many core blocks.  However, we feel that it may be worth considering modifying some of the core blocks to do this in future.

d. We have also modified the course overview function to display a button which performs a click to hide/click to reveal on the box around the course data.  The hiding and revealing of the section is done by using the standard JavaScript function elementToggleHide, in much the same way as is done for the content of blocks (see moodleblock.class.php).  Please see the lower frame of the screenshot, in which the course "Parliament and the law" has now been hidden, but can be revealed by clicking on the "+" button at the left hand side.

If the user does not have JavaScript enabled on their browser, the sections will all be displayed by default, and the button will not work, but they will not see an obtrusive error if they click the button.

e. We display recent enrolments on the course:  this can be seen in the screenshot, where there is text that says: 

Learners:
1 new learner(s) since unit last viewed

f. If the current user is enrolled on the course, we provide them with a link which they can use to unenrol themselves.

Finally, as mentioned above, we have included a print_overview function in the blog, which displays information in a similar format to the module print_overview functions, if a user has contributed a blog entry since the date and time of the current user's previous login to the site, and if the contributor is not a deleted user.  E.g.

Blog
2 entries since last log in


Could I just ask for your opinions on whether I should commit all this to CVS, or whether there are any aspects that we should omit or modify? 

Thanking you in advance,

Gareth Morgan.


 
Average of ratings: -
Picture of John Patten
Re: My Moodle: Extending "My Moodle"
 

I would imagine that these would be quite useful for those of us using My Moodle interface! 

On a related note, is there a block that allows for simply posting of general information on the My Moodle page? Currently we do this by hacking the my moodle html source. It would be nice if there was a better way.

Thank you!

 
Average of ratings: -
Picture of Stephen Bourget
Re: Extending "MyMoodle"
Group DevelopersGroup Testers
This looks to be a great improvement to the my Moodle interface. I especially like the option for collapsible courses.

Is there a tracker entry somewhere where we can vote for this?

 
Average of ratings: -
Picture of Ralf Hilgenstock
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Translators
Hi Gareth,

myMoodle shows news from the activities. Why didn't it show new or cahnged ressources? What had to be done to show new or changed activties also?


ralf
 
Average of ratings: -
Ray Lawrence
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi Gareth,

I have some feedback. Please forgive the short comments, it's late. smile

Questionnaire: Not a core module so should not be added to core.

Blogs: All blog entries? That could be a lot across the site. Is the Blog Visibility setting respected in the proposed display?

b. For each course, we display course-related information, including the currently-logged-in user's role: What is the position if the user is assigned to a number of roles in a course?

Hide / Show button: This would need an option to disable (like for blocks).

f. If the current user is enrolled on the course, we provide them with a link which they can use to unenrol themselves: Does this only apply if the user has that capability in a role in that course? If not it would degrade the whole rationale of the roles system.

Which version are you considering committing this to? If 1.9 will there be enough time to test prior to a stable release?
 
Average of ratings: -
Picture of Gareth Morgan
Re: My Moodle: Extending "My Moodle"
 

Hi, Ray,

Thanks for your questions, I'm afraid that there are aspects in which I omitted things or didn't give enough clarity in my forum posting.  To answer your questions in order:

I incorrectly implied that questionnaire was a core module, whereas it is a contrib module, (and should probably have added that my changes will require approval from Mike Churchward as the owner).

With regard to Blog entries - we do check whether the user has the capability to view blogs and filter the posts so private ones are not included in the total, only those visible to the site, or to the whole world.  Presumably if the user has access to MyMoodle, they are already site users, so we should not need to differentiate between site and public visibility? 

Also please note that we only display a count of the number of blog entries, so if blog activity rate is high, this should not make it any more obtrusive than when it is low, although the page that they get to when they click on the link may become more crowded. 

Also, please note that the blog statistics will be part of a site-level activity section on the MyMoodle page that can be completely hidden by admins if it is not applicable (e.g. too large a site with too much top-level activity).

In answer to the question about user roles:  sorry, I should have made that clearer.  We will list all the roles that the user has in the context of the course, separated by commas.  We could make each a hyperlink to the Participants page, where the user can see information about the users who have the role, but this would need some work to ensure that if they did not have the permissions they would not see them as links, only text.  It might be better if we just displayed them as text for the time being.

As concerns the show/hide button and disabling it - we don't actually see any real benefit to having a setting to disable this, other than consistency with block code, assuming that MyMoodle is regarded as the user's personal page to do with as they please.  Could you be more specific on the reason for wanting this functionality?

You are quite right that we should not show the unenrol link without first checking the user's permissions, so access to this link will be governed by the user having permission moodle/role:unassignself in the context of that course.

Regarding the version that we will commit to - I will double-check with our lead developer on this, but it will probably be committed to HEAD, not 1.9 as well, because, as you state, the time remaining is limited.

I hope that these are satisfactory answers to your questions,

Gareth.

 
Average of ratings: -
Picture of Jenny Gray
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers
Hi,

We have all this built on top of Moodle 1.9 on OpenLearn, and has been tested by our Technical Testing Team in-house.

That said, I didn't plan to contribute it for 1.9. As you say time is short and I realise that the community would need time to feel comfortable with the changes, and I REALLY don't want to slow down the final 1.9 release!

So we will definitely be doing this for Moodle 2.0 only.

Incidentally, Gareth's not quite right about the way we've done the roles list. In our system there's only 1 role per person per course, so I didn't bother putting a loop in. But absolutely as we contribute that in, it needs changin so there is a loop to list comma separate all the relevant roles.

Question: what about the roles people have across the entire site as well?

Jenny
 
Average of ratings: -
Picture of sam marshall
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful MoodlersGroup Testers
Is there a 'can of worms' smiley? It's really needed for the last questions. smile

In some cases I've seen, when displaying roles on course X, Moodle seems to operate as follows:

1) Include all roles on course X and on all parent contexts, if they provide the appropriate capability (moodle/course:view)...
2) ...except roles that have 'doanything'.

This is not always very satisfactory (it doesn't suit the OU, for example) as it means you can't have roles at higher level which have access to the course but aren't considered to also belong to that course, unless they are admins. (For example we experience problems with our helpdesk staff, who don't have admin rights, but should be able to view any course. We have some local workarounds for this system.)

However for displaying an individual's roles on a course it is probably an ok approach?

(I understand that some sites assign roles at category level or something, so that you are effectively a student on every course in that category. So it might be inappropriate to not display this role.)

--sam
 
Average of ratings: -
Ray Lawrence
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi Gareth/Jenny,

Thanks for your comprehensive replies.

Blogs: I didn't have private blog entries in mind (which it what I believe you are referring to in your reply). To expand, if the site is set up so that blog visibility only allows users to see blog entries with those with whom they share a course any display should only list those entries (not those for new blog entries site wide). Hmm, and thinking this through if Blog visibility is set so that users can only see their own entries this option is superfluous.

I don't think making the role(s) description text into a link adds much value.

As concerns the show/hide button and disabling it - we don't actually see any real benefit to having a setting to disable this, other than consistency with block code, assuming that MyMoodle is regarded as the user's personal page to do with as they please. Could you be more specific on the reason for wanting this functionality?

No problem. In my experience users collapse blocks and forget they've done it. This leads to frustration and support calls. Where the site administrator considers it appropriate to disable this option taking into account all considerations for the site set up they can do so. Similarly, if a site admin considers the same functionality to be inappropriate elsewhere the configuration options should be the same. If the personal page view was applied consistently the ability to collapse blocks would be removed for blocks on the MyMoodle page.

Not 1.9: Great.

Question: what about the roles people have across the entire site as well?
And to add to that question (anticipating a potentially long list of roles and loads of programming angst), does it matter if the name of the role is not shown?

 
Average of ratings: -
Picture of Gareth Morgan
Re: My Moodle: Extending "My Moodle"
 

Ray, Sam,

Thanks for your feedback. I realised that I hadn't in fact taken everything into account in my original design, particularly the blog level setting. Just to recap for other readers, this is set from the Blog Visibilty drop-down on My preferences > Security > Site policies, and can be:


The world can read entries set to be world-accessible

All site users can see all blog entries

Users can only see blogs for people who share a course

Users can only see blogs for people who share a group

Users can only see their own blog

Disable blog system completely


I would propose that, for the time being, we only display anything about blog entries when the setting is one of the first two: 'global' or 'site' visibility. Otherwise, the SQL becomes quite complicated in terms of joining the blogs tables to other tables containing information about users' roles and group membership, although this is done in the Blog pages. And, as you point out, if it is set so that users can only see their own entries, there is little point in displaying the information.

I will also check that the user has capability 'moodle/blog:view' or 'moodle/user:readuserblogs' in site context. (And, for consistency, that they do not have the legacy role moodle/legacy:guest). If the capabilities are not right, again nothing about blogs will be displayed in MyMoodle. If the criteria are met, only the count of recent blog entries where the user has published it to "Anyone on this site" or "Anyone in the world" will be displayed. (for consistency, I could override that publish state check if the logged in user has an admin capability to read personal posts as well, although there may not be much benefit).

Regarding your, and Jenny's question regarding the other issue of whether we want to display all applicable user roles: following Sam's concerns that this could develop into a complex change, I wondered whether I could copy the approach that he describes, (which is used on the page that can be reached by following the link in the Participants block).

Basically, this page (user/index.php) displays users if they have a role that gives them the capability to view that course, except where they have got the capability through having an admin role that allows them to do anything on any course (because this would make them appear as a participant on every single course).

It looks at all the roles used in the context of that course, or in a parent context (i.e. categories that the course is within, all the way up to the system context level). It then narrows this down to those roles that have the capability moodle/course:view in the context of that course, and do not have capability moodle/site:doanything in the context of the site - this filters out the admin roles.

I could borrow this approach for my purposes, to find out the roles held by the currently logged-in user in the current course and its parent contexts, and excluding the admin roles.

At a technical level, (for the benefit of developers reading this), I would be inclined to split out the code that gets the roles to include/exclude (roughly between lines 59 and 83) into a new function and put it somewhere such as lib/accesslib.php, to save maintaining it in two places. I would modify it to get the course roles for a particular user if specified in addition to the default functionality of getting them for all users.

Finally, I could, as you request, provide a config to turn off the hide button for sections on the MyMoodle page if this is felt to be sufficiently desirable, although I would like to canvass opinion from people in the community, as to whether it is an option that's likely to be used often.

Thanks,

Gareth.


 
Average of ratings: -
Ray Lawrence
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi,

Blogs: I understand your point about complexity, but (sorry smile) I think there a reasonable expectation that information regarding blog entries in a MyMoodle page is consistent with the blog entries that can be viewed. Where the decision has been taken for a site that blogs are best used along course/group lines then this proposal (if I understand it correctly) would contain some important omissions.

Role names: Sounds fine (or omit it altogether).

"It looks at all the roles used in the context of that course, or in a parent context (i.e. categories that the course is within, all the way up to the system context level). It then narrows this down to those roles that have the capability moodle/course:view in the context of that course, and do not have capability moodle/site:doanything in the context of the site - this filters out the admin roles."

So if I am global admin and assigned as a learner in a course context I wont see entries in MyMoodle for that course owing to doanythng being present in a role at a higher context?

Collapse icon: as to whether it is an option that's likely to be used often. With respect I don't think this is the issue, and it won't be possible to gauge this here. The key issue is that identical functionality is present elsewhere with an on/off switch. IMO there is no benefit in introducing another exception that makes Moodle harder to learn.
 
Average of ratings: -
Picture of Gareth Morgan
Re: My Moodle: Extending "My Moodle"
 

Hi,

Blogs and Collapse icon:  I'll see whether I can incorporate these recommendations.

Could I just correct a point regarding Role Names:

So if I am global admin and assigned as a learner in a course context I wont see entries in MyMoodle for that course owing to doanythng being present in a role at a higher context?


I think the point is to distinguish between the user being an admin and the role being an admin role: what should happen is that the admin role will be ignored, but the learner role will be displayed.  So the user would see the course in MyMoodle and would see that their role in it was as a learner (even though, for the site as a whole they are an admin).  If they had another role in that course, such as Teacher, that would also be displayed against the course (once I have adapted our code to display multiple roles for the same course).

If, however, they removed their own learner and teacher roles in the course, the course would not be displayed in MyMoodle, even though, as an admin, they would still have the capability of viewing it. 

I hope that this makes sense,

Gareth.

 
Average of ratings: -
Ray Lawrence
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi,

Blogs and icon: Great!

Roles: Sounds good to me. Yes

Ray
 
Average of ratings: -
Wild and Free!
Re: My Moodle: Extending "My Moodle"
 

Totally agree. I would say this is vital!!

Any progress on this?

 
Average of ratings: -
Picture of Jenny Gray
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers
Sorry John, I've slightly lost the thread in here! Which bit are you asking about progress on?

The stuff that's being offered by the OU is in the Moodle tracker at http://tracker.moodle.org/browse/MDL-13583. Admittedly progress has been slow lately, and now Gareth has left so I'm trying to find time to pick it all up. Hopefully there will be some progress again soon.


 
Average of ratings: -
Wild and Free!
Re: My Moodle: Extending "My Moodle"
 

Hi Jenny

I was referring to extending the block capability to allow 'middle' blocks (everywhere, but especially on the 'my moodle' page).

I have managed to get a title for the middle section on our my moodle page, but had to use a hack. I really want to be able to do it using the blocks in Moodle. It is so annoying trying to make everything fit down the sides, whilst the centre section may only have one single course listed. A very poor use of space.

Thanks for your follow up Jenny!

 
Average of ratings: -
Picture of andy choo
Re: My Moodle: Extending "My Moodle"
 
Hi,

Wondering if anyone here is able to show both the course categories and the courses under the categories onto "My Moodle Page"

Any help will be greatly appreciated.

Andy
 
Average of ratings: -
Picture of Tyrel Kelsey
Re: My Moodle: Extending "My Moodle"
 
I worked on this small mod with Jared Stein if anyone wants to check it out it uses basic JavaScript and an extra div to achieve the hide show effect. Please let me know what you think

//Replaces function in "course/lib.php"
function print_overview($courses) {

global $CFG, $USER;

$htmlarray = array();
if ($modules = get_records('modules')) {
foreach ($modules as $mod) {
if (file_exists(dirname(dirname(__FILE__)).'/mod/'.$mod->name.'/lib.php')) {
include_once(dirname(dirname(__FILE__)).'/mod/'.$mod->name.'/lib.php');
$fname = $mod->name.'_print_overview';
if (function_exists($fname)) {
$fname($courses,$htmlarray);
}
}
}
}
foreach ($courses as $course) {
print "<ul style=\"margin: 0; padding: 0; list-style: none; width: 96%; \">";
$linkcss = '';
if (empty($course->visible)) {
$linkcss = 'class="dimmed"';
}
print'<li class="coursebox" style="padding: .5em 1em 1em"><h3 style="font-size: 120%; font-weight: normal; margin: 0 0 .2em 0"><a title="'. format_string($course->fullname).'" '.$linkcss.' href="'.$CFG->wwwroot.'/course/view.php?id='.$course->id.'">'. format_string($course->fullname).'</a></h3>';

if (array_key_exists($course->id,$htmlarray)) {
print '<a href="#" id="toggle_'.$course->id.'"onclick="document.getElementById(\'coursenews_'.$course->id.'\').style.display=(document.getElementById(\'coursenews_'.$course->id.'\').style.display==\'block\'?\'none\':\'block\'); document.getElementById(\'toggle_'.$course->id.'\').innerHTML=(document.getElementById(\'toggle_'.$course->id.'\').innerHTML == \'There is news in this course...\'?\'Hide course news...\':\'There is news in this course...\');">There is news in this course...</a><div id="coursenews_'.$course->id.'" style="display: none">';
foreach ($htmlarray[$course->id] as $modname => $html) {
echo $html;
}

print "</div><!--end contents--></li>";
}
print "</ul>";
}
}

 
Average of ratings: -
Picture of Jenny Gray
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Particularly helpful Moodlers
There's a tracker issue about this already http://tracker.moodle.org/browse/MDL-13587 which takes a slightly different approach.

I suggest you post about your mod there so Martin D can decide which method he wants to use!
 
Average of ratings: -
Picture of Dean Baggaley
Re: My Moodle: Extending "My Moodle"
 
We've been looking at customizing mymoodle to act as a more bespoke interface for a while so this thread has been really useful. approve

The main changes our teaching staff wanted from the interface were better notifications (mainly for students) about when courses are updated and a broader overview of the content of courses.

This is still work in progress but attached is a screenshot after messing around with course/lib.php and my/index.php for a while. The main problem i haven't addressed yet is for people who belong to many courses it will be alot of information to digest and lot of time scrolling.

mymoodlebcc
 
Average of ratings: -
Picture of Geoffrey Rowland
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
That looks very nice. We have also been tweaking My Moodle to be a 'switchboard' to other resources; network folders and shares, email, ePortfolio (Mahara), Learning Centre etc together with the central listing of courses.

Agree that for users with lots of courses, e.g. admins, hard-working teachers and learning support staff, the central display is problematic. By no means a complete solution, but we use a recent upgrade of the myCourses block (at the side) to at least give users a compact way of navigating through a long list of courses.

By the way. What did you have to do to get the RSS feeds for each course?
 
Average of ratings: -
Picture of Dean Baggaley
Re: My Moodle: Extending "My Moodle"
 
Hi Geoffrey,

Thanks for that, its still work in progress but I do like where its heading. The RSS icon is in there prematurely and i'm working on developing a customized rss output from courses.

The only thing I can think of to address the usability problems with the display of courses is to develop a drop-down filter similar to those used on places like digg and youtube and remember the last setting.

Something along the lines of
'Sort by most recently updated',
'Sort by A-Z',
'Sort by most viewed' (in context of the user)
'Sort by most resources'

In terms of the RSS the hardest part is deciding which parts of the courses are worth including in the feed at any level other than including the summary because it would be kind of pointless to include alot of the native moodle activities which wont be viewable from most clients


 
Average of ratings:Useful (1)
Julian Ridden
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Moodle Course Creator Certificate holdersGroup Particularly helpful MoodlersGroup Translators
That is looking brilliant. If you need a hand in testing/bug reporting, please drop me a line as I have a school where this would be perfect.
 
Average of ratings: -
me
Re: My Moodle: Extending "My Moodle"
 
Hi guys, this thread has been great, some really good ideas smile

I'm just wondering if anyone can advise me how to add a section to my moodle which advises the user to edit their profile information, upload a picture etc. However, we would only want the message to appear if they have not yet updated their profile from the first time they log in.

I've noticed a few of the my moodle examples in this thread appear to have such a feature. for example below:

 
Average of ratings: -
Picture of Ger Tielemans
Re: My Moodle: Extending "My Moodle"
 
Good question, a user gets now that message for every new course enrollment.
 
Average of ratings: -
Picture of Deon Metelski
Re: My Moodle: Extending "My Moodle"
 

O.k. I don't think I am missing anything but My Moodle page does not display all activities. Only assignments even though I have a forum, resource, and a choice activity all created. I am running the recent 1.9.X stable version. Any insight is greatly appreciated.

Also there had been some great theming work done. I especially like the clean look of Dean's. If anyone could contrib code or where to start implementing(as mush as I hate to modify core) I would be eternally grateful. smile

Thanks for the assistance.

Deon 

 
Average of ratings: -
Picture of Dale Davies
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Just thought I'd show off a couple of the the developments Ive been working on recently.

Inspired by Dean Baggaley's My Moodle, I wanted to make ours more useful for students and teachers.

It's also been a good opportunity for me to integrate a new front-end to the built in messaging system.

Here's a few screenshots...

My Moodle - List View

My Moodle - Detail View

Messages Menu

My%20Moodle%20-%20Compose.jpg

Adding Recipients

Inbox


 
Average of ratings: -
Picture of Ian Tasker
Re: My Moodle: Extending "My Moodle"
 
Hi Dale,

Do you have any plans to release your theme minus the corporate branding?

the course view looks excellent.
 
Average of ratings: -
Picture of Dale Davies
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi Ian,

Thanks for you kind words, I'm very pleased with how it turned out! Unfortunately Im unable to release this as a theme. I'm making plans to redesign our Moodle again over the summer so maybe when I've rolled out the new design.

If I get the time I may release a "drop-in" replacement for the My Moodle, but for now I'm happy to try to answer any questions.
 
Average of ratings: -
Picture of Ian Tasker
Re: My Moodle: Extending "My Moodle"
 
Hi Dale,

no real questions really, i was just liking your theme, and the features of my moodle page and email page.

I'm currently writing a emailing block to allow parents to be email from within moodle, your interface would be a great add on for it.


 
Average of ratings: -
Picture of José Ángel Polo
Re: My Moodle: Extending "My Moodle"
 

Hi Dale

How can I have a mymoodle like yours? Is it available?
Reggards
 
Average of ratings: -
Picture of Dean Baggaley
Re: My Moodle: Extending "My Moodle"
 
DALE!

I've just happened upon this, 22:00pm on a friday - Sad no?

Well regardless, your developments look particularly excellent, fine attention to detail and usability, taking it several steps further than my original concept, i've also been redesigning (completely) but have been woefully distracted by other projects the past several months.

I think abit of combined manpower and geekdom on designing a custom general 'my' interface between us might garner something rather brilliant. (I'm also keen to steal some of your hard work)

by the way, 'poodle'?
 
Average of ratings: -
Mary Cooch
Re: My Moodle: Extending "My Moodle"
Group Documentation writersGroup Moodle Course Creator Certificate holdersGroup Moodle HQGroup Particularly helpful MoodlersGroup TestersGroup Translators
You think you're sad? I'm reading your reply a few minutes later, checked your profile and found you're only down the road from me !smile
 
Average of ratings: -
Picture of Dean Baggaley
Re: My Moodle: Extending "My Moodle"
 
Mary, I've been waiting countless years for a stalker, where have you been?

PS; I've got a friend from college working at preston college that you might know?
 
Average of ratings: -
Mary Cooch
Re: My Moodle: Extending "My Moodle"
Group Documentation writersGroup Moodle Course Creator Certificate holdersGroup Moodle HQGroup Particularly helpful MoodlersGroup TestersGroup Translators
Dean
I've been here all the time! smile
DM me your friend's name and I'll see if I know them

 
Average of ratings: -
Picture of Dean Baggaley
Re: My Moodle: Extending "My Moodle"
 
Attached are two screen-shots of the re-design.

It's largely unfinished and unpolished so don't be too harsh. Trying to go for a minimalistic interface this time, the less time staff spend having to interact with the interface and the lighter loads the better, mjs_1.jpg
 
Average of ratings: -
Picture of Dean Baggaley
Re: My Moodle: Extending "My Moodle"
 
mjs_2.jpg
 
Average of ratings: -
Picture of Rogier Noort
Re: My Moodle: Extending "My Moodle"
 
Dean, that looks great.
I'm pressed in revamping MyMoodle.., but have no coding skills to speak of.
Is the code for these adaptations available somewhere?


cheers

Rogier
 
Average of ratings: -
Picture of Vernon Spain
Re: My Moodle: Extending "My Moodle"
 

Me Likee....Any tips on the drop down menus that you have shown here?

Cheers,

Vernon

 
Average of ratings: -
Picture of Carolyn Bunde
Re: My Moodle: Extending "My Moodle"
 
I don't know if I am posting in the right place - but "my moodle" page will not work for my classes.

I need to be able to turn it off

I want the students to immediately go into my course. I don't want them to be able to access any portion of the course such as assignments, quizzes, messages - anything outside of the my main moodle course.

I have very specific instructions that students will miss if they access activities without going through the my main course.

I feel the same way about the calendar - they can reach an activity through the calendar without going into the course and thus miss critical information.

I understand the "my moodle" is something the students can "customize" make their own - which is great - but

I can't have students thinking those activities listed are all they have to do - that is so far from reality.

The "my moodle" was opened earlier this month at our school and it has caused nothing but confusion form my students

I have 4 different online courses in the sciences - lectures and labs with a total of 350-400 students each semester - I have to reduce everything that can cause confusion.

Maybe in the settings - we can have the option of having our course listed in my moodle.

Not trying to sound negative - but the my moodle isn't working for me.

 
Average of ratings: -
Picture of Dale Davies
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
I don't think you can have the students taken directly to a course page after logging in, although I could be wrong. Cant you just turn My Moodle off?

Also, although this is the correct forum for My Moodle related questions, this might get a better better response if posted as a new topic.
 
Average of ratings: -
Picture of Dale Davies
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hi Dean,

I'm glad you like my developments, most of which never actually made it further than my development server! Im about to embark on a redesign of Moodle so I was just "testing the water" so to speak with the "my" interface.

I'd be more than happy to share my ideas or even collaborate on a custom "my" interface if you want to take this further? You know where we are, also are you attending the RSC Advanced Moodlers event?

By the way, "Poodle" is what I called my development server which is hosted within a VM on one of our office workstations. Ideas start off on "Poodle", then get shipped to "Doodle" for testing by our teachers, then if they work get moved onto "Moodle".

Drop me a line any time you want to discuss this, I also think a bit of collaborative effort could yeild some very interesting results.
 
Average of ratings: -
Picture of Ralf Hilgenstock
Re: My Moodle: Extending "My Moodle"
Group DevelopersGroup Translators
Hi Dale,

I really like your ideas.

We often had requests about personal bookmarks in Moodle.
Some weeks ago a German developer group presented Mediabird Study Notes plugin (http://moodle.org/mod/data/view.php?d=13&rid=2354). Students can mark each element in a course, make notes and share/discuss them with other students. A next step could be an integration as a tab at myMoodle for access to the notes.

 
Average of ratings: -
Picture of Dale Davies
Re: My Moodle: Extending "My Moodle"
Group Particularly helpful Moodlers
Hmm, sounds interesting, I'll check it out.

I like this idea of tabs within the My Moodle interface, might have to investigate smile
 
Average of ratings: -
Picture of Kyle Smith
Re: My Moodle: Extending "My Moodle"
 

Hi Guys, Realise i'm digging up a bit of a dinosaur here - but I really like what you've done!

 

I'm currently running Moodle 2.x and was wondering how you managed to display a count of assignments, forums etc so I could implement a similar thing.

 
Average of ratings: -