New list of user portal sessions - refs #2681

pull/2818/head
Alex Aragón 7 years ago
parent 6bd42c9d22
commit f4a37968de
  1. 17
      main/inc/lib/display.lib.php
  2. 2
      main/inc/lib/sessionmanager.lib.php
  3. 20
      main/inc/lib/userportal.lib.php
  4. 11
      main/template/default/user_portal/grid_session.html.twig
  5. 41
      main/template/default/user_portal/sessions.html.twig
  6. 22
      src/ThemeBundle/Resources/views/Macros/box.html.twig

@ -1731,14 +1731,12 @@ class Display
$session_info = $session_info[0];
$session = [];
$session['category_id'] = $session_info['session_category_id'];
$session['category'] = SessionManager::get_session_category($session_info['session_category_id']);
$session['title'] = $session_info['name'];
$session['id_coach'] = $session_info['id_coach'];
$session['coach'] = '';
$session['dates'] = '';
$session['coach_id'] = $session_info['id_coach'];
if (api_get_setting('show_session_coach') === 'true') {
$session['coach'] = get_lang('GeneralCoach').': '.api_get_person_name($session_info['firstname'], $session_info['lastname']);
$session['coach_name'] = api_get_person_name($session_info['firstname'], $session_info['lastname']);
}
if (($session_info['access_end_date'] == '0000-00-00 00:00:00' &&
@ -1755,21 +1753,16 @@ class Display
} else {
$dates = SessionManager::parseSessionDates($session_info, true);
$session['dates'] = $dates['access'];
if (api_get_setting('show_session_coach') === 'true') {
$session['coach'] = api_get_person_name(
$session_info['firstname'],
$session_info['lastname']
);
}
$active = $date_start <= $now && $date_end >= $now;
}
$session['active'] = $active;
$session['session_category_id'] = $session_info['session_category_id'];
$session['visibility'] = $session_info['visibility'];
$session['num_users'] = $session_info['nbr_users'];
$session['num_courses'] = $session_info['nbr_courses'];
$session['description'] = $session_info['description'];
$session['show_description'] = $session_info['show_description'];
$session['image'] = SessionManager::getSessionImage($session_info['id']);
$session['url'] = api_get_path(WEB_CODE_PATH).'session/index.php?session_id='.$session_info['id'];
$entityManager = Database::getManager();
$fieldValuesRepo = $entityManager->getRepository('ChamiloCoreBundle:ExtraFieldValues');

@ -3306,7 +3306,7 @@ class SessionManager
return $sessionImage;
} else {
$sessionImage = api_get_path(WEB_IMG_PATH)."session_default.png";
$sessionImage = api_get_path(WEB_PUBLIC_PATH)."img/session_default.png";
return $sessionImage;
}

@ -1678,9 +1678,12 @@ class IndexManager
$sessionParams[0]['show_actions'] = SessionManager::cantEditSession($session_id);
$sessionParams[0]['courses'] = $html_courses_session;
$sessionParams[0]['show_simple_session_info'] = $showSimpleSessionInfo;
$sessionParams[0]['coach_name'] = !empty($session_box['coach']) ? $session_box['coach'] : null;
$sessionParams[0]['coach_name'] = !empty($session_box['coach_name']) ? $session_box['coach_name'] : null;
$sessionParams[0]['is_old'] = $markAsOld;
$sessionParams[0]['is_future'] = $markAsFuture;
$sessionParams[0]['image'] = $session_box['image'];
$sessionParams[0]['description'] = $session_box['description'];
$sessionParams[0]['url'] = $session_box['url'];
if ($collapsable) {
$collapsableData = Sessionmanager::getCollapsableData(
@ -1701,19 +1704,16 @@ class IndexManager
);
}
$this->tpl->assign('session', $sessionParams);
$html_sessions .= $this->tpl->fetch(
$this->tpl->get_template('/user_portal/sessions.html.twig')
);
if ($viewGridCourses) {
$html_sessions .= $this->tpl->fetch(
$this->tpl->get_template('/user_portal/grid_session.tpl')
);
} else {
$html_sessions .= $this->tpl->fetch(
$this->tpl->get_template('user_portal/classic_session.tpl')
);
}
$sessionCount++;
}
}
}

@ -1,11 +1,15 @@
{% import '@ChamiloTheme/Macros/box.html.twig' as macro %}
{% autoescape false %}
{% set group_courses = 'view_grid_courses_grouped_categories_in_sessions'| api_get_configuration_value %}
{% macro course_block(course, show_category) %}
<div class="col-xs-12 col-sm-6 col-md-4">
<div class="col-xs-3 col-sm-3 col-md-3">
<div class="items items-sessions">
<div class="image">
<img src="{{ course.image }}" class="img-responsive">
<img src="{{ course.image }}" class="img-fluid">
{% if course.category != '' and show_category %}
<span class="category">{{ course.category }}</span>
<div class="cribbon"></div>
@ -119,8 +123,7 @@
{% for row in session %}
<div id="session-{{ item.id }}" class="session panel panel-default">
<div class="panel-heading">
<img id="session_img_{{ row.id }}" src="{{ "window_list.png"|icon(32) }}" width="32" height="32"
alt="{{ row.title }}" title="{{ row.title }}"/>
{{ row.title }}
{% if row.edit_actions != '' %}
<div class="float-right">

@ -0,0 +1,41 @@
{% import '@ChamiloTheme/Macros/box.html.twig' as macro %}
{% autoescape false %}
{% for item in session %}
{% set image %}
<img src="{{ item.image }}" class="img-fluid">
{% endset %}
{% set title %}
<h5 class="card-title">
<a href="{{ item.url }}" class="" title="{{ item.title }}">{{ item.title }}</a>
</h5>
<div class="card-date">{{ item.date }}</div>
{% if item.description %}
<div class="card-description">
{{ item.description }}
</div>
{% endif %}
{% if item.coach_name %}
<div class="card-coach">
{{ item.coach_name }}
</div>
{% endif %}
{% endset %}
{% set content %}
<div class="card-courses">
<ul class="list-group list-group-flush">
{% for row in item.courses %}
<li class="list-group-item">
<img src="{{ row.icon }}" width="32px">
<a href="{{ row.link }}">{{ row.name }}</a>
</li>
{% endfor %}
</ul>
</div>
{% endset %}
<div class="col-md-6">
{{ macro.box_session(item.id, title, content, image) }}
</div>
{% endfor %}
{% endautoescape %}

@ -278,4 +278,26 @@
</div>
</div>
{% endautoescape %}
{% endmacro %}
{% macro box_session(id, title, content, image) %}
{% autoescape false %}
<div id="session-{{ id }}" class="card card-session">
<div class="card-body">
<div class="card-info">
<div class="row">
<div class="col-md-5">
{{ image }}
</div>
<div class="col-md-7">
{{ title }}
</div>
</div>
</div>
<div class="card-list">
{{ content }}
</div>
</div>
</div>
{% endautoescape %}
{% endmacro %}
Loading…
Cancel
Save