Пример #1
0
function portal_get_activity_info_from_diy_id($diy_id)
{
    // this function returns the information about an activity from its DIY ID
    $activity_info = array();
    // first look for it in the activities table.
    $conditions = array();
    $params = array();
    $conditions[] = 'diy_identifier = ?';
    $params[] = $diy_id;
    $results = portal_get_activities($conditions, $params);
    if (count($results) > 0) {
        $activity_info = $results[0];
    } else {
        $conditions2 = array();
        $params2 = array();
        $conditions2[] = 'ida.id = ?';
        $params2[] = $diy_id;
        $results2 = portal_get_diy_activities_from_db($conditions2, $params2);
        if (count($results2) > 0) {
            $activity_info = $results2[0];
        }
    }
    if (count($activity_info) > 0) {
        $ai = portal_prepare_activity_list(array($activity_info));
        $activity_info = $ai[0];
    }
    return $activity_info;
}
Пример #2
0
$school_id = $_SESSION['portal']['member_school'];
$classes = portal_get_student_classes($_SESSION['portal']['member_id']);
$class_id = $classes[0];
$class_info = portal_get_class_info($class_id);
$page_title = $class_info['class_name'];
$student_id = $_SESSION['portal']['member_id'];
$usage = portal_get_diy_activity_usage_from_db($student_id);
echo portal_generate_student_activity_list($student_id, $class_id, $usage);
$teacher_info = portal_get_member_info($class_info['class_teacher']);
$conditions = array();
$params = array();
//$conditions[] = 'login = ?';
//$params[] = $teacher_info['member_username'];
$conditions[] = 'ida.id IN ("' . implode('","', $class_info['diy_activities']) . '")';
$options = array('no restrict');
$activities = portal_get_diy_activities_from_db($conditions, $params, $options);
$list = '';
for ($i = 0; $i < count($activities); $i++) {
    $activity_options = '';
    $activity_used = '';
    if ($activities[$i]['diy_identifier'] != '') {
        $diy_id = $activities[$i]['diy_identifier'];
        $info = '<a href="#" onclick="toggle_block_element(\'activity-description-' . $activities[$i]['activity_id'] . '\'); return false;" title="View activity description">' . portal_icon('info') . '</a>';
        $run = '<a href="/diy/run/' . $diy_id . '/" title="Run this activity">' . portal_icon('run') . '</a>';
        $activity_options = '
		' . $info . '
		' . $run . '
		';
        if (in_array($diy_id, $usage)) {
            $activity_used = portal_icon('work');
        }
Пример #3
0
function portal_get_prepared_diy_activities($member_id)
{
    if ($GLOBALS['portal_config']['use_diy_activities'] == 'no') {
        return array();
    }
    $member_info = portal_get_member_info($member_id);
    // get my students
    $query = 'SELECT member_id FROM portal_class_students WHERE class_id IN ("' . implode('","', $member_info['classes']['teacher']) . '")';
    $params = array();
    $results = mystery_select_query($query, $params, 'portal_dbh');
    $my_students = mystery_convert_results_to_simple_array($results, 'member_id');
    $query = 'SELECT member_username, member_id, member_school,member_source,school_district AS member_district FROM portal_members AS pm LEFT JOIN portal_schools AS ps ON pm.member_school=ps.school_id LEFT JOIN portal_districts AS pd ON ps.school_district=pd.district_id';
    $params = array();
    $results = mystery_select_query($query, $params, 'portal_dbh');
    // prepare the member usernames to be an associative_array
    $total_members = count($results);
    $subject_keys = array();
    for ($i = 0; $i < $total_members; $i++) {
        $this_username = $results[$i]['member_username'];
        $this_member_id = $results[$i]['member_id'];
        $this_school = $results[$i]['member_school'];
        $this_district = $results[$i]['member_district'];
        $this_source = $results[$i]['member_source'];
        if ($this_username == $member_info['member_username']) {
            $subject_keys[$this_username] = 'My Activities';
        } elseif (in_array($this_member_id, $my_students)) {
            $subject_keys[$this_username] = 'My Student Activities';
        } elseif ($this_school == $_SESSION['portal']['member_school']) {
            $subject_keys[$this_username] = 'My School Activities';
        } elseif ($this_district == $_SESSION['portal']['member_district']) {
            $subject_keys[$this_username] = 'My District Activities';
        } elseif ($this_source == $_SESSION['portal']['member_source'] && trim($this_source) != '') {
            $subject_keys[$this_username] = 'My Event Activities';
        } else {
            $subject_keys[$this_username] = 'Other Activities';
        }
    }
    $new_activities = array();
    // don't show the pre-existing ids
    $conditions = array();
    $conditions[] = 'ida.id NOT IN ("' . implode('","', portal_get_diy_ids_to_exclude()) . '")';
    $activities = portal_get_diy_activities_from_db($conditions);
    //mystery_debug_query('rails_dbh');
    $total_activities = count($activities);
    for ($i = 0; $i < $total_activities; $i++) {
        if (!isset($subject_keys[$activities[$i]['author']])) {
            $subject_keys[$activities[$i]['author']] = 'Other Activities';
        }
        $activities[$i]['subject_name'] = $subject_keys[$activities[$i]['author']];
        if (!$activities[$i]['public']) {
            $activities[$i]['activity_name'] .= ' (private)';
        }
    }
    // now I need to re-sort the array
    $activities = portal_record_sort($activities, array('subject_name', 'unit_name', 'activity_name'));
    return $activities;
}