(photo by LAMS Foundation)

In an earlier post, I wrote about how to properly integrate Adaptive Curriculum Activity Objects inside Moodle.   After having success with that, the client now needs to have the activity object as part of a LAMS sequence. 

The approach I came up with is to have the URL to the scorm activity created as a resource in the LAMS sequence.  This particular client's LAMS server is in a different domain and port than the Moodle server and it doesn't satisfy the requirements of JavaScript's Same Origin Policy.  This restriction presents a minor issue when launching the resource in a framed LAMS window. The only way to integrate it properly within LAMS is to have it launch in its window.

View full post

posted in ,

(photo by Adaptive Curriculum sample screenshots)

Solution Grove has a client who wanted to try out Adaptive Curriculum's (AC) Activity Objects (AO) inside Moodle.  This initially sounded trivial since they provide SCORM compliant packages and I thought it was easy as just creating a SCORM activity for the AO.  It turned out that AC's AOs are not standalone and they require authentication when installed on third party servers.  Their objects use standard SCORM API calls for getting the user and session information then use these values to authenticate.  The first part's the easy one since I don't need to write any code for that because Moodle already has API for SCORM 1.2.

The problem I encountered was that the authentication method used by AC needs to be run in a stateless manner through a server-to-server HTTP post using the user and session information that originated from the third party server (in this case, the moodle installation). This presents a problem for server-to-server communication because in moodle, the session id for the user is stored in a cookie and we will only be able to get that cookie if the script is run in the browser where it was issued.  At this point, we are now in contact with AC to ask a few questions so that I can proceed implementing a code to support their AOs.

View full post

posted in ,

(photo by freeparking)
This is the second part of my post on mapping Moodle courses to Elgg communities.  You can read about part 1 here.  This post discusses the actual implementation.

In order for us to track a one-to-one relationship between a Moodle course and an Elgg community we first need to create a mapping table.  The table definition I used is as follows:

 
															<TABLE NAME="block_eportfolio_course_map" COMMENT="">
	<FIELDS>
	<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="true" ENUM="false" NEXT="courseid"/>
	<FIELD NAME="courseid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" ENUM="false" PREVIOUS="id" NEXT="eportid"/>
	<FIELD NAME="eportid" TYPE="char" LENGTH="128" NOTNULL="true" SEQUENCE="false" ENUM="false" PREVIOUS="courseid"/>
	</FIELDS>
	<KEYS>
	<KEY NAME="primary" TYPE="primary" FIELDS="id" COMMENT="Primary key for block_eportfolio_course_map" NEXT="courseid"/>
	<KEY NAME="courseid" TYPE="foreign" FIELDS="courseid" REFTABLE="course" REFFIELDS="id" NEXT="courseid_uniq" PREVIOUS="primary"/>
	<KEY NAME="courseid_uniq" TYPE="uniq" FIELDS="courseid" PREVIOUS="courseid"/>
	</KEYS>
	</TABLE>
	
The eportid column corresponds to the Elgg community id for a particular course; the courseid is the one that tracks the Moodle course.

Since our code already supports single sign-on, we just add to that to track whether an Elgg community needs to be created.  Let us reuse the signupredirect.php page and just add an extra variable that tells the system to create a corresponding community.  The significant section is as follows:

View full post

posted in

(photo by freeparking)
As part of Solution Grove's ongoing improvements to its Moodle-Elgg-LAMS integration demo site [http://www.solutiongrove.net], I was tasked to implement a one-to-one correspondence between Moodle courses and Elgg communities, using the e-portfolio block which I previously wrote about in these posts [1, 2]. What this means is that instead of the Moodle e-portfolio block fetching general activities from Elgg, it gathers posts, comments, and the names of newly shared files from the members of an Elgg community that corresponds to the Moodle class. This diverts a little from original behavior which required an Elgg object to be "favorited" before it showed up in the Moodle E-portfolio block.

The end result is a custom e-portfolio block that presents the following user experience:

View full post

posted in

(photo by ShareThis)

As part of Solution Grove Blog's facelift, we added links to "share" the content to different social web communities.  We already have the standard "Digg" and "del.icio.us" links in most of our client sites and we initially thought of putting this in our own blog.  However, while browsing other blogs, I came across a niftier implementation.  It's a free script provided by ShareThis.  All you have to do is 1) register, 2) customize your "Share This" link using their "button builder", and 3) copy the code to your page or site template.

View full post

posted in ,

(photo by oooh.oooh)

A few weeks ago, I posted how Solution Grove implemented Moodle to ELGG Single Sign-On.  That was only the first phase.  The client also needed it to seamlessly auto-create users on ELGG using credentials from the user's Moodle account.  We searched for a solution for this and found his ELGG-WebCT integration solution from Aperto Elearning Solutions.  Even though the other component was WebCT, it was still interesting to us as the concept is similar - the user is automatically created on the ELGG side.  Solution Grove emailed Aperto and their contact person was kind enough to point to us the Aperto download server, where the code can be downloaded, and added a few tips in the email as well.

View full post

posted in

(photo by oooh.oooh)
One of Solution Grove's clients, The Center for 21st Century Skills, needs to integrate Moodle, ELGG, and LAMS as an online learning environment for their Connecticut Career Choices (CCC) program.  A requirement of this implementation is to support single sign-on (SSO) between Moodle and ELGG.  This post summarizes the steps Solution Grove conducted to make it work on our test servers.

For this particular implementation, we will be working with the following software versions: Moodle 1.8.3 and  ELGG 0.8.1.

The assumption is that Moodle and ELGG were already properly installed and is confirmed to be working.

Here are the steps: 

View full post

posted in
XML
Recent Entries
Categories

AJAX (13)
CCK08 (1)
MEL (16)
LAMS (4)
Tech (13)



Authors




Archive




Notifications
Icon of envelope You may request notification for Solution Grove Blog.


Syndication Feed
XML


Recent Comments
  1. Eamon Costello: thanks
  2. Dave Bauer: Using clickpass
  3. Caroline Meeks: Should we put this on Solutiongrove.com, .net, .info??
  4. Jong-Dae Park: How about redirecting users to setup password for elgg
  5. Caroline Meeks: Great job!
  6. Mark Tomizawa: Bandwidth (the human kind)
  7. Hamilton Chua: ns_zlib on OpenACS
  8. Hamilton Chua: Thanks Mark
  9. Mark Aufflick: svnmerge.py saves you the pain
  10. Hamilton Chua: Mosio, Yahoo Answers on Mobile ?



Technorati Blogs