ninegate/src/ninegate-1.0/src/Cadoles/PortalBundle/Command/InitDataCommand.php

831 lines
41 KiB
PHP

<?php
namespace Cadoles\PortalBundle\Command;
use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Finder\Finder;
use Symfony\Component\HttpKernel\KernelInterface;
use Doctrine\DBAL\Connection as DBALConnection;
use Doctrine\ORM\em;
use Doctrine\ORM\Mapping\ClassMetadata;
use Doctrine\ORM\Id\AssignedGenerator;
use Cadoles\PortalBundle\Entity\Icon;
use Cadoles\PortalBundle\Entity\Pagecategory;
use Cadoles\PortalBundle\Entity\Page;
use Cadoles\PortalBundle\Entity\PageWidget;
use Cadoles\PortalBundle\Entity\Widget;
use Cadoles\PortalBundle\Entity\Appexternal;
use Cadoles\PortalBundle\Entity\Flux;
use Cadoles\PortalBundle\Entity\Itemcategory;
use Cadoles\PortalBundle\Entity\Item;
class InitDataCommand extends ContainerAwareCommand
{
protected function configure()
{
$this
->setName('Portal:InitData')
->setDescription('Init Data for Portal')
->setHelp('This command Init Data for Portal')
;
}
protected function execute(InputInterface $input, OutputInterface $output)
{
$em = $this->getContainer()->get('doctrine')->getEntityManager();
$alias =$this->getContainer()->getParameter('alias');
$activate_widlimesurvey = $this->getContainer()->getParameter('activate_widlimesurvey');
$activate_widmoodle = $this->getContainer()->getParameter('activate_widmoodle');
$activate_widnextcloud = $this->getContainer()->getParameter('activate_widnextcloud');
$activate_widopensondage = $this->getContainer()->getParameter('activate_widopensondage');
$activate_widpiwik = $this->getContainer()->getParameter('activate_widpiwik');
$activate_widwordpress = $this->getContainer()->getParameter('activate_widwordpress');
$activate_websocket = $this->getContainer()->getParameter('websocket_activate');
$output->writeln('PORTAL = Default Data');
// afin de forcer les ID sur certaines entités
$metadata = $em->getClassMetaData('CadolesPortalBundle:Flux');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
$metadata = $em->getClassMetaData('CadolesPortalBundle:Pagecategory');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
$metadata = $em->getClassMetaData('CadolesPortalBundle:Page');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
$metadata = $em->getClassMetaData('CadolesPortalBundle:Pagewidget');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
$metadata = $em->getClassMetaData('CadolesPortalBundle:Itemcategory');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
$metadata = $em->getClassMetaData('CadolesPortalBundle:Item');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
$metadata = $em->getClassMetaData('CadolesPortalBundle:Widget');
$metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
$metadata->setIdGenerator(new AssignedGenerator());
//== APPEXTERNAL =========================================================================================================================================
$output->writeln(' > Appexternal');
$entity = $em->getRepository('CadolesPortalBundle:Appexternal')->findoneby(["name"=>"Limesurvey"]);
if(!$entity&&$activate_widlimesurvey) {
$entity=new Appexternal;
$entity->setName("Limesurvey");
$em->persist($entity);
$em->flush();
}
elseif($entity&&!$activate_widlimesurvey) {
$em->remove($entity);
$em->flush();
}
$entity = $em->getRepository('CadolesPortalBundle:Appexternal')->findoneby(["name"=>"Moodle"]);
if(!$entity&&$activate_widmoodle) {
$entity=new Appexternal;
$entity->setName("Moodle");
$em->persist($entity);
$em->flush();
}
elseif($entity&&!$activate_widmoodle) {
$em->remove($entity);
$em->flush();
}
//== ICONE ===============================================================================================================================================
$output->writeln(' > Creation Icons');
$finder = new Finder();
$finder->in('web/uploads/icon/');
$finder->name('icon_*');
foreach ($finder as $file) {
$image="uploads/icon/".$file->getRelativePathname();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>$image]);
if(!$entityicon) {
$entityicon = new Icon;
$entityicon->setLabel($image);
$em->persist($entityicon);
}
}
$em->flush();
//== FLUX ================================================================================================================================================
$output->writeln(' > Creation Flux');
$entityFlux = $em->getRepository('CadolesPortalBundle:Flux')->find(-2000);
if(!$entityFlux&&($activate_widlimesurvey)) {
$entityFlux = new Flux();
$entityFlux->setRowOrder(0);
$entityFlux->setColor("328637");
}
elseif($entityFlux&&!($activate_widlimesurvey)) {
$em->remove($entityFlux);
$em->flush();
$entityWidget=null;
}
if($entityFlux) {
$entityFlux->setId(-2000);
$entityFlux->setTitle("Limesurvey");
$entityFlux->setUrl("/".$alias."/feed/limesurvey/##userid##");
$entityFlux->setMaxread(0);
$em->persist($entityFlux);
$em->flush();
}
$entityFlux = $em->getRepository('CadolesPortalBundle:Flux')->find(-2010);
if(!$entityFlux&&($activate_widmoodle)) {
$entityFlux = new Flux();
$entityFlux->setRowOrder(0);
$entityFlux->setColor("f77f11");
}
elseif($entityFlux&&!($activate_widmoodle)) {
$em->remove($entityFlux);
$em->flush();
$entityWidget=null;
}
if($entityFlux) {
$entityFlux->setId(-2010);
$entityFlux->setTitle("Moodle");
$entityFlux->setUrl("/".$alias."/feed/moodle/##userid##");
$entityFlux->setMaxread(0);
$em->persist($entityFlux);
$em->flush();
}
//== PAGECATEGORY ========================================================================================================================================
$output->writeln(' > Creation Pagecategory');
$entityPagecategory = $em->getRepository('CadolesPortalBundle:Pagecategory')->find(-100);
if(!$entityPagecategory) {
$entityPagecategory = new Pagecategory();
$entityPagecategory->setId(-100);
$entityPagecategory->setName('Calendriers');
$em->persist($entityPagecategory);
}
$entityPagecategory = $em->getRepository('CadolesPortalBundle:Pagecategory')->find(-90);
if(!$entityPagecategory) {
$entityPagecategory = new Pagecategory();
$entityPagecategory->setId(-90);
$entityPagecategory->setName('Blogs');
$em->persist($entityPagecategory);
}
$entityPagecategory = $em->getRepository('CadolesPortalBundle:Pagecategory')->find(1);
if(!$entityPagecategory) {
$entityPagecategory = new Pagecategory();
$entityPagecategory->setId(1);
$entityPagecategory->setName('URL');
$em->persist($entityPagecategory);
}
$entityPagecategory = $em->getRepository('CadolesPortalBundle:Pagecategory')->find(2);
if(!$entityPagecategory) {
$entityPagecategory = new Pagecategory();
$entityPagecategory->setId(2);
$entityPagecategory->setName('Widget');
$em->persist($entityPagecategory);
}
$entityPagecategory = $em->getRepository('CadolesPortalBundle:Pagecategory')->find(3);
if(!$entityPagecategory) {
$entityPagecategory = new Pagecategory();
$entityPagecategory->setId(3);
$entityPagecategory->setName('Editeur');
$em->persist($entityPagecategory);
}
//== ITEMCATEGORY========================================================================================================================================
$output->writeln(' > Creation Item Category');
$entityItemcategoryapp = $em->getRepository('CadolesPortalBundle:Itemcategory')->find(-100);
if(!$entityItemcategoryapp) {
$entityItemcategoryapp = new Itemcategory();
$entityItemcategoryapp->setId(-100);
$entityItemcategoryapp->setRowOrder(0);
$entityItemcategoryapp->setLabel('Applications');
$em->persist($entityItemcategoryapp);
}
$entityItemcategoryadm = $em->getRepository('CadolesPortalBundle:Itemcategory')->find(-99);
if(!$entityItemcategoryadm) {
$entityItemcategoryadm = new Itemcategory();
$entityItemcategoryadm->setId(-99);
$entityItemcategoryadm->setRowOrder(99);
$entityItemcategoryadm->setLabel('Administration');
$em->persist($entityItemcategoryadm);
}
//== ITEM ===============================================================================================================================================
$output->writeln(' > Creation Item');
// Item Limesurvey
if($activate_widlimesurvey) {
$widlimesurvey_url =$this->getContainer()->getParameter('widlimesurvey_url');
$entityItem = $em->getRepository('CadolesPortalBundle:Item')->find(-374);
if(!$entityItem) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_limesurvey.png"]);
$entityItem = new Item();
$entityItem->setId(-374);
$entityItem->setRowOrder(0);
$entityItem->setTitle('Limesurvey');
$entityItem->SetSubtitle("Application de sondage");
$entityItem->setIcon($entityicon);
$entityItem->setColor("328637");
$entityItem->setTarget("_blank");
$entityItem->setItemcategory($entityItemcategoryapp);
}
$entityItem->setUrl($widlimesurvey_url);
$em->persist($entityItem);
}
// Item Moodle
if($activate_widmoodle) {
$widmoodle_url =$this->getContainer()->getParameter('widmoodle_url');
$entityItem = $em->getRepository('CadolesPortalBundle:Item')->find(-387);
if(!$entityItem) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_moodle.png"]);
$entityItem = new Item();
$entityItem->setId(-387);
$entityItem->setRowOrder(0);
$entityItem->setTitle('Moodle');
$entityItem->SetSubtitle("Application de eLearning");
$entityItem->setIcon($entityicon);
$entityItem->setColor("f77f11");
$entityItem->setTarget("_blank");
$entityItem->setItemcategory($entityItemcategoryapp);
}
$entityItem->setUrl($widmoodle_url);
$em->persist($entityItem);
}
// Item Opensondage
if($activate_widopensondage) {
$widopensondage_url =$this->getContainer()->getParameter('widopensondage_url');
$entityItem = $em->getRepository('CadolesPortalBundle:Item')->find(-383);
if(!$entityItem) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_calendar.png"]);
$entityItem = new Item();
$entityItem->setId(-383);
$entityItem->setRowOrder(0);
$entityItem->setTitle('Opensondage');
$entityItem->SetSubtitle("Application de Sondage par Date");
$entityItem->setIcon($entityicon);
$entityItem->setColor("1ba39c");
$entityItem->setTarget("_blank");
$entityItem->setItemcategory($entityItemcategoryapp);
}
$entityItem->setUrl($widopensondage_url);
$em->persist($entityItem);
}
// Item Piwik
if($activate_widpiwik) {
$widpiwik_url =$this->getContainer()->getParameter('widpiwik_url');
$entityItem = $em->getRepository('CadolesPortalBundle:Item')->find(-380);
if(!$entityItem) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_trends.png"]);
$entityItem = new Item();
$entityItem->setId(-380);
$entityItem->setRowOrder(0);
$entityItem->setTitle('Piwik');
$entityItem->SetSubtitle("Application de Statistique de Visite");
$entityItem->setIcon($entityicon);
$entityItem->setColor("1ba39c");
$entityItem->setTarget("_blank");
$entityItem->setItemcategory($entityItemcategoryadm);
}
$entityItem->setUrl($widpiwik_url);
$em->persist($entityItem);
}
// Item Wordpress
if($activate_widwordpress) {
$widwordpress_url =$this->getContainer()->getParameter('widwordpress_url');
$entityItem = $em->getRepository('CadolesPortalBundle:Item')->find(-400);
if(!$entityItem) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_wordpress.png"]);
$entityItem = new Item();
$entityItem->setId(-400);
$entityItem->setRowOrder(0);
$entityItem->setTitle('Wordpress');
$entityItem->SetSubtitle("Application de Blog");
$entityItem->setIcon($entityicon);
$entityItem->setColor("96281b");
$entityItem->setTarget("_blank");
$entityItem->setItemcategory($entityItemcategoryapp);
}
$entityItem->setUrl($widwordpress_url);
$em->persist($entityItem);
}
// Item Nextcloud
if($activate_widnextcloud) {
$widnextcloud_url =$this->getContainer()->getParameter('widnextcloud_url');
$entityItem = $em->getRepository('CadolesPortalBundle:Item')->find(-366);
if(!$entityItem) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_nextcloud.png"]);
$entityItem = new Item();
$entityItem->setId(-366);
$entityItem->setRowOrder(0);
$entityItem->setTitle('Nextcloud');
$entityItem->SetSubtitle("Stockage de Fichiers");
$entityItem->setIcon($entityicon);
$entityItem->setColor("f15a22");
$entityItem->setTarget("_blank");
$entityItem->setItemcategory($entityItemcategoryapp);
}
$entityItem->setUrl($widnextcloud_url);
$em->persist($entityItem);
}
//== WIDGET ============================================================================================================================================
$output->writeln(' > Creation Widget');
// Widget URL
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-2000);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_ribbon.png"]);
$entityWidget->setId(-2000);
$entityWidget->setRoworder(1);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('URL');
$entityWidget->setDescription("Affiche le contenu d'une url");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_url");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(false);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "url", "loc": "col1", "type": "string", "label": "URL", "value": "", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Bureau
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1990);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_computer.png"]);
$entityWidget->setId(-1990);
$entityWidget->setRoworder(2);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Bureau');
$entityWidget->setDescription("Affiche vos items de bureau");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_item");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "modedesktop", "loc": "col1", "type": "desktopmode", "label": "Mode Affichage", "value": "2", "mandatory": "true"},{"id": "withbookmark", "loc": "col1", "type": "withbookmark", "label": "Avec Favoris", "value": "0", "mandatory": "true"},{"id": "itemcategory", "loc": "col1", "type": "itemcategory", "label": "Catégorie Affichée", "value": "", "mandatory": "false"},{"id": "search", "loc": "col4", "type": "boolean", "label": "Zone de Recherche", "value": "0", "mandatory": "true"},{"id": "menu", "loc": "col4", "type": "boolean", "label": "Menu des Catégories", "value": "0", "mandatory": "true"},{"id": "menuall", "loc": "col4", "type": "boolean", "label": "Menu toutes les Catégories", "value": "1", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Annonce
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1980);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_megaphone.png"]);
$entityWidget->setId(-1980);
$entityWidget->setRoworder(3);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Annonces');
$entityWidget->setDescription("Affiche vos annonces");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_alert");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "alertcategory", "loc": "col1", "type": "alertcategory", "label": "Catégorie Affichée", "value": "", "mandatory": "false"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Flux
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1970);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_rss.png"]);
$entityWidget->setId(-1970);
$entityWidget->setRoworder(4);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Flux');
$entityWidget->setDescription("Affiche vos flux RSS");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_flux");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": []}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Favoris
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1960);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_star.png"]);
$entityWidget->setId(-1960);
$entityWidget->setRoworder(5);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Favoris');
$entityWidget->setDescription("Création de Favoris");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_bookmark");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "modedesktop", "loc": "col1", "type": "desktopmode", "label": "Mode Affichage", "value": "2", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Liens
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1950);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_bolt.png"]);
$entityWidget->setId(-1950);
$entityWidget->setRoworder(6);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Lien');
$entityWidget->setDescription("Création d'un Lien");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_link");
$entityWidget->setHeight("200");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "url", "loc": "col1", "type": "string", "label": "URL", "value": "", "mandatory": "true"},{"id": "target", "loc": "col1", "type": "target", "label": "Ouvrir le lien dans", "value": "0", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Editor
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1940);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_compose.png"]);
$entityWidget->setId(-1940);
$entityWidget->setRoworder(7);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Editeur');
$entityWidget->setDescription("Votre propre texte à éditer");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_editor");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "html", "loc": "col5", "type": "ckeditor", "label": "Texte", "value": "", "mandatory": "false"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Carrousel
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1930);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_easel.png"]);
$entityWidget->setId(-1930);
$entityWidget->setRoworder(8);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Carrousel');
$entityWidget->setDescription("Carrousel d'images");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_slide");
$entityWidget->setHeight("400");
$entityWidget->setAutoajust(false);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "interval", "loc": "col1", "type": "integer", "label": "Interval en seconde entre 2 images", "value": "5", "mandatory": "false"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget File
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1920);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_folder.png"]);
$entityWidget->setId(-1920);
$entityWidget->setRoworder(9);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Fichiers');
$entityWidget->setDescription("Répertoire de fichiers");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_file");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": []}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Galery
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1910);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_image.png"]);
$entityWidget->setId(-1910);
$entityWidget->setRoworder(10);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Galerie');
$entityWidget->setDescription("Galerie d'images");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_galery");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": []}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Calendrier
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1900);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_calendar.png"]);
$entityWidget->setId(-1900);
$entityWidget->setRoworder(11);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Calendrier');
$entityWidget->setDescription("Calendrier d'évènements");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_calendar");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "nbday", "loc": "col1", "type": "integer", "label": "Nombre de jours affichés", "value": "15", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Blog
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1890);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_rocket.png"]);
$entityWidget->setId(-1890);
$entityWidget->setRoworder(12);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Blog');
$entityWidget->setDescription("Les derniers articles publiés sur vos blogs");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_blog");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "nbarticle", "loc": "col1", "type": "integer", "label": "Nombre d\'articles affichés", "value": "10", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget RSS
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1880);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_rss.png"]);
$entityWidget->setId(-1880);
$entityWidget->setRoworder(13);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('RSS');
$entityWidget->setDescription("Afficher un flux RSS spécifique");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_rss");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "url", "loc": "col1", "type": "string", "label": "URL du Flux RSS", "value": "", "mandatory": "true"},{"id": "nbarticle", "loc": "col1", "type": "integer", "label": "Nombre d\'articles affichés (0 pour tout)", "value": "10", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Applications Externe
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1870);
if(!$entityWidget&&($activate_widlimesurvey||$activate_widmoodle)) $entityWidget = new Widget();
elseif($entityWidget&&!($activate_widlimesurvey||$activate_widmoodle)) {
$pagewidgets=$entityWidget->getPagewidgets();
foreach($pagewidgets as $pagewidget) {
$em->remove($pagewidget);
$em->flush();
}
$em->remove($entityWidget);
$em->flush();
$entityWidget=null;
}
if($entityWidget) {
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_frames.png"]);
$entityWidget->setId(-1870);
$entityWidget->setRoworder(14);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Applications Externe');
$entityWidget->setDescription("Afficher des informations provenant de vos applications");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_appexternal");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "modedesktop", "loc": "col1", "type": "desktopmode", "label": "Mode Affichage", "value": "2", "mandatory": "true"},{"id": "Applications", "loc": "col1", "type": "appexternal", "label": "Applications à affichier", "value": "", "mandatory": "false"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
}
// Widget Information
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1860);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_info.png"]);
$entityWidget->setId(-1860);
$entityWidget->setRoworder(13);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Information Page');
$entityWidget->setDescription("Afficher les informations associées à la page");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_info");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": []}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Bureau Essentiel
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1850);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_computer.png"]);
$entityWidget->setId(-1850);
$entityWidget->setRoworder(2);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Bureau Essentiel');
$entityWidget->setDescription("Affiche les items de bureau essentiel");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_itemessential");
$entityWidget->setHeight("630");
$entityWidget->setAutoajust(true);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "modedesktop", "loc": "col1", "type": "desktopmode", "label": "Mode Affichage", "value": "2", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Chat
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1840);
if($activate_websocket) {
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_chat.png"]);
$entityWidget->setId(-1840);
$entityWidget->setRoworder(2);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Chat');
$entityWidget->setDescription("Conversation instantanée");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_chat");
$entityWidget->setHeight("1000");
$entityWidget->setAutoajust(false);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": []}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
}
else {
$em->remove($entityWidget);
}
// Widget Séparateur
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1600);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_roadblock.png"]);
$entityWidget->setId(-1600);
$entityWidget->setRoworder(100);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Séparateur');
$entityWidget->setDescription("Widget graphique pour séparer les autres widgets");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_separator");
$entityWidget->setHeight("50");
$entityWidget->setAutoajust(false);
$entityWidget->setBorder(false);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$entityWidget->setColorbodyback("ffffff");
$parameter = json_decode('{"fields": [{"id": "seetitle", "loc": "col1", "type": "boolean", "label": "Afficher le titre", "value": "0", "mandatory": "true"},{"id": "seeicon", "loc": "col1", "type": "boolean", "label": "Afficher l\'icone", "value": "0", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Horloge
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1500);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_clock.png"]);
$entityWidget->setId(-1500);
$entityWidget->setRoworder(100);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Horloge');
$entityWidget->setDescription("Une simple horloge");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_clock");
$entityWidget->setHeight("200");
$entityWidget->setAutoajust(false);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": [{"id": "clock", "loc": "col1", "type": "clock", "label": "Mode d\'affichage", "value": "0", "mandatory": "true"}]}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// Widget Calculatrice
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1490);
if(!$entityWidget) $entityWidget = new Widget();
$entityicon = $em->getRepository('CadolesPortalBundle:Icon')->findoneby(["label"=>"uploads/icon/icon_calculator.png"]);
$entityWidget->setId(-1490);
$entityWidget->setRoworder(110);
$entityWidget->setIcon($entityicon);
$entityWidget->setName('Calculatrice');
$entityWidget->setDescription("Une simple calculatrice");
$entityWidget->setRouteview("cadoles_portal_config_panelwidget_view_calculator");
$entityWidget->setHeight("400");
$entityWidget->setAutoajust(false);
$entityWidget->setBorder(true);
$entityWidget->setOpened(true);
$entityWidget->setAccess(["config","user","group"]);
$parameter = json_decode('{"fields": []}');
$entityWidget->setParameter($parameter);
$em->persist($entityWidget);
// flush
$em->flush();
//== PAGETEMPALTE =======================================================================================================================================
$output->writeln(' > Creation Pagetemplate');
// Template app
$entityPage = $em->getRepository('CadolesPortalBundle:Page')->find(-100);
if(!$entityPage) {
$entityPagecategory = $em->getRepository('CadolesPortalBundle:Pagecategory')->find(2);
$entityGroup = $em->getRepository('CadolesCoreBundle:Group')->findOneBy(["fgall"=>true]);
$entityPage = new Page();
$entityPage->setId(-100);
$entityPage->setRowOrder(0);
$entityPage->setName('Applications');
$entityPage->setParentfor('app');
$entityPage->setMaxwidth(1000);
$entityPage->setPagecategory($entityPagecategory);
$entityPage->addGroup($entityGroup);
$entityPage->setTemplate('{"rows":[{"id":0,"cols":[{"id":0,"size": 12,"rows":[]}]}]}');
$em->persist($entityPage);
$em->flush();
$entityPagewidget = $em->getRepository('CadolesPortalBundle:Pagewidget')->find(-110);
if(!$entityPagewidget) {
$entityWidget = $em->getRepository('CadolesPortalBundle:Widget')->find(-1990);
$entityPagewidget = new Pagewidget();
$entityPagewidget->setId(-110);
$entityPagewidget->setLoc("R1C1");
$entityPagewidget->setRoworder(1);
$entityPagewidget->setName("Applications");
$entityPagewidget->setHeight($entityWidget->getHeight());
$entityPagewidget->setAutoajust($entityWidget->getAutoajust());
$entityPagewidget->setBorder($entityWidget->getBorder());
$entityPagewidget->setOpened($entityWidget->getOpened());
$entityPagewidget->setIcon($entityWidget->getIcon());
$entityPagewidget->setPage($entityPage);
$entityPagewidget->setWidget($entityWidget);
$param["fields"]=["fields"=>[["id"=>"modedesktop","value"=>2],["id"=>"withbookmark","value"=>0],["id"=>"itemcategory","value"=>null],["id"=>"menu","value"=>1],["id"=>"search","value"=>1],["id"=>"menuall","value"=>1]]];
$entityPagewidget->setParameter($param["fields"]);
$em->persist($entityPagewidget);
$em->flush();
}
}
$output->writeln('');
}
}