Example #1
0
 /**
  * @Route("/{identifier}/edit/{id}", name="edit_article")
  * @ParamConverter("article", class="hkgbiWebBundle:Article")
  */
 public function editArticle(Article $article, Request $request, $identifier, $id)
 {
     $em = $this->getDoctrine()->getManager();
     if ($identifier == "about_us" || $identifier == "service") {
         if ($identifier == "about_us") {
             $this->deleteMem("article_3");
         } else {
             $this->deleteMem("article_14");
         }
     }
     $module_obj = $em->getRepository('hkgbiWebBundle:Module')->findBy(array('identifier' => $identifier));
     $categories = $module_obj[0]->getCategories();
     $cate_id = null;
     $thumb = $article->getImageFile();
     $thumb_name = $article->getImageName();
     if ($article->getCategory()) {
         $cate_id = $article->getCategory()->getId();
     }
     $form = $this->createForm(new ArticleType($module_obj[0]), $article);
     $form->handleRequest($request);
     if ($form->isSubmitted()) {
         //写入选择的分类对象
         if (isset($_POST['article']['categories'])) {
             $category = $em->getRepository('hkgbiWebBundle:Category')->find($_POST['article']['categories']);
             $article->setCategory($category);
         }
         //检查是否有上传缩略图动作,如无,则使用原来的图
         if (!isset($_POST['product']['imageFile']['file'])) {
             $article->setImageName($thumb_name);
         }
         $em->flush();
         $article_list_url = $this->generateUrl('article_list', array('identifier' => $identifier));
         return new Response("<script>alert('修改成功!');window.location.href='{$article_list_url}'</script>");
     }
     return $this->render('hkgbiWebBundle:backend:edit_article.html.twig', array('article' => $article, 'form' => $form->createView(), 'id' => $id, 'categories' => $categories, 'cate_id' => $cate_id, 'identifier' => $identifier, 'thumb' => $thumb));
 }