Example #1
0
 /**
  * Set all of the the link-level settings.
  *
  * @param $keyvals An array of key/value pairs that is serialized
  * in JSON and stored.  If this is an empty array, this effectively
  * empties out all the settings.
  */
 public static function linkSetAll($keyvals)
 {
     global $CFG, $PDOX, $LINK;
     global $settingsDebugArray;
     $settingsDebugArray = array();
     $json = json_encode($keyvals);
     $q = $PDOX->queryDie("UPDATE {$CFG->dbprefix}lti_link \n                SET settings = :SET WHERE link_id = :LID", array(":SET" => $json, ":LID" => $LINK->id));
     $settingsDebugArray[] = array(count($keyvals) . " settings updated link_id=" . $LINK->id);
     if (isset($_SESSION['lti'])) {
         $_SESSION['lti']['link_settings'] = $json;
         unset($_SESSION['lti']['link_settings_merge']);
     }
     $settings_url = LTIX::sessionGet('link_settings_url', false);
     if ($settings_url === false) {
         return;
     }
     $settingsDebugArray[] = array("Sending settings to " . $settings_url);
     $retval = LTIX::settingsSend($keyvals, $settings_url, $settingsDebugArray);
 }