diff --git a/mod/url/lib.php b/mod/url/lib.php
index f79913b..bff69ef 100644
--- a/mod/url/lib.php
+++ b/mod/url/lib.php
@@ -262,7 +262,7 @@ function url_get_coursemodule_info($coursemodule) {
         return NULL;
     }
 
-    $info = new stdClass();
+    $info = new cached_cm_info();
     $info->name = $url->name;
 
     //note: there should be a way to differentiate links from normal resources
@@ -276,15 +276,15 @@ function url_get_coursemodule_info($coursemodule) {
         $width  = empty($options['popupwidth'])  ? 620 : $options['popupwidth'];
         $height = empty($options['popupheight']) ? 450 : $options['popupheight'];
         $wh = "width=$width,height=$height,toolbar=no,location=no,menubar=no,copyhistory=no,status=no,directories=no,scrollbars=yes,resizable=yes";
-        $info->extra = "onclick=\"window.open('$fullurl', '', '$wh'); return false;\"";
+        $info->onclick = "window.open('$fullurl', '', '$wh'); return false;";
 
     } else if ($display == RESOURCELIB_DISPLAY_NEW) {
         $fullurl = "$CFG->wwwroot/mod/url/view.php?id=$coursemodule->id&amp;redirect=1";
-        $info->extra = "onclick=\"window.open('$fullurl'); return false;\"";
+        $info->onclick = "window.open('$fullurl'); return false;";
 
     } else if ($display == RESOURCELIB_DISPLAY_OPEN) {
         $fullurl = "$CFG->wwwroot/mod/url/view.php?id=$coursemodule->id&amp;redirect=1";
-        $info->extra = "onclick=\"window.location.href ='$fullurl';return false;\"";
+        $info->onclick = "window.location.href ='$fullurl';return false;";
     }
 
     return $info;
