Compare commits
9 Commits
70e2d49e7c
...
master
Author | SHA1 | Date | |
---|---|---|---|
461324fe3f | |||
594122ed07 | |||
c5333887cc | |||
629d77175a | |||
1a54b9a3f9 | |||
d0d8183f7a | |||
4f2fa1db4f | |||
75d935aa57 | |||
27e23fffaf |
1
debian/compat
vendored
1
debian/compat
vendored
@ -1 +0,0 @@
|
|||||||
7
|
|
24
debian/control
vendored
24
debian/control
vendored
@ -1,24 +0,0 @@
|
|||||||
Source: eole-ninegate
|
|
||||||
Section: web
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: Equipe Envole <eole@ac-dijon.fr>
|
|
||||||
Build-Depends: debhelper (>= 7.0.50)
|
|
||||||
Standards-Version: 3.8.4
|
|
||||||
Homepage: http://eole.orion.education.fr/diff/
|
|
||||||
Vcs-Git: http://dev-eole.ac-dijon.fr/git/ninegate
|
|
||||||
Vcs-Browser: http://dev-eole.ac-dijon.fr/projects/ninegate/repository
|
|
||||||
|
|
||||||
Package: ninegate-sso
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}, eole-sso
|
|
||||||
Description: Filtre SSO pour ninegate "EOLE".
|
|
||||||
|
|
||||||
Package: eole-ninegate
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}, eole-web (>= 2.6.1), ninegate-sso, eole-envole-dependances
|
|
||||||
Description: Eolisation de l'application ninegate.
|
|
||||||
|
|
||||||
Package: ninegate-apps
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}, eole-web-pkg (>= 2.6.1), envole-dependances-apps
|
|
||||||
Description: Sources pour ninegate "EOLE".
|
|
44
debian/copyright
vendored
44
debian/copyright
vendored
@ -1,44 +0,0 @@
|
|||||||
Format: http://dep.debian.net/deps/dep5
|
|
||||||
Upstream-Name: {PROJECT}
|
|
||||||
Source: {URL}
|
|
||||||
|
|
||||||
Files: *
|
|
||||||
Copyright: YEAR {UPSTREAM} {AUTHOR} <{MAIL}>
|
|
||||||
License: {UPSTREAM LICENSE}
|
|
||||||
|
|
||||||
Files: debian/*
|
|
||||||
Copyright: 2012 Équipe EOLE <eole@ac-dijon.fr>
|
|
||||||
License: CeCILL-2
|
|
||||||
|
|
||||||
License: {UPSTREAM LICENSE}
|
|
||||||
{TEXT OF THE LICENSE}
|
|
||||||
|
|
||||||
License: CeCILL-2
|
|
||||||
This software is governed by the CeCILL-2 license under French law and
|
|
||||||
abiding by the rules of distribution of free software. You can use,
|
|
||||||
modify and or redistribute the software under the terms of the CeCILL-2
|
|
||||||
license as circulated by CEA, CNRS and INRIA at the following URL
|
|
||||||
"http://www.cecill.info";.
|
|
||||||
.
|
|
||||||
As a counterpart to the access to the source code and rights to copy,
|
|
||||||
modify and redistribute granted by the license, users are provided only
|
|
||||||
with a limited warranty and the software's author, the holder of the
|
|
||||||
economic rights, and the successive licensors have only limited
|
|
||||||
liability.
|
|
||||||
.
|
|
||||||
In this respect, the user's attention is drawn to the risks associated
|
|
||||||
with loading, using, modifying and/or developing or reproducing the
|
|
||||||
software by the user in light of its specific status of free software,
|
|
||||||
that may mean that it is complicated to manipulate, and that also
|
|
||||||
therefore means that it is reserved for developers and experienced
|
|
||||||
professionals having in-depth computer knowledge. Users are therefore
|
|
||||||
encouraged to load and test the software's suitability as regards their
|
|
||||||
requirements in conditions enabling the security of their systems and/or
|
|
||||||
data to be ensured and, more generally, to use and operate it in the
|
|
||||||
same conditions as regards security.
|
|
||||||
.
|
|
||||||
The fact that you are presently reading this means that you have had
|
|
||||||
knowledge of the CeCILL-2 license and that you accept its terms.
|
|
||||||
.
|
|
||||||
On Eole systems, the complete text of the CeCILL-2 License can be found
|
|
||||||
in '/usr/share/common-licenses/CeCILL-2-en'.
|
|
1
debian/eole-ninegate.install
vendored
1
debian/eole-ninegate.install
vendored
@ -1 +0,0 @@
|
|||||||
usr/share/eole
|
|
3
debian/gbp.conf
vendored
3
debian/gbp.conf
vendored
@ -1,3 +0,0 @@
|
|||||||
# Set per distribution debian tag
|
|
||||||
[DEFAULT]
|
|
||||||
debian-tag = debian/envole/%(version)s
|
|
2
debian/ninegate-apps.install
vendored
2
debian/ninegate-apps.install
vendored
@ -1,2 +0,0 @@
|
|||||||
var/www/html
|
|
||||||
etc
|
|
1
debian/ninegate-sso.install
vendored
1
debian/ninegate-sso.install
vendored
@ -1 +0,0 @@
|
|||||||
usr/share/sso
|
|
8
debian/rules
vendored
8
debian/rules
vendored
@ -1,8 +0,0 @@
|
|||||||
#!/usr/bin/make -f
|
|
||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
# Uncomment this to turn on verbose mode.
|
|
||||||
#export DH_VERBOSE=1
|
|
||||||
|
|
||||||
%:
|
|
||||||
dh $@
|
|
1
debian/source/format
vendored
1
debian/source/format
vendored
@ -1 +0,0 @@
|
|||||||
3.0 (native)
|
|
@ -86,6 +86,20 @@ class SecurityController extends Controller
|
|||||||
if($masteridentity=="SSO") {
|
if($masteridentity=="SSO") {
|
||||||
if(empty($email)) $email = $username."@nomail.com";
|
if(empty($email)) $email = $username."@nomail.com";
|
||||||
|
|
||||||
|
// On s'assure qu'il n'y a pas déjà un utilisateur avec le même mail
|
||||||
|
$usermail = $em->getRepository('CadolesCoreBundle:User')->findOneBy(array("email"=>$email));
|
||||||
|
if($usermail) {
|
||||||
|
return $this->render('CadolesCoreBundle:Registration:info.html.twig', [
|
||||||
|
'useheader' => true,
|
||||||
|
'usemenu' => false,
|
||||||
|
'usesidebar' => false,
|
||||||
|
'infotitle' => "Première connexion",
|
||||||
|
'info' => "Votre compte ne peut être activé car votre adresse mel est déjà utilisée par un autre compte utilisateur.<br>Nous sommes désolés du désagrément et vous invitons à contacter un administrateur.",
|
||||||
|
'mode' => "error",
|
||||||
|
'redirectto' => "",
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
// Là c'est normal que potentiellement il n'existe pas il faut donc l'autogénérer
|
// Là c'est normal que potentiellement il n'existe pas il faut donc l'autogénérer
|
||||||
$user = new User();
|
$user = new User();
|
||||||
|
|
||||||
|
@ -180,6 +180,20 @@ class ScriptCommand extends Command
|
|||||||
$this->writeln("");
|
$this->writeln("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($this->container->getParameter('ldap_template')=="scribe") {
|
||||||
|
$script=$this->em->getRepository("CadolesCoreBundle:Script")->findOneBy(["name"=>"purgepageprofil"]);
|
||||||
|
if(!$script) {
|
||||||
|
$this->writeln("== SCRIPT = purgepageprofil");
|
||||||
|
$this->purgepageprofil();
|
||||||
|
|
||||||
|
$script=new Script();
|
||||||
|
$script->setName("purgepageprofil");
|
||||||
|
$this->em->persist($script);
|
||||||
|
$this->em->flush();
|
||||||
|
$this->writeln("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -434,6 +448,20 @@ class ScriptCommand extends Command
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function purgepageprofil() {
|
||||||
|
$page=$this->em->getRepository('CadolesPortalBundle:Page')->findOneBy(['name'=>'PROFIL - Enseignants']);
|
||||||
|
if($page) {
|
||||||
|
$this->em->remove($page);
|
||||||
|
$this->em->flush();
|
||||||
|
}
|
||||||
|
|
||||||
|
$page=$this->em->getRepository('CadolesPortalBundle:Page')->findOneBy(['name'=>'PROFIL - Administratifs']);
|
||||||
|
if($page) {
|
||||||
|
$this->em->remove($page);
|
||||||
|
$this->em->flush();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -128,7 +128,7 @@ class SynchroCommand extends Command
|
|||||||
$ldapfilter="(|(&(uid=*)(ENTPersonProfils=enseignant))(&(uid=*)(typeadmin=0))(&(uid=*)(typeadmin=2)))";
|
$ldapfilter="(|(&(uid=*)(ENTPersonProfils=enseignant))(&(uid=*)(typeadmin=0))(&(uid=*)(typeadmin=2)))";
|
||||||
$label="PROFIL - Enseignants";
|
$label="PROFIL - Enseignants";
|
||||||
$this->writeln(" - $label");
|
$this->writeln(" - $label");
|
||||||
if(!$simulate) $this->addmodGroup($label,$ldapfilter,$scribe_group);
|
if(!$simulate) $this->addmodGroup($label,$ldapfilter,false);
|
||||||
|
|
||||||
// Responsables
|
// Responsables
|
||||||
$ldapfilter="(&(uid=*)(ENTPersonProfils=responsable))";
|
$ldapfilter="(&(uid=*)(ENTPersonProfils=responsable))";
|
||||||
@ -140,7 +140,20 @@ class SynchroCommand extends Command
|
|||||||
$ldapfilter="(&(uid=*)(ENTPersonProfils=administratif))";
|
$ldapfilter="(&(uid=*)(ENTPersonProfils=administratif))";
|
||||||
$label="PROFIL - Administratifs";
|
$label="PROFIL - Administratifs";
|
||||||
$this->writeln(" - $label");
|
$this->writeln(" - $label");
|
||||||
if(!$simulate) $this->addmodGroup($label,$ldapfilter,$scribe_group);
|
if(!$simulate) $this->addmodGroup($label,$ldapfilter,false);
|
||||||
|
|
||||||
|
// Niveaux
|
||||||
|
$this->writeln('');
|
||||||
|
$this->writeln('== NIVEAUX ==========================================');
|
||||||
|
$results = $this->ldap->search("type=Niveau", ['cn','description','gidNumber'], $this->ldap_basedn);
|
||||||
|
foreach($results as $result) {
|
||||||
|
$cn=$result["cn"];
|
||||||
|
$ldapfilter="(&(type=Niveau)(cn=$cn))";
|
||||||
|
|
||||||
|
$label="NIVEAU - ".$result["cn"];
|
||||||
|
$this->writeln(" - $label");
|
||||||
|
if(!$simulate) $this->addmodGroup($label,$ldapfilter,false);
|
||||||
|
}
|
||||||
|
|
||||||
// Classes
|
// Classes
|
||||||
$this->writeln('');
|
$this->writeln('');
|
||||||
@ -155,6 +168,32 @@ class SynchroCommand extends Command
|
|||||||
if(!$simulate) $this->addmodGroup($label,$ldapfilter,$scribe_group);
|
if(!$simulate) $this->addmodGroup($label,$ldapfilter,$scribe_group);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Elèves des Classes
|
||||||
|
$this->writeln('');
|
||||||
|
$this->writeln('== ELEVES DES CLASSES ==========================================');
|
||||||
|
$results = $this->ldap->search("type=Classe", ['cn','description','gidNumber'], $this->ldap_basedn);
|
||||||
|
foreach($results as $result) {
|
||||||
|
$cn=$result["cn"];
|
||||||
|
$ldapfilter="(&(type=Classe)(cn=$cn))";
|
||||||
|
|
||||||
|
$label="ELEVES - ".$result["cn"];
|
||||||
|
$this->writeln(" - $label");
|
||||||
|
if(!$simulate) $this->addmodGroup($label,$ldapfilter,false);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Professeurs des Classes
|
||||||
|
$this->writeln('');
|
||||||
|
$this->writeln('== PROFESSEURS DES CLASSES ==========================================');
|
||||||
|
$results = $this->ldap->search("type=Classe", ['cn','description','gidNumber'], $this->ldap_basedn);
|
||||||
|
foreach($results as $result) {
|
||||||
|
$cn=$result["cn"];
|
||||||
|
$ldapfilter="(|(&(type=Equipe)(cn=profs-$cn))(&(ENTPersonProfils=Administratif)(divcod=$cn)))";
|
||||||
|
|
||||||
|
$label="PROFESSEURS - ".$result["cn"];
|
||||||
|
$this->writeln(" - $label");
|
||||||
|
if(!$simulate) $this->addmodGroup($label,$ldapfilter,false);
|
||||||
|
}
|
||||||
|
|
||||||
// Options
|
// Options
|
||||||
$this->writeln('');
|
$this->writeln('');
|
||||||
$this->writeln('== OPTIONS ==========================================');
|
$this->writeln('== OPTIONS ==========================================');
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
Binary file not shown.
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
@ -1,13 +1,25 @@
|
|||||||
{% extends '@CadolesCore/base.html.twig' %}
|
{% extends '@CadolesCore/base.html.twig' %}
|
||||||
|
|
||||||
{% block pagewrapper %}
|
{% block pagewrapper %}
|
||||||
<h1 class="page-header">Inscriptions</h1>
|
<h1 class="page-header">{%if infotitle is defined%}{{infotitle}}{%else%}Inscriptions{%endif%}</h1>
|
||||||
|
|
||||||
<div style="padding-top:50px;max-width: 1000px; margin:auto; font-size:18px;">
|
<div style="padding-top:50px;max-width: 1000px; margin:auto; font-size:18px;">
|
||||||
<div class='alert alert-{{ mode }}' style='margin: 5px 0px'>
|
<div class='alert alert-{{ mode }}' style='margin: 5px 0px'>
|
||||||
{% autoescape %}
|
{% autoescape %}
|
||||||
<p>{{ info|raw }}</p>
|
<p>{{ info|raw }}</p>
|
||||||
{% endautoescape %}
|
{% endautoescape %}
|
||||||
|
|
||||||
|
{% if mode=="error" %}
|
||||||
|
{% if mode_auth == "SAML" %}
|
||||||
|
<a class="btn btn-primary" href="{{ path("lightsaml_sp.logout") }}">Déconnexion</a>
|
||||||
|
{% elseif mode_auth == "CAS" %}
|
||||||
|
<a class="btn btn-primary" href="{{ path("cas_sp.logout") }}">Déconnexion</a>
|
||||||
|
{% elseif mode_auth == "SQL" %}
|
||||||
|
<a class="btn btn-primary" href="{{ path("cadoles_core_logout") }}">Déconnexion</a>
|
||||||
|
{% elseif mode_auth == "LDAP" %}
|
||||||
|
<a class="btn btn-primary" href="{{ path("cadoles_core_ldap_logout") }}">Déconnexion</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -65,7 +65,11 @@ class ItemController extends Controller
|
|||||||
{
|
{
|
||||||
// Initialisation de l'enregistrement
|
// Initialisation de l'enregistrement
|
||||||
$data = new Item();
|
$data = new Item();
|
||||||
|
if($this->GetParameter("activate_widsonde")) {
|
||||||
|
$data->setClicksonde(true);
|
||||||
|
$data->setClicksondeservice("PAGE_ENT");
|
||||||
|
}
|
||||||
|
|
||||||
// Création du formulaire
|
// Création du formulaire
|
||||||
$form = $this->createForm(ItemType::class,$data,array(
|
$form = $this->createForm(ItemType::class,$data,array(
|
||||||
"mode" => "submit",
|
"mode" => "submit",
|
||||||
@ -124,7 +128,7 @@ class ItemController extends Controller
|
|||||||
"labelniveau01" => $this->GetParameter("labelsniveau01"),
|
"labelniveau01" => $this->GetParameter("labelsniveau01"),
|
||||||
"ssosynchroitem" => $this->GetParameter("ssosynchroitem"),
|
"ssosynchroitem" => $this->GetParameter("ssosynchroitem"),
|
||||||
"user_attr_cas_item" => $this->GetParameter("user_attr_cas_item"),
|
"user_attr_cas_item" => $this->GetParameter("user_attr_cas_item"),
|
||||||
"activate_widsonde" => $this->GetParameter("activate_widsonde"),
|
"activate_widsonde" => ($this->GetParameter("activate_widsonde")&&$data->getId()>0),
|
||||||
));
|
));
|
||||||
|
|
||||||
// Récupération des data du formulaire
|
// Récupération des data du formulaire
|
||||||
@ -206,6 +210,26 @@ class ItemController extends Controller
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function forceorderAction(Request $request)
|
||||||
|
{
|
||||||
|
$em = $this->getDoctrine()->getManager();
|
||||||
|
$categorys=$em->getRepository("CadolesPortalBundle:Itemcategory")->findAll();
|
||||||
|
|
||||||
|
foreach($categorys as $category) {
|
||||||
|
$i=0;
|
||||||
|
$items=$em->getRepository("CadolesPortalBundle:Item")->findBy(["itemcategory"=>$category],["title"=>"ASC"]);
|
||||||
|
foreach($items as $item) {
|
||||||
|
$i++;
|
||||||
|
$item->setRowOrder($i);
|
||||||
|
$em->flush();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Retour à la liste
|
||||||
|
return $this->redirectToRoute($this->labelroute);
|
||||||
|
}
|
||||||
|
|
||||||
protected function getDatas()
|
protected function getDatas()
|
||||||
{
|
{
|
||||||
$em = $this->getDoctrine()->getManager();
|
$em = $this->getDoctrine()->getManager();
|
||||||
|
@ -150,14 +150,17 @@ class ItemType extends AbstractType
|
|||||||
|
|
||||||
if($options["activate_widsonde"]) {
|
if($options["activate_widsonde"]) {
|
||||||
$builder
|
$builder
|
||||||
|
/*
|
||||||
->add('clicksonde', CheckboxType::class, [
|
->add('clicksonde', CheckboxType::class, [
|
||||||
"label" => "Exécuter une sonde statistique sur le click",
|
"label" => "Exécuter une sonde statistique sur le clic",
|
||||||
"required" => false
|
"required" => false
|
||||||
])
|
])
|
||||||
|
*/
|
||||||
|
|
||||||
->add('clicksondeservice', ChoiceType::class, [
|
->add('clicksondeservice', ChoiceType::class, [
|
||||||
"label" => 'Type de Service associé à la sonde',
|
"label" => 'Type de Service associé à la sonde',
|
||||||
"placeholder" => 'Selectionner un service',
|
"label_attr" => array("style" => "display:inline"),
|
||||||
|
"placeholder" => 'Sélectionner un service',
|
||||||
"required" => false,
|
"required" => false,
|
||||||
"choices" => [
|
"choices" => [
|
||||||
"ACCUEIL" => "ACCUEIL",
|
"ACCUEIL" => "ACCUEIL",
|
||||||
|
@ -7,7 +7,7 @@ use Doctrine\Common\Collections\ArrayCollection;
|
|||||||
|
|
||||||
class ItemRepository extends EntityRepository
|
class ItemRepository extends EntityRepository
|
||||||
{
|
{
|
||||||
public function getUserItems($user,&$bookmarks,&$itemsordered,&$itemcategorys,$iditemcategory=null,$ssoitems,$withbookmark=1,$fgessential=false) {
|
public function getUserItems($user,&$bookmarks,&$itemsordered,&$itemcategorys,$iditemcategory=null,$ssoitems=[],$withbookmark=1,$fgessential=false) {
|
||||||
// Profilage
|
// Profilage
|
||||||
$roles=($user?$user->getRoles():["ROLE_ANONYME"]);
|
$roles=($user?$user->getRoles():["ROLE_ANONYME"]);
|
||||||
$groups=($user?$user->getGroups():[]);
|
$groups=($user?$user->getGroups():[]);
|
||||||
@ -114,26 +114,28 @@ class ItemRepository extends EntityRepository
|
|||||||
|
|
||||||
// Récupération des items par ssoitem
|
// Récupération des items par ssoitem
|
||||||
$itemsssoitems=[];
|
$itemsssoitems=[];
|
||||||
foreach($ssoitems as $ssoitem) {
|
if(is_array($ssoitems)) {
|
||||||
$qb = $this->getEntityManager()->createQueryBuilder();
|
foreach($ssoitems as $ssoitem) {
|
||||||
$qb->select('item')
|
$qb = $this->getEntityManager()->createQueryBuilder();
|
||||||
->from("CadolesPortalBundle:Item", 'item')
|
$qb->select('item')
|
||||||
->where("item.ssoitem=:ssoitem ")
|
->from("CadolesPortalBundle:Item", 'item')
|
||||||
->setParameter("ssoitem",$ssoitem);
|
->where("item.ssoitem=:ssoitem ")
|
||||||
|
->setParameter("ssoitem",$ssoitem);
|
||||||
if($iditemcategory && $itemcategoryfilter) {
|
|
||||||
$qb->andWhere("item.itemcategory=:itemcategory")
|
if($iditemcategory && $itemcategoryfilter) {
|
||||||
->setParameter("itemcategory",$itemcategoryfilter);
|
$qb->andWhere("item.itemcategory=:itemcategory")
|
||||||
}
|
->setParameter("itemcategory",$itemcategoryfilter);
|
||||||
|
|
||||||
$itemsssoitems=$qb->getQuery()->getResult();
|
|
||||||
foreach($itemsssoitems as $itemssoitem) {
|
|
||||||
if(!$bookmarksitems->contains($itemssoitem) && !$items->contains($itemssoitem)) {
|
|
||||||
if(!$fgessential || ($fgessential && $itemssoitem->getEssential()))
|
|
||||||
$items->add($itemssoitem);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!$itemalls->contains($itemssoitem)) $itemalls->add($itemssoitem);
|
$itemsssoitems=$qb->getQuery()->getResult();
|
||||||
|
foreach($itemsssoitems as $itemssoitem) {
|
||||||
|
if(!$bookmarksitems->contains($itemssoitem) && !$items->contains($itemssoitem)) {
|
||||||
|
if(!$fgessential || ($fgessential && $itemssoitem->getEssential()))
|
||||||
|
$items->add($itemssoitem);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!$itemalls->contains($itemssoitem)) $itemalls->add($itemssoitem);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,6 +117,10 @@ cadoles_portal_config_item_order:
|
|||||||
path: /config/item/order
|
path: /config/item/order
|
||||||
defaults: { _controller: CadolesPortalBundle:Item:order }
|
defaults: { _controller: CadolesPortalBundle:Item:order }
|
||||||
|
|
||||||
|
cadoles_portal_config_item_forceorder:
|
||||||
|
path: /config/item/forceorder
|
||||||
|
defaults: { _controller: CadolesPortalBundle:Item:forceorder }
|
||||||
|
|
||||||
cadoles_portal_config_ajax_item_seleclist:
|
cadoles_portal_config_ajax_item_seleclist:
|
||||||
path: /config/item/ajax/selectlist
|
path: /config/item/ajax/selectlist
|
||||||
defaults: { _controller: CadolesPortalBundle:Item:ajaxseleclist }
|
defaults: { _controller: CadolesPortalBundle:Item:ajaxseleclist }
|
||||||
|
@ -0,0 +1,138 @@
|
|||||||
|
<table class="table table-striped table-bordered table-hover dataTable no-footer">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<td>Libellé du service</td>
|
||||||
|
<td>Description</td>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>ACCUEIL</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>ACTUALITES</td>
|
||||||
|
<td>Création ou publication d’actualités, publiques ou privées. Le marquage de ce service ne comprend pas l’accès en consultation à ces actualités, qu’elles soient publiques ou privées</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>CAHIER_TEXTES</td>
|
||||||
|
<td>Description du travail fait en classe par séquence, des points du programme abordés, des modalités pédagogiques utilisées…<br><br>Programmation du travail à faire en dehors de la classe (Devoirs).</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>CAHIER_LIAISON</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>COURRIER_ELECTRONIQUE</td>
|
||||||
|
<td>Courrier électronique, Carnet d'adresses, Annuaire, Liste de diffusion.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>MESSAGERIE_INSTANTANEE</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>VISIOCONFERENCE</td>
|
||||||
|
<td>Services associés à l’organisation et l’animation de visioconférences. </td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>STOCKAGE_PARTAGE</td>
|
||||||
|
<td>Chargement, stockage de fichiers pouvant ou non être partagés avec d’autres utilisateurs</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>PRODUCTION_COLLABORATIVE</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>DOCUMENTATION_CDI</td>
|
||||||
|
<td>Accès au catalogue de ressources proposées par le CDI, consultation et gestion des ressources, prêts, …</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>PARCOURS_PEDAGOGIQUE</td>
|
||||||
|
<td>Utilisation des outils permettant la production de nouvelles ressources pédagogiques (LMS).</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESERVATION_SALLES_MATERIELS</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>SERVICE_COLLECTIVITE</td>
|
||||||
|
<td>Utilisation des services proposés par les collectivités aux établissements ou aux familles (Exemples : cantine, transports, bourses, …).</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>SERVICES_VIE_SCOLAIRE</td>
|
||||||
|
<td>Accès à des logiciels de vie scolaire ne permettant pas de marquer finement le type de services utilisés.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>GESTION_TEMPS</td>
|
||||||
|
<td>Gestion de l’agenda et des tâches personnelles ou de groupe. Visualisation de l’emploi du temps.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>ABSENCES</td>
|
||||||
|
<td>Saisie ou visualisation des absences.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>GESTION_COMPETENCES</td>
|
||||||
|
<td>Mise à jour, validation ou visualisation de compétences.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>NOTES</td>
|
||||||
|
<td>Saisie ou visualisation des notes (relevés de notes, bulletins).</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>MANUEL_NUMERIQUE</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESSOURCE_MULTIMEDIA</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESSOURCE_ORIENTATION</td>
|
||||||
|
<td>Accès aux contenus et services proposés dans le cadre des actions d’orientation.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESSOURCE_PRODUCTION</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESSOURCE_ACCOMPAGNEMENT_ENTRAINEMENT</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESSOURCE_REFERENCE_DICTIONNAIRE</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>RESSOURCE_DOCUMENTAIRE</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>PAGE_ENT</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
@ -67,11 +67,10 @@
|
|||||||
{{ form_row(form.ssoitem) }}
|
{{ form_row(form.ssoitem) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if form.clicksonde is defined %}
|
{% if form.clicksondeservice is defined %}
|
||||||
{{ form_row(form.clicksonde) }}
|
{{ form_label(form.clicksondeservice) }}
|
||||||
<div id="divclicksondeservice">
|
<a id="dnmainfo" type="button" class="btn btn-link" data-toggle="modal" data-target="#dnma" style="float:right"><i class="fa fa-info"></i></a>
|
||||||
{{ form_row(form.clicksondeservice) }}
|
{{ form_widget(form.clicksondeservice) }}<br>
|
||||||
</div>
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{{ form_row(form.color) }}
|
{{ form_row(form.color) }}
|
||||||
@ -90,6 +89,23 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{ form_end(form) }}
|
{{ form_end(form) }}
|
||||||
|
|
||||||
|
<div id="dnma" class="modal fade bs-item-modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-lg">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||||
|
<h4 class="modal-title">Services</h4>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="modal-body">
|
||||||
|
{{ include('@CadolesPortal/Item/dnma.html.twig') }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block localjavascript %}
|
{% block localjavascript %}
|
||||||
@ -133,13 +149,5 @@
|
|||||||
if($("#item_target").val()=="frame") {
|
if($("#item_target").val()=="frame") {
|
||||||
$("#divhelp").show();
|
$("#divhelp").show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if($("#item_clicksonde").is(':checked')) {
|
|
||||||
$("#divclicksondeservice").show();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$("#divclicksondeservice").hide();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
<p>
|
<p>
|
||||||
<a href="{{ path('cadoles_portal_config_item_submit') }}" class="btn btn-success">Ajouter un Item</a>
|
<a href="{{ path('cadoles_portal_config_item_submit') }}" class="btn btn-success">Ajouter un Item</a>
|
||||||
<a href="{{ path('cadoles_portal_config_itemcategory_submit') }}" class="btn btn-success">Ajouter une Categorie</a>
|
<a href="{{ path('cadoles_portal_config_itemcategory_submit') }}" class="btn btn-success">Ajouter une Categorie</a>
|
||||||
|
|
||||||
|
<a href="{{ path('cadoles_portal_config_item_forceorder') }}" class="btn btn-success pull-right">Ordonner les items en alpha</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class="category-list">
|
<div class="category-list">
|
||||||
|
Reference in New Issue
Block a user