From 9157b7867136968b29c206482b921d3963d0e930 Mon Sep 17 00:00:00 2001 From: afornerot Date: Fri, 3 Dec 2021 11:44:34 +0100 Subject: [PATCH 1/3] user ldap reader si masteridentity != SQL --- tmpl/ninegate-template.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tmpl/ninegate-template.yml b/tmpl/ninegate-template.yml index 0a2a656e..9d671595 100644 --- a/tmpl/ninegate-template.yml +++ b/tmpl/ninegate-template.yml @@ -133,6 +133,11 @@ parameters: %else ldap_tls: false %end if + +%if %%getVar("ninegate_masteridentity", 'SQL') != "SQL" + ldap_user: %%ldap_reader + ldap_password: %%pwdreader("",%%ldap_reader_passfile) +%else %if %%getVar("activer_admin_passfile", 'non') == "oui" %if %%getVar("ldap_writer", '') == "" ldap_user: cn=admin,o=gouv,c=fr @@ -143,6 +148,7 @@ parameters: %else ldap_user: %%ldap_reader ldap_password: %%pwdreader("",%%ldap_reader_passfile) +%end if %end if ldap_basedn: %%ldap_base_dn %if %%getVar("ninegate_ldaptype", 'LDAP') == "AD" From 95e51c4d536c6b12c5c65a8a739ddb836a0c36fc Mon Sep 17 00:00:00 2001 From: afornerot Date: Mon, 6 Dec 2021 10:41:18 +0100 Subject: [PATCH 2/3] ne plus bloquer bundle edispatcher si masteridentity != SSO (fixes #33444) --- .../EdispatcherBundle/Controller/ApiController.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ninegate-1.0/src/Cadoles/EdispatcherBundle/Controller/ApiController.php b/src/ninegate-1.0/src/Cadoles/EdispatcherBundle/Controller/ApiController.php index 6a093970..4e86affc 100755 --- a/src/ninegate-1.0/src/Cadoles/EdispatcherBundle/Controller/ApiController.php +++ b/src/ninegate-1.0/src/Cadoles/EdispatcherBundle/Controller/ApiController.php @@ -674,10 +674,10 @@ $api('$id',data);"; } public function sessionAction($id="",$access="config") { - // Masteridentity - $masteridentity=$this->getParameter("masteridentity"); - if($masteridentity!="SSO") { - $output["error"]="Le bundle Edispatcher ne fonctionne qu'en mode MasterIdentity=SSO"; + // mode_auth + $mode_auth=$this->getParameter("mode_auth"); + if($mode_auth!="CAS") { + $output["error"]="Le bundle Edispatcher ne fonctionne qu'en mode mode_auth=CAS"; return new Response(json_encode($output), 400); } From 01da55e6d62be81e07e185d80f1957827138d6f1 Mon Sep 17 00:00:00 2001 From: afornerot Date: Mon, 6 Dec 2021 11:40:02 +0100 Subject: [PATCH 3/3] gestion copier / coller des images dans les editeurs de texte (fixes #33465) --- src/ninegate-1.0/app/config/config.yml | 2 +- .../CoreBundle/Command/PurgeFileCommand.php | 40 ++++++++++++++++ .../src/Cadoles/CoreBundle/Form/MailType.php | 2 +- .../Cadoles/CoreBundle/Form/MailingType.php | 2 +- .../Controller/AlertController.php | 27 +++++++++++ .../Cadoles/PortalBundle/Form/AlertType.php | 2 +- .../PortalBundle/Resources/config/routing.yml | 47 +++++++++++++++++-- .../Cadoles/WebsocketBundle/Form/ChatType.php | 4 +- 8 files changed, 117 insertions(+), 9 deletions(-) diff --git a/src/ninegate-1.0/app/config/config.yml b/src/ninegate-1.0/app/config/config.yml index b538cc8f..cf384f23 100644 --- a/src/ninegate-1.0/app/config/config.yml +++ b/src/ninegate-1.0/app/config/config.yml @@ -147,7 +147,7 @@ ivory_ck_editor: language: fr toolbar: "my_toolbar_1" uiColor: "#ffffff" - extraPlugins: ["html5video","pastebase64"] + extraPlugins: ["html5video"] light_config: language: fr toolbar: "my_toolbar_2" diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/PurgeFileCommand.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/PurgeFileCommand.php index 521a0b93..dfe3e2ab 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/PurgeFileCommand.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/PurgeFileCommand.php @@ -380,6 +380,46 @@ class PurgeFileCommand extends Command if($result) $find=true; } + // Si pas trouvé on la cherche dans les projecttask + if(!$find) { + $result = $this->em + ->getRepository("CadolesPortalBundle:Projecttask")->createQueryBuilder('projecttask') + ->where('projecttask.description LIKE :tofind') + ->setParameter('tofind', '%'.$tofind.'%') + ->getQuery()->getResult(); + if($result) $find=true; + } + + // Si pas trouvé on la cherche dans les projectcomment + if(!$find) { + $result = $this->em + ->getRepository("CadolesPortalBundle:Projectcomment")->createQueryBuilder('projectcomment') + ->where('projectcomment.description LIKE :tofind') + ->setParameter('tofind', '%'.$tofind.'%') + ->getQuery()->getResult(); + if($result) $find=true; + } + + // Si pas trouvé on la cherche dans les blogcomment + if(!$find) { + $result = $this->em + ->getRepository("CadolesPortalBundle:Blogcomment")->createQueryBuilder('blogcomment') + ->where('blogcomment.description LIKE :tofind') + ->setParameter('tofind', '%'.$tofind.'%') + ->getQuery()->getResult(); + if($result) $find=true; + } + + // Si pas trouvé on la cherche dans les alert + if(!$find) { + $result = $this->em + ->getRepository("CadolesPortalBundle:Alert")->createQueryBuilder('alert') + ->where('alert.content LIKE :tofind') + ->setParameter('tofind', '%'.$tofind.'%') + ->getQuery()->getResult(); + if($result) $find=true; + } + // Si pas trouvé on supprime if(!$find) { $this->writeln($name); diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailType.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailType.php index 749cbdef..7e9bfe55 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailType.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailType.php @@ -52,7 +52,7 @@ class MailType extends AbstractType 'mapped'=> false, 'required' => false, 'attr' => array("class" => "form-control", "style" => "margin-bottom:15px"), - 'config' => ["height" => "150px",'filebrowserUploadRoute' => 'cadoles_portal_user_pagewidget_upload'] + 'config' => ["height" => "150px"] ]); } diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailingType.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailingType.php index e6640993..02ce657a 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailingType.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Form/MailingType.php @@ -99,7 +99,7 @@ class MailingType extends AbstractType 'mapped'=> false, 'required' => true, 'attr' => array("class" => "form-control", "style" => "margin-bottom:15px"), - 'config' => ["height" => "400px",'filebrowserUploadRoute' => 'cadoles_portal_user_pagewidget_upload'] + 'config' => ["height" => "400px"] ]); } diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/AlertController.php b/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/AlertController.php index 779d853b..a79d2ac3 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/AlertController.php +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/AlertController.php @@ -8,6 +8,7 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\JsonResponse; use Symfony\Component\Form\FormError; +use Symfony\Component\Filesystem\Filesystem; use Cadoles\PortalBundle\Entity\Alert; use Cadoles\PortalBundle\Form\AlertType; @@ -195,6 +196,32 @@ class AlertController extends Controller return $response; } + public function uploadAction(Request $request,$access=null) { + // Fichier temporaire uploadé + $tmpfile = $request->files->get('upload'); + $extention = $tmpfile->getClientOriginalExtension(); + + // Répertoire de Destination + $fs = new Filesystem(); + $rootdir = $this->get('kernel')->getRootDir()."/../web"; + $fs->mkdir($rootdir."/uploads/ckeditor"); + + // Fichier cible + $targetName = uniqid().".".$extention; + $targetFile = $rootdir."/uploads/ckeditor/".$targetName; + $targetUrl = "/".$this->getParameter('alias')."/uploads/ckeditor/".$targetName; + $message = ""; + + move_uploaded_file($tmpfile,$targetFile); + + $output["uploaded"]=1; + $output["fileName"]=$targetName; + $output["url"]=$targetUrl; + + return new Response(json_encode($output)); + + } + public function readAction(Request $request) { $output=array(); $id=$request->request->get('id'); diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Form/AlertType.php b/src/ninegate-1.0/src/Cadoles/PortalBundle/Form/AlertType.php index daae87a9..ebd5b873 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Form/AlertType.php +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Form/AlertType.php @@ -33,7 +33,7 @@ class AlertType extends AbstractType "label" => 'Description', "required" => false, "disabled" => ($options["mode"]=="delete"?true:false), - "config" => array("height" => "500px") + "config" => array("height" => "500px","filebrowserUploadRoute" => 'cadoles_portal_config_alert_upload') ]) ->add("fghideable",ChoiceType::class,[ diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/config/routing.yml b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/config/routing.yml index eafa3dc3..3301d274 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/config/routing.yml +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/config/routing.yml @@ -159,6 +159,13 @@ cadoles_portal_config_alert_order: path: /config/alert/order defaults: { _controller: CadolesPortalBundle:Alert:order } +cadoles_portal_config_alert_upload: + path: /config/alert/upload + defaults: { _controller: CadolesPortalBundle:Alert:upload } +cadoles_portal_config_alert_upload_direct: + path: /config/alert/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Alert:upload } + cadoles_portal_config_ajax_alert_seleclist: path: /config/alert/ajax/selectlist defaults: { _controller: CadolesPortalBundle:Alert:ajaxseleclist } @@ -321,6 +328,9 @@ cadoles_portal_config_page_order: cadoles_portal_config_page_upload: path: /config/page/upload defaults: { _controller: CadolesPortalBundle:Page:upload, access: config } +cadoles_portal_config_page_upload_direct: + path: /config/page/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Page:upload, access: config } #-- Access user cadoles_portal_user_page_submit: @@ -350,6 +360,9 @@ cadoles_portal_user_page_order: cadoles_portal_user_page_upload: path: /user/page/upload defaults: { _controller: CadolesPortalBundle:Page:upload, access: user } +cadoles_portal_user_page_upload_direct: + path: /user/page/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Page:upload, access: user } # Page spécifique cadoles_portal_user_page_application: @@ -531,7 +544,10 @@ cadoles_portal_config_blogarticle_delete: cadoles_portal_config_blogarticle_upload: path: /config/blogarticle/upload defaults: { _controller: CadolesPortalBundle:Blogarticle:upload, access: config } - +cadoles_portal_config_blogarticle_upload_direct: + path: /config/blogarticle/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Blogarticle:upload, access: config } + cadoles_portal_config_blogarticle_image: path: /config/blogarticle/image defaults: { _controller: CadolesPortalBundle:Blogarticle:image, access: config } @@ -556,6 +572,9 @@ cadoles_portal_user_blogarticle_delete: cadoles_portal_user_blogarticle_upload: path: /user/blogarticle/upload defaults: { _controller: CadolesPortalBundle:Blogarticle:upload, access: user } +cadoles_portal_user_blogarticle_upload_direct: + path: /user/blogarticle/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Blogarticle:upload, access: user } cadoles_portal_user_blogarticle_image: path: /user/blogarticle/image @@ -584,6 +603,9 @@ cadoles_portal_config_blogcomment_delete: cadoles_portal_config_blogcomment_upload: path: /config/blogcomment/upload defaults: { _controller: CadolesPortalBundle:Blogcomment:upload, access: config } +cadoles_portal_config_blogcomment_upload_direct: + path: /config/blogcomment/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Blogcomment:upload, access: config } #-- Access user cadoles_portal_user_blogcomment_submit: @@ -605,7 +627,9 @@ cadoles_portal_user_blogcomment_delete: cadoles_portal_user_blogcomment_upload: path: /user/blogcomment/upload defaults: { _controller: CadolesPortalBundle:Blogcomment:upload, access: user } - +cadoles_portal_user_blogcomment_upload_direct: + path: /user/blogcomment/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Blogcomment:upload, access: user } #== CALENDAR ============================================================================================================================================= @@ -804,6 +828,9 @@ cadoles_portal_config_projecttask_delete: cadoles_portal_config_projecttask_upload: path: /config/projecttask/upload defaults: { _controller: CadolesPortalBundle:Projecttask:upload, access: config } +cadoles_portal_config_projecttask_upload_direct: + path: /config/projecttask/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Projecttask:upload, access: config } cadoles_portal_config_projecttask_users: path: /config/projecttask/users @@ -833,6 +860,9 @@ cadoles_portal_user_projecttask_delete: cadoles_portal_user_projecttask_upload: path: /user/projecttask/upload defaults: { _controller: CadolesPortalBundle:Projecttask:upload, access: user } +cadoles_portal_user_projecttask_upload_direct: + path: /user/projecttask/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Projecttask:upload, access: user } cadoles_portal_user_projecttask_users: path: /user/projecttask/users @@ -861,6 +891,9 @@ cadoles_portal_config_projectcomment_delete: cadoles_portal_config_projectcomment_upload: path: /config/projectcomment/upload defaults: { _controller: CadolesPortalBundle:Projectcomment:upload, access: config } +cadoles_portal_config_projectcomment_upload_direct: + path: /config/projectcomment/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Projectcomment:upload, access: config } #-- Access user cadoles_portal_user_projectcomment_submit: @@ -878,7 +911,9 @@ cadoles_portal_user_projectcomment_delete: cadoles_portal_user_projectcomment_upload: path: /user/projectcomment/upload defaults: { _controller: CadolesPortalBundle:Projectcomment:upload, access: user } - +cadoles_portal_user_projectcomment_upload_direct: + path: /user/projectcomment/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Projectcomment:upload, access: user } #== FEED ================================================================================================================================================= @@ -930,6 +965,9 @@ cadoles_portal_config_pagewidget_order: cadoles_portal_config_pagewidget_upload: path: /config/pagewidget/upload defaults: { _controller: CadolesPortalBundle:Pagewidget:upload, access: config } +cadoles_portal_config_pagewidget_upload_direct: + path: /config/pagewidget/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Pagewidget:upload, access: config } cadoles_portal_config_panelwidget_view_url: path: /config/pagewidget/view/url/{id} @@ -1051,6 +1089,9 @@ cadoles_portal_user_pagewidget_order: cadoles_portal_user_pagewidget_upload: path: /user/pagewidget/upload defaults: { _controller: CadolesPortalBundle:Pagewidget:upload, access: user } +cadoles_portal_user_pagewidget_upload_direct: + path: /user/pagewidget/upload&responseType=json + defaults: { _controller: CadolesPortalBundle:Pagewidget:upload, access: user } cadoles_portal_user_panelwidget_view_url: path: /pagewidget/view/url/{id} diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Form/ChatType.php b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Form/ChatType.php index a2f46aeb..45004d5d 100644 --- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Form/ChatType.php +++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Form/ChatType.php @@ -30,7 +30,7 @@ class ChatType extends AbstractType 'mapped'=> false, 'required' => false, 'attr' => array("class" => "form-control", "style" => "margin-bottom:15px"), - 'config' => ["height" => "100px",'filebrowserUploadRoute' => 'cadoles_portal_user_pagewidget_upload',], + 'config' => ["height" => "100px"], ]); $builder @@ -40,7 +40,7 @@ class ChatType extends AbstractType 'mapped'=> false, 'required' => false, 'attr' => array("class" => "form-control", "style" => "margin-bottom:15px"), - 'config' => ["height" => "150px",'filebrowserUploadRoute' => 'cadoles_portal_user_pagewidget_upload'] + 'config' => ["height" => "150px"] ]); }