src/Controller/PanelCokVeriController.php line 64

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use Gumlet\ImageResize;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use Symfony\Component\HttpFoundation\Request;
  6. use Symfony\Component\HttpFoundation\Response;
  7. use Symfony\Component\Routing\Annotation\Route;
  8. use App\Controller\BaseController;
  9. class PanelCokVeriController extends BaseController
  10. {
  11.     /**
  12.      * @Route("/admin/multi-content/{dilgrup}", name="cokveri_homepage")
  13.      */
  14.     public function index($dilgrup): Response
  15.     {
  16.         $em $this->getDoctrine()->getManager();
  17.         $qb $em->createQueryBuilder();
  18.         $sayfa=$qb->select('s.id,s.adi,m.alan,m.tip,m.bosluk,m.cokluDil,m.tabloAdi,s.dilgrup,s.kategori')
  19.             ->from('App:Sayfa''s')
  20.             ->join('s.modul''m')
  21.             ->where('s.id='.$dilgrup)
  22.             ->getQuery()
  23.             ->getScalarResult();
  24.         $qb $em->createQueryBuilder();
  25.         $diller=$qb->select('d.id,d.kisa')
  26.             ->from('App:Dil''d')
  27.             ->where("d.aktif=1")
  28.             ->orderBy('d.id')
  29.             ->getQuery()
  30.             ->getScalarResult();
  31.         $qb $em->createQueryBuilder();
  32.         $kategoriler=$qb->select('k.id,k.dilgrup,k.adi')
  33.             ->from('App:Kategori''k')
  34.             ->join('k.sayfa','s')
  35.             ->where('s.id='.$dilgrup.' and k.ustid=0')
  36.             ->groupBy('k.dilgrup')
  37.             ->orderBy('k.sira','ASC')
  38.             ->getQuery()
  39.             ->getScalarResult();
  40.         return $this->render('panel/icerik/cokveri/index.html.twig',array('sayfa'=>$sayfa[0],'diller'=>$diller,'kategoriler'=>$kategoriler));
  41.     }
  42.     /**
  43.      * @Route("/admin/multi-content/{dilgrup}/getir", name="cokveri_getir")
  44.      */
  45.     public function getir($dilgrup,Request $request): Response
  46.     {
  47.         $em $this->getDoctrine()->getManager();
  48.         $qb $em->createQueryBuilder();
  49.         $sayfa=$qb->select('s.id,m.alan,m.tip,m.tabloAdi,s.dilgrup,s.kategori,s.seo,s.icIcerik')
  50.             ->from('App:Sayfa''s')
  51.             ->join('s.modul''m')
  52.             ->where('s.id='.$dilgrup)
  53.             ->getQuery()
  54.             ->getScalarResult();
  55.         $alanlar explode(',',$sayfa[0]['alan']);
  56.         $tipler explode(',',$sayfa[0]['tip']);
  57.         foreach ($alanlar as $key=>$alann) {
  58.             $alan[] = 't.'.$this->seo(str_replace(' '''$alanlar[$key]));
  59.         }
  60.         $alan implode(',',$alan);
  61.         $sql '';
  62.         $kategori '';
  63.         if($sayfa[0]['kategori']==1) {
  64.             $kategori $request->request->get('kategori');
  65.             if($kategori!=''){
  66.                 $sql.=' and k.id='.$kategori;
  67.             }else{
  68.                 $sql '';
  69.             }
  70.         }else{
  71.             $sql '';
  72.         }
  73.         $qb $em->createQueryBuilder();
  74.         $veriler=$qb->select($alan.',t.dilgrup,d.kisa as dKisa,k.adi as k_adi,k.dilgrup as k_dilgrup')
  75.             ->from('App:'.$sayfa[0]['tabloAdi'], 't')
  76.             ->leftjoin('t.kategori','k')
  77.             ->join('t.sayfa','s')
  78.             ->join('t.dil','d')
  79.             ->where('s.id='.$dilgrup.$sql)
  80.             ->orderBy('t.sira','ASC')
  81.             ->groupBy('t.dilgrup')
  82.             ->getQuery()
  83.             ->getScalarResult();
  84.         return $this->render('panel/icerik/cokveri/getir.html.twig',array('veriler'=>$veriler,'sayfa'=>$sayfa,'kategori'=>$kategori,'alanlar'=>$alanlar,'tipler'=>$tipler));
  85.     }
  86.     /**
  87.      * @Route("/admin/multi-content/{dilgrup}/add", name="cokveri_ekle")
  88.      */
  89.     public function ekle($dilgrup): Response
  90.     {
  91.         $em $this->getDoctrine()->getManager();
  92.         $qb $em->createQueryBuilder();
  93.         $sayfa=$qb->select('s.id,s.adi,m.alan,m.tip,m.bosluk,m.cokluDil,m.tabloAdi,s.dilgrup,s.kategori,s.icIcerik')
  94.             ->from('App:Sayfa''s')
  95.             ->join('s.modul''m')
  96.             ->where('s.id='.$dilgrup)
  97.             ->getQuery()
  98.             ->getScalarResult();
  99.         $qb $em->createQueryBuilder();
  100.         $diller=$qb->select('d.id,d.kisa')
  101.             ->from('App:Dil''d')
  102.             ->where("d.aktif=1")
  103.             ->orderBy('d.id')
  104.             ->getQuery()
  105.             ->getScalarResult();
  106.         $qb $em->createQueryBuilder();
  107.         $kategoriler=$qb->select('k.id,k.dilgrup,k.adi')
  108.             ->from('App:Kategori''k')
  109.             ->join('k.sayfa','s')
  110.             ->where('s.id='.$dilgrup.' and k.ustid=0')
  111.             ->groupBy('k.dilgrup')
  112.             ->orderBy('k.sira','ASC')
  113.             ->getQuery()
  114.             ->getScalarResult();
  115.         return $this->render('panel/icerik/cokveri/ekle.html.twig',array('sayfa'=>$sayfa[0],'diller'=>$diller,'kategoriler'=>$kategoriler));
  116.     }
  117.     /**
  118.      * @Route("/admin/multi-content/{dilgrup}/add-save", name="cokveri_ekle_kaydet")
  119.      */
  120.     public function ekle_kaydet($dilgrup,Request $request): Response
  121.     {
  122.         $em $this->getDoctrine()->getManager();
  123.         $qb $em->createQueryBuilder();
  124.         $sayfa=$qb->select('s.id,s.adi,m.alan,m.tip,m.bosluk,m.cokluDil,s.dilgrup,m.adi as madi,m.tabloAdi,s.kategori,s.resimBoyut')
  125.             ->from('App:Sayfa''s')
  126.             ->join('s.modul''m')
  127.             ->where('s.id='.$dilgrup)
  128.             ->getQuery()
  129.             ->getScalarResult();
  130.         if ($sayfa[0]['resimBoyut']!='') {
  131.             $sResimBoyut explode('x'$sayfa[0]['resimBoyut']);
  132.         }
  133.         $qb $em->createQueryBuilder();
  134.         $diller=$qb->select('d.id,d.kisa')
  135.             ->from('App:Dil''d')
  136.             ->where("d.aktif=1")
  137.             ->orderBy('d.id')
  138.             ->getQuery()
  139.             ->getScalarResult();
  140.         $alanlar explode(',',$sayfa[0]['alan']);
  141.         $tipler explode(',',$sayfa[0]['tip']);
  142.         $bosluklar explode(',',$sayfa[0]['bosluk']);
  143.         $dResim = [];
  144.         $resim '';
  145.         $resimler '';
  146.         //resim yüklemeleri tamam!
  147.         foreach ($tipler as $key=>$tip){
  148.             if($this->seo($alanlar[$key])=='resim'){
  149.                 if($bosluklar[$key]=='false'){
  150.                     $resim=$this->seo($sayfa[0]['adi']).'_'.time().'_'.rand(100000,999999);
  151.                     move_uploaded_file($_FILES['rr_'.$this->seo($alanlar[$key])]['tmp_name'], "gecici_yukleme/".$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  152.                     if ($sayfa[0]['resimBoyut']!='') {
  153.                         $image = new ImageResize('gecici_yukleme/' .$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  154.                         $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  155.                         $image->save('gecici_yukleme/' .$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  156.                     }
  157.                     $resim $this->imageResizer($resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']),$resim);
  158.                     $this->uploadFile($resim);
  159.                 }else{
  160.                     if (!empty($_FILES['rr_'.$this->seo($alanlar[$key])]['name'])) {
  161.                         $resim=$this->seo($sayfa[0]['adi']).'_'.time().'_'.rand(100000,999999);
  162.                         move_uploaded_file($_FILES['rr_'.$this->seo($alanlar[$key])]['tmp_name'], "gecici_yukleme/".$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  163.                         if ($sayfa[0]['resimBoyut']!='') {
  164.                             $image = new ImageResize('gecici_yukleme/' .$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  165.                             $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  166.                             $image->save('gecici_yukleme/' .$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  167.                         }
  168.                         $resim $this->imageResizer($resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']),$resim);
  169.                         $this->uploadFile($resim);
  170.                     }
  171.                 }
  172.             }
  173.             elseif ($this->seo($alanlar[$key])=='resimler'){
  174.                 if (!empty($_FILES['rr_'.$this->seo($alanlar[$key])]['name'])) {
  175.                     for ($i 0$i count($_FILES['rr_' $this->seo($alanlar[$key])]['name']); $i++) {
  176.                         $x $this->seo($sayfa[0]['adi']) . '_' time() . '_' rand(100000999999);
  177.                         move_uploaded_file($_FILES['rr_' $this->seo($alanlar[$key])]['tmp_name'][$i], "gecici_yukleme/" $x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]));
  178.                         if ($sayfa[0]['resimBoyut']!='') {
  179.                             $image = new ImageResize('gecici_yukleme/' .$x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]));
  180.                             $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  181.                             $image->save('gecici_yukleme/' .$x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]));
  182.                         }
  183.                         $x $this->imageResizer($x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]), $x);
  184.                         $this->uploadFile($x);
  185.                         $resimler .= $x ',';
  186.                     }
  187.                 }
  188.             }
  189.             elseif(strpos($this->seo($alanlar[$key]),'resim')==true){
  190.                 if($bosluklar[$key]=='false'){
  191.                     $dResim[$key]=$this->seo($sayfa[0]['adi']).'_'.time().'_'.rand(100000,999999);
  192.                     move_uploaded_file($_FILES['rr_'.$this->seo($alanlar[$key])]['tmp_name'], "gecici_yukleme/".$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  193.                     if ($sayfa[0]['resimBoyut']!='') {
  194.                         $image = new ImageResize('gecici_yukleme/' .$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  195.                         $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  196.                         $image->save('gecici_yukleme/' .$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  197.                     }
  198.                     $dResim[$key] = $this->imageResizer($dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']),$dResim[$key]);
  199.                     $this->uploadFile($dResim[$key]);
  200.                 }else{
  201.                     if (!empty($_FILES['rr_'.$this->seo($alanlar[$key])]['name'])) {
  202.                         $dResim[$key]=$this->seo($sayfa[0]['adi']).'_'.time().'_'.rand(100000,999999);
  203.                         move_uploaded_file($_FILES['rr_'.$this->seo($alanlar[$key])]['tmp_name'], "gecici_yukleme/".$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  204.                         if ($sayfa[0]['resimBoyut']!='') {
  205.                             $image = new ImageResize('gecici_yukleme/' .$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  206.                             $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  207.                             $image->save('gecici_yukleme/' .$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  208.                         }
  209.                         $dResim[$key] = $this->imageResizer($dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']),$dResim[$key]);
  210.                         $this->uploadFile($dResim[$key]);
  211.                     }
  212.                 }
  213.             }
  214.         }
  215.         if(empty($resim)){ $resim=null; } else{ $resim str_replace('.belirsiz','.jpg',$resim); }
  216.         if(empty($resimler)){ $resimler=null; } else{ $resimler str_replace('.belirsiz','.jpg',$resimler); }
  217.         foreach ($dResim as $keyy=>$dR){
  218.             if(empty($dR)){ $dResim[$keyy]=null; } else{ $dResim[$keyy] = str_replace('.belirsiz','.jpg',$dR); }
  219.         }
  220.         if($sayfa[0]['kategori']==1) {
  221.             $kategori $request->request->get('kategori');
  222.         }else{
  223.             $kategori 'NULL';
  224.         }
  225.         $s_dilgrup $this->son_dilgrup($sayfa[0]['tabloAdi']);
  226.         foreach ($diller as $key2=>$dil){
  227.             $veri = [];
  228.             $alan = [];
  229.             foreach ($tipler as $key=>$tip){
  230.                 $alan[]=$this->seo(str_replace(' ','',$alanlar[$key]));
  231.                 $asilAlan=$this->seo(str_replace(' ','',$alanlar[$key]));
  232.                 if($this->seo($alanlar[$key])=='resim'){
  233.                     if(empty($resim)){ $veri[]= 'NULL'; }
  234.                     else{
  235.                         $veri[]="'".$resim."'";
  236.                     }
  237.                 }
  238.                 elseif ($this->seo($alanlar[$key])=='resimler'){
  239.                     if(empty($resimler)){ $veri[]= 'NULL'; }
  240.                     else{
  241.                         $veri[]="'".$resimler."'";
  242.                     }
  243.                 }
  244.                 elseif(strpos($this->seo($alanlar[$key]),'resim')==true){
  245.                     if(empty($dResim[$key])){ $veri[]= 'NULL'; }
  246.                     else{
  247.                         $veri[]="'".$dResim[$key]."'";
  248.                     }
  249.                 }
  250.                 elseif ($this->seo($alanlar[$key])=='seo-url'){
  251.                     $veri[]="'".$this->seo($request->request->get($this->seo($alanlar[$key]))[$key2],$dil['id'])."'";
  252.                 }
  253.                 elseif ($tip=='datetime'){
  254.                     $v $request->request->get($this->seo($alanlar[$key]))[$key2];
  255.                     if(empty($v)){
  256.                         $veri[]= 'NULL';
  257.                     }else {
  258.                         $suan = new \DateTime('now');
  259.                         $v explode('/'$v);
  260.                         $v $v[2] . '-' $v[1] . '-' $v[0] . ' ' $suan->format('H:i:s');
  261.                         $veri[]="'".$v."'";
  262.                     }
  263.                 }else{
  264.                     $v $request->request->get($this->seo($alanlar[$key]))[$key2];
  265.                     $v htmlentities($vENT_QUOTES"UTF-8");
  266.                     if(empty($v)){
  267.                         $veri[]= 'NULL';
  268.                     }else{
  269.                         $veri[]="'".$v."'";
  270.                     }
  271.                 }
  272.             }
  273.             $veri implode(',',$veri);
  274.             $alan implode(',',$alan);
  275.             $RAW_QUERY "INSERT INTO ".$this->seo(str_replace(' ','',$sayfa[0]['madi']))."(dil_id,dilgrup,sayfa_id,kategori_id,".$alan.") VALUES(".$dil['id'].",$s_dilgrup,$dilgrup,$kategori,$veri)";
  276.             $statement $em->getConnection()->prepare($RAW_QUERY);
  277.             $statement->execute();
  278.         }
  279.         return new Response('');
  280.     }
  281.     /**
  282.      * @Route("/admin/multi-content/{dilgrup}/edit/{vDilgrup}", name="cokveri_duzenle")
  283.      */
  284.     public function duzenle($dilgrup,$vDilgrup): Response
  285.     {
  286.         $em $this->getDoctrine()->getManager();
  287.         $dilgrupBul $this->dilgrupBul('Sayfa',$dilgrup);
  288.         $qb $em->createQueryBuilder();
  289.         $sayfa=$qb->select('s.id,s.adi,m.alan,m.tip,m.bosluk,m.cokluDil,m.tabloAdi,s.dilgrup,s.kategori,s.seo,s.icIcerik,s.title,s.description')
  290.             ->from('App:Sayfa''s')
  291.             ->join('s.modul''m')
  292.             ->where('s.dilgrup='.$dilgrupBul)
  293.             ->orderBy('s.dil')
  294.             ->getQuery()
  295.             ->getScalarResult();
  296.         $alanlar explode(',',$sayfa[0]['alan']);
  297.         $tipler explode(',',$sayfa[0]['tip']);
  298.         $bosluklar explode(',',$sayfa[0]['bosluk']);
  299.         $qb $em->createQueryBuilder();
  300.         $diller=$qb->select('d.id,d.kisa')
  301.             ->from('App:Dil''d')
  302.             ->where("d.aktif=1")
  303.             ->orderBy('d.id')
  304.             ->getQuery()
  305.             ->getScalarResult();
  306.         foreach ($tipler as $key=>$tip) {
  307.             $alan[] = 't.'.$this->seo(str_replace(' '''$alanlar[$key]));
  308.         }
  309.         $alan implode(',',$alan);
  310.         $qb $em->createQueryBuilder();
  311.         $veriler=$qb->select($alan.',t.dilgrup,k.id as k_id')
  312.             ->from('App:'.$sayfa[0]['tabloAdi'], 't')
  313.             ->leftjoin('t.kategori','k')
  314.             ->where('t.dilgrup='.$vDilgrup)
  315.             ->orderBy('t.dil')
  316.             ->getQuery()
  317.             ->getScalarResult();
  318.         $qb $em->createQueryBuilder();
  319.         $kategoriler=$qb->select('k.id,k.dilgrup,k.adi')
  320.             ->from('App:Kategori''k')
  321.             ->join('k.sayfa','s')
  322.             ->where('s.id='.$dilgrup.' and k.ustid=0')
  323.             ->groupBy('k.dilgrup')
  324.             ->orderBy('k.sira','ASC')
  325.             ->getQuery()
  326.             ->getScalarResult();
  327.         return $this->render('panel/icerik/cokveri/duzenle.html.twig',array('sayfa'=>$sayfa,'diller'=>$diller,'veriler'=>$veriler,'kategoriler'=>$kategoriler,'alanlar'=>$alanlar));
  328.     }
  329.     /**
  330.      * @Route("/admin/multi-content/{dilgrup}/edit/{vDilgrup}/save", name="cokveri_duzenle_kaydet")
  331.      */
  332.     public function duzenle_kaydet($dilgrup,$vDilgrup,Request $request): Response
  333.     {
  334.         $em $this->getDoctrine()->getManager();
  335.         $qb $em->createQueryBuilder();
  336.         $sayfa=$qb->select('s.id,s.adi,m.alan,m.tip,m.bosluk,m.cokluDil,s.dilgrup,m.adi as madi,m.tabloAdi,s.kategori,s.resimBoyut')
  337.             ->from('App:Sayfa''s')
  338.             ->join('s.modul''m')
  339.             ->where('s.id='.$dilgrup)
  340.             ->getQuery()
  341.             ->getScalarResult();
  342.         if ($sayfa[0]['resimBoyut']!='') {
  343.             $sResimBoyut explode('x'$sayfa[0]['resimBoyut']);
  344.         }
  345.         $qb $em->createQueryBuilder();
  346.         $diller=$qb->select('d.id,d.kisa')
  347.             ->from('App:Dil''d')
  348.             ->where("d.aktif=1")
  349.             ->orderBy('d.id')
  350.             ->getQuery()
  351.             ->getScalarResult();
  352.         $alanlar explode(',',$sayfa[0]['alan']);
  353.         $tipler explode(',',$sayfa[0]['tip']);
  354.         $bosluklar explode(',',$sayfa[0]['bosluk']);
  355.         $resimVar 0;
  356.         $dResim = [];
  357.         $dResimVar = [];
  358.         $resim '';
  359.         $resimler '';
  360.         //resim yüklemeleri tamam!
  361.         foreach ($tipler as $key=>$tip){
  362.             if($this->seo($alanlar[$key])=='resim'){
  363.                 if (!empty($_FILES['rr_'.$this->seo($alanlar[$key])]['name'])) {
  364.                     $resim=$this->seo($sayfa[0]['adi']).'_'.time().'_'.rand(100000,999999);
  365.                     move_uploaded_file($_FILES['rr_'.$this->seo($alanlar[$key])]['tmp_name'], "gecici_yukleme/".$resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  366.                     if ($sayfa[0]['resimBoyut']!='') {
  367.                         $image = new ImageResize('gecici_yukleme/' $resim $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type']));
  368.                         $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  369.                         $image->save('gecici_yukleme/' $resim $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type']));
  370.                     }
  371.                     $resim $this->imageResizer($resim.$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']),$resim);
  372.                     $this->uploadFile($resim);
  373.                     $resimVar=1;
  374.                 }
  375.             }
  376.             elseif ($this->seo($alanlar[$key])=='resimler'){
  377.                 if (!empty($_FILES['rr_'.$this->seo($alanlar[$key])]['name'])) {
  378.                     for ($i 0$i count($_FILES['rr_' $this->seo($alanlar[$key])]['name']); $i++) {
  379.                         $x $this->seo($sayfa[0]['adi']) . '_' time() . '_' rand(100000999999);
  380.                         move_uploaded_file($_FILES['rr_' $this->seo($alanlar[$key])]['tmp_name'][$i], "gecici_yukleme/" $x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]));
  381.                         if ($sayfa[0]['resimBoyut']!='') {
  382.                             $image = new ImageResize('gecici_yukleme/' $x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]));
  383.                             $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  384.                             $image->save('gecici_yukleme/' $x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]));
  385.                         }
  386.                         $x $this->imageResizer($x $this->uzantiBul($_FILES['rr_' $this->seo($alanlar[$key])]['type'][$i]), $x);
  387.                         $this->uploadFile($x);
  388.                         $resimler .= $x ',';
  389.                     }
  390.                 }
  391.             }
  392.             elseif(strpos($this->seo($alanlar[$key]),'resim')==true){
  393.                 if (!empty($_FILES['rr_'.$this->seo($alanlar[$key])]['name'])) {
  394.                     $dResim[$key]=$this->seo($sayfa[0]['adi']).'_'.time().'_'.rand(100000,999999);
  395.                     move_uploaded_file($_FILES['rr_'.$this->seo($alanlar[$key])]['tmp_name'], "gecici_yukleme/".$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  396.                     if ($sayfa[0]['resimBoyut']!='') {
  397.                         $image = new ImageResize('gecici_yukleme/' .$dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  398.                         $image->resize($sResimBoyut[0], $sResimBoyut[1], $allow_enlarge True);
  399.                         $image->save('gecici_yukleme/' $dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']));
  400.                     }
  401.                     $dResim[$key] = $this->imageResizer($dResim[$key].$this->uzantiBul($_FILES['rr_'.$this->seo($alanlar[$key])]['type']),$dResim[$key]);
  402.                     $this->uploadFile($dResim[$key]);
  403.                     $dResimVar[$key]=1;
  404.                 }else{
  405.                     $dResimVar[$key]=0;
  406.                 }
  407.             }
  408.         }
  409.         if(empty($resim)){ $resim=null; } else{ $resim str_replace('.belirsiz','.jpg',$resim); }
  410.         if(empty($resimler)){ $resimler=null; } else{ $resimler str_replace('.belirsiz','.jpg',$resimler); }
  411.         foreach ($dResim as $keyy=>$dR){
  412.             if(empty($dR)){ $dResim[$keyy]=null; } else{ $dResim[$keyy] = str_replace('.belirsiz','.jpg',$dR); }
  413.         }
  414.         $sAlanlar '';
  415.         foreach ($alanlar as $a){
  416.             $sAlanlar.=',t.'.$this->seo(str_replace(' ','',$a));
  417.         }
  418.         if($resimVar==1){
  419.             $qb $em->createQueryBuilder();
  420.             $bulunanVeri=$qb->select('t.id'.$sAlanlar)
  421.                 ->from('App:'.$sayfa[0]['tabloAdi'], 't')
  422.                 ->join('t.sayfa','s')
  423.                 ->where('s.id='.$dilgrup.' and t.dilgrup='.$vDilgrup)
  424.                 ->orderBy('t.dil')
  425.                 ->getQuery()
  426.                 ->getScalarResult();
  427.             if(strstr($bulunanVeri[0]['resim'], ',')) {
  428.                 $resimlerim explode(','$bulunanVeri[0]['resim']);
  429.                 foreach ($resimlerim as $r) {
  430.                     if ($r != '') {
  431.                         //@unlink('uploads/' . $r);
  432.                         $this->deleteFile($r);
  433.                     }
  434.                 }
  435.             }else{
  436.                 //@unlink('uploads/' . $bulunanVeri[0]['resim']);
  437.                 $this->deleteFile($bulunanVeri[0]['resim']);
  438.             }
  439.         } else {
  440.             $qb $em->createQueryBuilder();
  441.             $bulunanVeri=$qb->select('t.id'.$sAlanlar)
  442.                 ->from('App:'.$sayfa[0]['tabloAdi'], 't')
  443.                 ->join('t.sayfa','s')
  444.                 ->where('s.id='.$dilgrup.' and t.dilgrup='.$vDilgrup)
  445.                 ->orderBy('t.dil')
  446.                 ->getQuery()
  447.                 ->getScalarResult();
  448.         }
  449.         if($sayfa[0]['kategori']==1) {
  450.             $kategori $request->request->get('kategori');
  451.         }else{
  452.             $kategori null;
  453.         }
  454.         foreach ($diller as $key2=>$dil){
  455.             if(count($bulunanVeri)>0) {
  456.                 $qb $em->createQueryBuilder();
  457.                 $guncelVeri $qb->update('App:'.$sayfa[0]['tabloAdi'], 't');
  458.                 $guncelVeri->set('t.kategori'':kategori');
  459.                 $guncelVeri->setParameter('kategori'$kategori);
  460.             }
  461.             foreach ($tipler as $key=>$tip){
  462.                 $asilAlan=$this->seo(str_replace(' ','',$alanlar[$key]));
  463.                 if($this->seo($alanlar[$key])=='resim'){
  464.                     if(!empty($resim)){
  465.                         if(count($bulunanVeri)>0) {
  466.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  467.                             $guncelVeri->setParameter($asilAlan$resim);
  468.                         }
  469.                     }
  470.                 }
  471.                 elseif ($this->seo($alanlar[$key])=='resimler'){
  472.                     if(!empty($resimler)){
  473.                         if(count($bulunanVeri)>0) {
  474.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  475.                             $guncelVeri->setParameter($asilAlan$bulunanVeri[0]['resimler'].$resimler);
  476.                         }
  477.                     }
  478.                 }
  479.                 elseif(strpos($this->seo($alanlar[$key]),'resim')==true){
  480.                     if($dResimVar[$key]==1) {
  481.                         //@unlink('uploads/' . $bulunanVeri[0][$asilAlan]);
  482.                         $this->deleteFile($bulunanVeri[0][$asilAlan]);
  483.                     }
  484.                     if(!empty($dResim[$key])){
  485.                         if(count($bulunanVeri)>0) {
  486.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  487.                             $guncelVeri->setParameter($asilAlan$dResim[$key]);
  488.                         }
  489.                     }
  490.                 }
  491.                 elseif ($this->seo($alanlar[$key])=='seo-url'){
  492.                     if(count($bulunanVeri)>0) {
  493.                         $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  494.                         $guncelVeri->setParameter($asilAlan$this->seo($request->request->get($this->seo($alanlar[$key]))[$key2],$dil['id']));
  495.                     }
  496.                 }
  497.                 elseif ($tip=='datetime'){
  498.                     $v $request->request->get($this->seo($alanlar[$key]))[$key2];
  499.                     if(empty($v)){
  500.                         if(count($bulunanVeri)>0) {
  501.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  502.                             $guncelVeri->setParameter($asilAlannull);
  503.                         }
  504.                     }else {
  505.                         $suan = new \DateTime('now');
  506.                         $v explode('/'$v);
  507.                         $v = new \DateTime($v[2] . '-' $v[1] . '-' $v[0] . ' ' $suan->format('H:i:s'));
  508.                         if(count($bulunanVeri)>0) {
  509.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  510.                             $guncelVeri->setParameter($asilAlan$v);
  511.                         }
  512.                     }
  513.                 }
  514.                 else{
  515.                     $v $request->request->get($this->seo($alanlar[$key]))[$key2];
  516.                     if(empty($v)){
  517.                         if(count($bulunanVeri)>0) {
  518.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  519.                             $guncelVeri->setParameter($asilAlannull);
  520.                         }
  521.                     }else{
  522.                         if(count($bulunanVeri)>0) {
  523.                             $guncelVeri->set('t.' $asilAlan':' $asilAlan);
  524.                             $guncelVeri->setParameter($asilAlan$v);
  525.                         }
  526.                     }
  527.                 }
  528.             }
  529.             $guncelVeri->where("t.id = ".$bulunanVeri[$key2]['id'])
  530.                 ->getQuery()
  531.                 ->execute();
  532.         }
  533.         return new Response('');
  534.     }
  535.     /**
  536.      * @Route("/admin/multi-content/{dilgrup}/delete", name="cokveri_sil")
  537.      */
  538.     public function sil($dilgrup,Request $request): Response
  539.     {
  540.         $em $this->getDoctrine()->getManager();
  541.         $dilgrupp $request->request->get('dilgrup');
  542.         $em $this->getDoctrine()->getManager();
  543.         $qb $em->createQueryBuilder();
  544.         $sayfa=$qb->select('m.tabloAdi,m.alan')
  545.             ->from('App:Sayfa''s')
  546.             ->join('s.modul''m')
  547.             ->where('s.id='.$dilgrup)
  548.             ->getQuery()
  549.             ->getScalarResult();
  550.         $alanlar explode(',',$sayfa[0]['alan']);
  551.         $r='';
  552.         $aa=[];
  553.         foreach ($alanlar as $a){
  554.             if($a =='resim'){
  555.                 $r.='k.resim,';
  556.                 $aa[]='resim';
  557.             }
  558.             elseif($a =='resimler'){
  559.                 $r.='k.resimler,';
  560.                 $aa[]='resimler';
  561.             }
  562.             elseif(strpos($a,'resim')==true){
  563.                 $r.='k.'.$this->seo(str_replace(' ','',$a)).',';
  564.                 $aa[]=$this->seo(str_replace(' ','',$a));
  565.             }
  566.         }
  567.         $qb $em->createQueryBuilder();
  568.         $icerik=$qb->select($r.'k.id')
  569.             ->from('App:'.$sayfa[0]['tabloAdi'], 'k')
  570.             ->where('k.dilgrup='.$dilgrupp)
  571.             ->orderBy('k.sira','ASC')
  572.             ->getQuery()
  573.             ->getScalarResult();
  574.         foreach ($aa as $aR){
  575.             if($aR=='resim'){
  576.                 if(!empty($icerik[0]['resim'])) {
  577.                     //@unlink('uploads/' . $icerik[0]['resim']);
  578.                     $this->deleteFile($icerik[0]['resim']);
  579.                 }
  580.             }
  581.             elseif($aR=='resimler'){
  582.                 if(!empty($icerik[0]['resimler'])) {
  583.                     $resimler explode(','$icerik[0]['resimler']);
  584.                     foreach ($resimler as $rr) {
  585.                         if ($rr!=''){
  586.                             //@unlink('uploads/' . $rr);
  587.                             $this->deleteFile($rr);
  588.                         }
  589.                     }
  590.                 }
  591.             }
  592.             elseif(strpos($aR,'resim')==true){
  593.                 if(!empty($icerik[0][$aR])) {
  594.                     //@unlink('uploads/' . $icerik[0][$aR]);
  595.                     $this->deleteFile($icerik[0][$aR]);
  596.                 }
  597.             }
  598.         }
  599.         $qb=$em->createQueryBuilder();
  600.         $qb->delete('App:'.$sayfa[0]['tabloAdi'], 'b')
  601.             ->where('b.dilgrup='.$dilgrupp)
  602.             ->getQuery()
  603.             ->execute();
  604.         $em->flush();
  605.         return new Response('');
  606.     }
  607.     /**
  608.      * @Route("/admin/multi-content/{dilgrup}/sort", name="cokveri_sirala")
  609.      */
  610.     public function sirala($dilgrupRequest $request): Response
  611.     {
  612.         $em $this->getDoctrine()->getManager();
  613.         $listItem $request->request->get('listItem');
  614.         $qb $em->createQueryBuilder();
  615.         $sayfa=$qb->select('m.tabloAdi')
  616.             ->from('App:Sayfa''s')
  617.             ->join('s.modul''m')
  618.             ->where('s.id='.$dilgrup)
  619.             ->getQuery()
  620.             ->getScalarResult();
  621.         foreach ($listItem as $sira=>$id){
  622.             $qb $em->createQueryBuilder();
  623.             $q $qb->update('App:'.$sayfa[0]['tabloAdi'], 's')
  624.                 ->set('s.sira'':sira')
  625.                 ->where("s.dilgrup=$id")
  626.                 ->setParameter('sira'$sira)
  627.                 ->getQuery()
  628.                 ->execute();
  629.         }
  630.         return new Response('');
  631.     }
  632.     /**
  633.      * @Route("/admin/multi-content/{dilgrup}/image-delete", name="cokveri_gorsel_sil")
  634.      */
  635.     public function gorsel_sil($dilgrupRequest $request): Response
  636.     {
  637.         $em $this->getDoctrine()->getManager();
  638.         $vDilgrup $request->request->get('dilgrup');
  639.         $adi $request->request->get('adi');
  640.         $qb $em->createQueryBuilder();
  641.         $sayfa=$qb->select('m.tabloAdi')
  642.             ->from('App:Sayfa''s')
  643.             ->join('s.modul''m')
  644.             ->where('s.id='.$dilgrup)
  645.             ->getQuery()
  646.             ->getScalarResult();
  647.         $qb $em->createQueryBuilder();
  648.         $veri=$qb->select('v.id,v.resimler')
  649.             ->from('App:'.$sayfa[0]['tabloAdi'], 'v')
  650.             ->join('v.sayfa','s')
  651.             ->where('s.id='.$dilgrup.' and v.dilgrup='.$vDilgrup)
  652.             ->getQuery()
  653.             ->getScalarResult();
  654.         $yeni_resimler='';
  655.         $resimler explode(',',$veri[0]['resimler']);
  656.         foreach ($resimler as $resim){
  657.             if(!empty($resim)) {
  658.                 if ($adi != $resim) {
  659.                     $yeni_resimler .= $resim ',';
  660.                 }
  661.             }
  662.         }
  663.        //@unlink('uploads/'.$adi);
  664.         $this->deleteFile($adi);
  665.         $qb $em->createQueryBuilder();
  666.         $q $qb->update('App:'.$sayfa[0]['tabloAdi'], 's')
  667.             ->set('s.resimler'':resimler')
  668.             ->where("s.dilgrup=$vDilgrup")
  669.             ->setParameter('resimler'$yeni_resimler)
  670.             ->getQuery()
  671.             ->execute();
  672.         return new Response('');
  673.     }
  674.     /**
  675.      * @Route("/admin/multi-content/{dilgrup}/image-sort", name="cokveri_gorsel_sirala")
  676.      */
  677.     public function gorsel_sirala($dilgrupRequest $request): Response
  678.     {
  679.         $em $this->getDoctrine()->getManager();
  680.         $vDilgrup $request->request->get('dilgrup');
  681.         $resimler $request->request->get('resimler');
  682.         $qb $em->createQueryBuilder();
  683.         $sayfa=$qb->select('m.tabloAdi')
  684.             ->from('App:Sayfa''s')
  685.             ->join('s.modul''m')
  686.             ->where('s.id='.$dilgrup)
  687.             ->getQuery()
  688.             ->getScalarResult();
  689.         $qb $em->createQueryBuilder();
  690.         $q $qb->update('App:'.$sayfa[0]['tabloAdi'], 's')
  691.             ->set('s.resimler'':resimler')
  692.             ->where("s.dilgrup=$vDilgrup")
  693.             ->setParameter('resimler'$resimler)
  694.             ->getQuery()
  695.             ->execute();
  696.         return new Response('');
  697.     }
  698.     /**
  699.      * @Route("/admin/multi-content/{dilgrup}/temizle", name="cokveri_temizle")
  700.      */
  701.     public function temizle($dilgrup): Response
  702.     {
  703.         $em $this->getDoctrine()->getManager();
  704.         $qb $em->createQueryBuilder();
  705.         $sayfa=$qb->select('m.tabloAdi,m.alan')
  706.             ->from('App:Sayfa''s')
  707.             ->join('s.modul''m')
  708.             ->where('s.id='.$dilgrup)
  709.             ->getQuery()
  710.             ->getScalarResult();
  711.         $alanlar explode(',',$sayfa[0]['alan']);
  712.         $r='';
  713.         foreach ($alanlar as $a){
  714.             if($a =='resim'){
  715.                 $r.='k.resim,';
  716.             }
  717.             if($a =='resimler'){
  718.                 $r.='k.resimler,';
  719.             }
  720.         }
  721.         $qb $em->createQueryBuilder();
  722.         $icerikler=$qb->select($r.'k.id')
  723.             ->from('App:'.$sayfa[0]['tabloAdi'], 'k')
  724.             ->join('k.sayfa','s')
  725.             ->where('s.id='.$dilgrup)
  726.             ->orderBy('k.sira','ASC')
  727.             ->getQuery()
  728.             ->getScalarResult();
  729.         foreach ($icerikler as $icerik){
  730.             if($r=='k.resim,'){
  731.                 if(!empty($icerik['resim'])) {
  732.                     //@unlink('uploads/' . $icerik['resim']);
  733.                     $this->deleteFile($icerik['resim']);
  734.                 }
  735.             }
  736.             if($r=='k.resimler,'){
  737.                 if(!empty($icerik['resimler'])) {
  738.                     $resimler explode(','$icerik['resimler']);
  739.                     foreach ($resimler as $rr) {
  740.                         if ($rr!=''){
  741.                             //@unlink('uploads/' . $rr);
  742.                             $this->deleteFile($rr);
  743.                         }
  744.                     }
  745.                 }
  746.             }
  747.         }
  748.         $qb=$em->createQueryBuilder();
  749.         $qb->delete('App:'.$sayfa[0]['tabloAdi'], 'b')
  750.             ->where('b.sayfa='.$dilgrup)
  751.             ->getQuery()
  752.             ->execute();
  753.         $em->flush();
  754.         return new Response('');
  755.     }
  756. }