'); $passwd = parse_config($config, ''); $host = parse_config($config, ''); $name = parse_config($config, ''); if ($host == null) { $host = "localhost"; } $instance = new DbConn(); $retval = $instance->init_conn($user, $passwd, $host, $name); if (!$retval) return null; } return $instance; } } class BoltUser { static $cache; static function lookup_userid($id) { $db = BoincDb::get(); return $db->lookup('bolt_user', 'BoltUser', "user_id=$id"); } static function insert($clause) { $db = BoltDb::get(); return $db->insert('bolt_user', $clause); } static function lookup(&$user) { if (!$user) return; if (isset($user->bolt)) return; if (isset(self::$cache[$user->id])) { $bolt = self::$cache[$user->id]; } else { $bolt = self::lookup_userid($user->id); if (!$bolt) { self::insert("(user_id) values ($user->id)"); $bolt = self::lookup_userid($user->id); } self::$cache[$user->id] = $bolt; } $user->bolt = $bolt; } function update($clause) { $db = BoltDb::get(); $clause = "$clause where user_id=$this->user_id"; return $db->update_aux('bolt_user', $clause); } } class BoltCourse { static function insert($clause) { $db = BoltDb::get(); return $db->insert('bolt_course', $clause); } static function lookup_id($id) { $db = BoltDb::get(); return $db->lookup_id($id, 'bolt_course', 'BoltCourse'); } static function enum() { $db = BoltDb::get(); return $db->enum('bolt_course', 'BoltCourse'); } } class BoltEnrollment { function insert($clause) { $db = BoltDb::get(); return $db->insert('bolt_enrollment', $clause); } function lookup($user_id, $course_id) { $db = BoltDb::get(); return $db->lookup('bolt_enrollment', 'BoltEnrollment', "user_id=$user_id and course_id=$course_id"); } function update($clause) { $db = BoltDb::get(); $db->update_aux('bolt_enrollment', "$clause where user_id=$this->user_id and course_id=$this->course_id"); } } class BoltView { static function insert($clause) { $db = BoltDb::get(); $ret = $db->insert('bolt_view', $clause); if (!$ret) return null; return $db->insert_id(); } static function lookup_id($id) { $db = BoltDb::get(); return $db->lookup_id($id, 'bolt_view', 'BoltView'); } function update($clause) { $db = BoltDb::get(); $db->update($this, 'bolt_view', $clause); } } ?>