Added very-very basic forum functionality
This commit is contained in:
		
							
								
								
									
										24
									
								
								TODO
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								TODO
									
									
									
									
									
								
							| @@ -9,17 +9,7 @@ UserData | ||||
| 	google talk address | ||||
| 	google talk address public? | ||||
|  | ||||
| Permissions | ||||
| 	id | ||||
| 	name | ||||
| 	description | ||||
|  | ||||
| Roles | ||||
| 	id | ||||
| 	name | ||||
| 	permission list | ||||
|  | ||||
| Hírek | ||||
| News | ||||
| 	id | ||||
| 	title | ||||
| 	slug | ||||
| @@ -36,20 +26,8 @@ BlogPost | ||||
| 	text | ||||
| 	poster | ||||
|  | ||||
| ForumTopicGroup | ||||
| 	id | ||||
| 	title | ||||
| 	slug | ||||
| 	creator | ||||
| 	timestamp | ||||
|  | ||||
| ForumTopic | ||||
| 	id | ||||
| 	title | ||||
| 	slug | ||||
| 	creator | ||||
| 	roles who can access it | ||||
| 	topic group | ||||
|  | ||||
| ForumPost | ||||
| 	id | ||||
|   | ||||
| @@ -26,9 +26,4 @@ class DefaultController extends Controller | ||||
| 			'article' => $article | ||||
| 		)); | ||||
| 	} | ||||
|  | ||||
| 	public function forumMainAction() | ||||
| 	{ | ||||
| 		return $this->forward('KekRozsakFrontBundle:Default:homepage');	 | ||||
| 	} | ||||
| } | ||||
|   | ||||
							
								
								
									
										46
									
								
								src/KekRozsak/FrontBundle/Controller/ForumController.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								src/KekRozsak/FrontBundle/Controller/ForumController.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | ||||
| <?php | ||||
|  | ||||
| namespace KekRozsak\FrontBundle\Controller; | ||||
|  | ||||
| use Symfony\Bundle\FrameworkBundle\Controller\Controller; | ||||
|  | ||||
| class ForumController extends Controller | ||||
| { | ||||
| 	public function mainAction() | ||||
| 	{ | ||||
| 		// TODO: Protect this controller with roles? It is also defined in security.yml | ||||
| 		$groupRepo = $this->getDoctrine()->getRepository('KekRozsakFrontBundle:ForumTopicGroup'); | ||||
|  | ||||
| 		$topicGroups = $groupRepo->findAll(); | ||||
|  | ||||
| 		return $this->render('KekRozsakFrontBundle:Forum:topic_group_list.html.twig', array( | ||||
| 			'topicGroups' => $topicGroups, | ||||
| 		)); | ||||
| 	} | ||||
|  | ||||
| 	public function topicListAction($topicGroupSlug) | ||||
| 	{ | ||||
| 		$groupRepo = $this->getDoctrine()->getRepository('KekRozsakFrontBundle:ForumTopicGroup'); | ||||
| 		if (!($topicGroup = $groupRepo->findOneBySlug($topicGroupSlug))) | ||||
| 			throw $this->createNotFoundException('A kért témakör nem létezik!'); | ||||
|  | ||||
| 		return $this->render('KekRozsakFrontBundle:Forum:topic_list.html.twig', array( | ||||
| 			'topicGroup' => $topicGroup, | ||||
| 		)); | ||||
| 	} | ||||
|  | ||||
| 	public function postListAction($topicGroupSlug, $topicSlug) | ||||
| 	{ | ||||
| 		$groupRepo = $this->getDoctrine()->getRepository('KekRozsakFrontBundle:ForumTopicGroup'); | ||||
| 		if (!($topicGroup = $groupRepo->findOneBySlug($topicGroupSlug))) | ||||
| 			throw $this->createNotFoundException('A kért témakör nem létezik!'); | ||||
| 		$topicRepo = $this->getDoctrine()->getRepository('KekRozsakFrontBundle:ForumTopic'); | ||||
| 		if (!($topic = $topicRepo->findOneBy(array('topic_group' => $topicGroup, 'slug' => $topicSlug)))) | ||||
| 			throw $this->createNotFoundException('A kért téma nem létezik!'); | ||||
| 		return $this->render('KekRozsakFrontBundle:Forum:post_list.html.twig', array( | ||||
| 			'topicGroup' => $topicGroup, | ||||
| 			'topic'      => $topic, | ||||
| 		)); | ||||
| 	} | ||||
| } | ||||
|  | ||||
							
								
								
									
										243
									
								
								src/KekRozsak/FrontBundle/Entity/ForumTopic.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										243
									
								
								src/KekRozsak/FrontBundle/Entity/ForumTopic.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,243 @@ | ||||
| <?php | ||||
|  | ||||
| namespace KekRozsak\FrontBundle\Entity; | ||||
|  | ||||
| use Doctrine\ORM\Mapping as ORM; | ||||
|  | ||||
| /** | ||||
|  * KekRozsak\FrontBundle\Entity\ForumTopic | ||||
|  */ | ||||
| class ForumTopic | ||||
| { | ||||
|     /** | ||||
|      * @var integer $id | ||||
|      */ | ||||
|     private $id; | ||||
|  | ||||
|     /** | ||||
|      * @var string $title | ||||
|      */ | ||||
|     private $title; | ||||
|  | ||||
|     /** | ||||
|      * @var string $slug | ||||
|      */ | ||||
|     private $slug; | ||||
|  | ||||
|     /** | ||||
|      * @var datetime $created_at | ||||
|      */ | ||||
|     private $created_at; | ||||
|  | ||||
|     /** | ||||
|      * @var datetime $updated_at | ||||
|      */ | ||||
|     private $updated_at; | ||||
|  | ||||
|     /** | ||||
|      * @var text $update_reason | ||||
|      */ | ||||
|     private $update_reason; | ||||
|  | ||||
|     /** | ||||
|      * @var KekRozsak\FrontBundle\Entity\User | ||||
|      */ | ||||
|     private $created_by; | ||||
|  | ||||
|     /** | ||||
|      * @var KekRozsak\FrontBundle\Entity\User | ||||
|      */ | ||||
|     private $updated_by; | ||||
|  | ||||
|     /** | ||||
|      * @var KekRozsak\FrontBundle\Entity\ForumTopicGroup | ||||
|      */ | ||||
|     private $topic_group; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * Get id | ||||
|      * | ||||
|      * @return integer  | ||||
|      */ | ||||
|     public function getId() | ||||
|     { | ||||
|         return $this->id; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set title | ||||
|      * | ||||
|      * @param string $title | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setTitle($title) | ||||
|     { | ||||
|         $this->title = $title; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get title | ||||
|      * | ||||
|      * @return string  | ||||
|      */ | ||||
|     public function getTitle() | ||||
|     { | ||||
|         return $this->title; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set slug | ||||
|      * | ||||
|      * @param string $slug | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setSlug($slug) | ||||
|     { | ||||
|         $this->slug = $slug; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get slug | ||||
|      * | ||||
|      * @return string  | ||||
|      */ | ||||
|     public function getSlug() | ||||
|     { | ||||
|         return $this->slug; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set created_at | ||||
|      * | ||||
|      * @param datetime $createdAt | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setCreatedAt($createdAt) | ||||
|     { | ||||
|         $this->created_at = $createdAt; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get created_at | ||||
|      * | ||||
|      * @return datetime  | ||||
|      */ | ||||
|     public function getCreatedAt() | ||||
|     { | ||||
|         return $this->created_at; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set updated_at | ||||
|      * | ||||
|      * @param datetime $updatedAt | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setUpdatedAt($updatedAt) | ||||
|     { | ||||
|         $this->updated_at = $updatedAt; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get updated_at | ||||
|      * | ||||
|      * @return datetime  | ||||
|      */ | ||||
|     public function getUpdatedAt() | ||||
|     { | ||||
|         return $this->updated_at; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set update_reason | ||||
|      * | ||||
|      * @param text $updateReason | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setUpdateReason($updateReason) | ||||
|     { | ||||
|         $this->update_reason = $updateReason; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get update_reason | ||||
|      * | ||||
|      * @return text  | ||||
|      */ | ||||
|     public function getUpdateReason() | ||||
|     { | ||||
|         return $this->update_reason; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set created_by | ||||
|      * | ||||
|      * @param KekRozsak\FrontBundle\Entity\User $createdBy | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setCreatedBy(\KekRozsak\FrontBundle\Entity\User $createdBy = null) | ||||
|     { | ||||
|         $this->created_by = $createdBy; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get created_by | ||||
|      * | ||||
|      * @return KekRozsak\FrontBundle\Entity\User  | ||||
|      */ | ||||
|     public function getCreatedBy() | ||||
|     { | ||||
|         return $this->created_by; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set updated_by | ||||
|      * | ||||
|      * @param KekRozsak\FrontBundle\Entity\User $updatedBy | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setUpdatedBy(\KekRozsak\FrontBundle\Entity\User $updatedBy = null) | ||||
|     { | ||||
|         $this->updated_by = $updatedBy; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get updated_by | ||||
|      * | ||||
|      * @return KekRozsak\FrontBundle\Entity\User  | ||||
|      */ | ||||
|     public function getUpdatedBy() | ||||
|     { | ||||
|         return $this->updated_by; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set topic_group | ||||
|      * | ||||
|      * @param KekRozsak\FrontBundle\Entity\ForumTopicGroup $topicGroup | ||||
|      * @return ForumTopic | ||||
|      */ | ||||
|     public function setTopicGroup(\KekRozsak\FrontBundle\Entity\ForumTopicGroup $topicGroup = null) | ||||
|     { | ||||
|         $this->topic_group = $topicGroup; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get topic_group | ||||
|      * | ||||
|      * @return KekRozsak\FrontBundle\Entity\ForumTopicGroup  | ||||
|      */ | ||||
|     public function getTopicGroup() | ||||
|     { | ||||
|         return $this->topic_group; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										262
									
								
								src/KekRozsak/FrontBundle/Entity/ForumTopicGroup.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										262
									
								
								src/KekRozsak/FrontBundle/Entity/ForumTopicGroup.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,262 @@ | ||||
| <?php | ||||
|  | ||||
| namespace KekRozsak\FrontBundle\Entity; | ||||
|  | ||||
| use Doctrine\ORM\Mapping as ORM; | ||||
|  | ||||
| /** | ||||
|  * KekRozsak\FrontBundle\Entity\ForumTopicGroup | ||||
|  */ | ||||
| class ForumTopicGroup | ||||
| { | ||||
|     /** | ||||
|      * @var integer $id | ||||
|      */ | ||||
|     private $id; | ||||
|  | ||||
|     /** | ||||
|      * @var string $title | ||||
|      */ | ||||
|     private $title; | ||||
|  | ||||
|     /** | ||||
|      * @var string $slug | ||||
|      */ | ||||
|     private $slug; | ||||
|  | ||||
|     /** | ||||
|      * @var datetime $created_at | ||||
|      */ | ||||
|     private $created_at; | ||||
|  | ||||
|     /** | ||||
|      * @var datetime $updated_at | ||||
|      */ | ||||
|     private $updated_at; | ||||
|  | ||||
|     /** | ||||
|      * @var text $update_reason | ||||
|      */ | ||||
|     private $update_reason; | ||||
|  | ||||
|     /** | ||||
|      * @var KekRozsak\FrontBundle\Entity\User | ||||
|      */ | ||||
|     private $created_by; | ||||
|  | ||||
|     /** | ||||
|      * @var KekRozsak\FrontBundle\Entity\User | ||||
|      */ | ||||
|     private $updated_by; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * Get id | ||||
|      * | ||||
|      * @return integer  | ||||
|      */ | ||||
|     public function getId() | ||||
|     { | ||||
|         return $this->id; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set title | ||||
|      * | ||||
|      * @param string $title | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setTitle($title) | ||||
|     { | ||||
|         $this->title = $title; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get title | ||||
|      * | ||||
|      * @return string  | ||||
|      */ | ||||
|     public function getTitle() | ||||
|     { | ||||
|         return $this->title; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set slug | ||||
|      * | ||||
|      * @param string $slug | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setSlug($slug) | ||||
|     { | ||||
|         $this->slug = $slug; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get slug | ||||
|      * | ||||
|      * @return string  | ||||
|      */ | ||||
|     public function getSlug() | ||||
|     { | ||||
|         return $this->slug; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set created_at | ||||
|      * | ||||
|      * @param datetime $createdAt | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setCreatedAt($createdAt) | ||||
|     { | ||||
|         $this->created_at = $createdAt; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get created_at | ||||
|      * | ||||
|      * @return datetime  | ||||
|      */ | ||||
|     public function getCreatedAt() | ||||
|     { | ||||
|         return $this->created_at; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set updated_at | ||||
|      * | ||||
|      * @param datetime $updatedAt | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setUpdatedAt($updatedAt) | ||||
|     { | ||||
|         $this->updated_at = $updatedAt; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get updated_at | ||||
|      * | ||||
|      * @return datetime  | ||||
|      */ | ||||
|     public function getUpdatedAt() | ||||
|     { | ||||
|         return $this->updated_at; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set update_reason | ||||
|      * | ||||
|      * @param text $updateReason | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setUpdateReason($updateReason) | ||||
|     { | ||||
|         $this->update_reason = $updateReason; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get update_reason | ||||
|      * | ||||
|      * @return text  | ||||
|      */ | ||||
|     public function getUpdateReason() | ||||
|     { | ||||
|         return $this->update_reason; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set created_by | ||||
|      * | ||||
|      * @param KekRozsak\FrontBundle\Entity\User $createdBy | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setCreatedBy(\KekRozsak\FrontBundle\Entity\User $createdBy = null) | ||||
|     { | ||||
|         $this->created_by = $createdBy; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get created_by | ||||
|      * | ||||
|      * @return KekRozsak\FrontBundle\Entity\User  | ||||
|      */ | ||||
|     public function getCreatedBy() | ||||
|     { | ||||
|         return $this->created_by; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set updated_by | ||||
|      * | ||||
|      * @param KekRozsak\FrontBundle\Entity\User $updatedBy | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function setUpdatedBy(\KekRozsak\FrontBundle\Entity\User $updatedBy = null) | ||||
|     { | ||||
|         $this->updated_by = $updatedBy; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get updated_by | ||||
|      * | ||||
|      * @return KekRozsak\FrontBundle\Entity\User  | ||||
|      */ | ||||
|     public function getUpdatedBy() | ||||
|     { | ||||
|         return $this->updated_by; | ||||
|     } | ||||
|     /** | ||||
|      * @var \Doctrine\Common\Collections\ArrayCollection | ||||
|      */ | ||||
|     private $topic; | ||||
|  | ||||
|     public function __construct() | ||||
|     { | ||||
|         $this->topic = new \Doctrine\Common\Collections\ArrayCollection(); | ||||
|     } | ||||
|      | ||||
|     /** | ||||
|      * Add topic | ||||
|      * | ||||
|      * @param KekRozsak\FrontBundle\Entity\ForumTopic $topic | ||||
|      * @return ForumTopicGroup | ||||
|      */ | ||||
|     public function addForumTopic(\KekRozsak\FrontBundle\Entity\ForumTopic $topic) | ||||
|     { | ||||
|         $this->topic[] = $topic; | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Get topic | ||||
|      * | ||||
|      * @return Doctrine\Common\Collections\Collection  | ||||
|      */ | ||||
|     public function getTopic() | ||||
|     { | ||||
|         return $this->topic; | ||||
|     } | ||||
|     /** | ||||
|      * @var \Doctrine\Common\Collections\ArrayCollection | ||||
|      */ | ||||
|     private $topics; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * Get topics | ||||
|      * | ||||
|      * @return Doctrine\Common\Collections\Collection  | ||||
|      */ | ||||
|     public function getTopics() | ||||
|     { | ||||
|         return $this->topics; | ||||
|     } | ||||
| } | ||||
| @@ -142,4 +142,4 @@ class Role implements RoleInterface | ||||
|     { | ||||
| 	return $this->name; | ||||
|     } | ||||
| } | ||||
| } | ||||
| @@ -200,4 +200,4 @@ class User implements UserInterface | ||||
|     { | ||||
| 	return $this->password; | ||||
|     } | ||||
| } | ||||
| } | ||||
| @@ -0,0 +1,41 @@ | ||||
| KekRozsak\FrontBundle\Entity\ForumTopic: | ||||
|         type: entity | ||||
|         table: forum_topics | ||||
|         id: | ||||
|                 id: | ||||
|                         type: integer | ||||
|                         generator: | ||||
|                                 strategy: AUTO | ||||
|         fields: | ||||
|                 title: | ||||
|                         type: string(100) | ||||
|                         nullable: false | ||||
|                 slug: | ||||
|                         type: string(100) | ||||
|                         nullable: false | ||||
|                         unique: true | ||||
|                 created_at: | ||||
|                         type: datetime | ||||
|                         nullable: false | ||||
|                 updated_at: | ||||
|                         type: datetime | ||||
|                         nullable: true | ||||
|                 update_reason: | ||||
|                         type: text | ||||
|                         nullable: true | ||||
|         manyToOne: | ||||
|                 created_by: | ||||
|                         targetEntity: User | ||||
|                         inversedBy: articles | ||||
|                         nullable: false | ||||
|                 updated_by: | ||||
|                         targetEntity: User | ||||
|                         nullable: true | ||||
|                         default: null | ||||
|                 topic_group: | ||||
|                         targetEntity: ForumTopicGroup | ||||
|                         inversedBy: topics | ||||
|                         nullable: false | ||||
|         uniqueConstraint: | ||||
|                 uniqueSlugByGroup: | ||||
|                         columns: [ topic_group, slug ] | ||||
| @@ -0,0 +1,38 @@ | ||||
| KekRozsak\FrontBundle\Entity\ForumTopicGroup: | ||||
|         type: entity | ||||
|         table: forum_topic_groups | ||||
|         id: | ||||
|                 id: | ||||
|                         type: integer | ||||
|                         generator: | ||||
|                                 strategy: AUTO | ||||
|         fields: | ||||
|                 title: | ||||
|                         type: string(100) | ||||
|                         nullable: false | ||||
|                 slug: | ||||
|                         type: string(100) | ||||
|                         nullable: false | ||||
|                         unique: true | ||||
|                 created_at: | ||||
|                         type: datetime | ||||
|                         nullable: false | ||||
|                 updated_at: | ||||
|                         type: datetime | ||||
|                         nullable: true | ||||
|                 update_reason: | ||||
|                         type: text | ||||
|                         nullable: true | ||||
|         manyToOne: | ||||
|                 created_by: | ||||
|                         targetEntity: User | ||||
|                         inversedBy: articles | ||||
|                         nullable: false | ||||
|                 updated_by: | ||||
|                         targetEntity: User | ||||
|                         nullable: true | ||||
|                         default: null | ||||
|         oneToMany: | ||||
|                 topics: | ||||
|                         targetEntity: ForumTopic | ||||
|                         mappedBy: topic_group | ||||
| @@ -11,4 +11,14 @@ KekRozsakFrontBundle_article: | ||||
| KekRozsakFrontBundle_forum_main: | ||||
|         pattern:  /forum | ||||
|         defaults: | ||||
|                 _controller: KekRozsakFrontBundle:Default:forumMain | ||||
|                 _controller: KekRozsakFrontBundle:Forum:main | ||||
|  | ||||
| KekRozsakFrontBundle_forum_topic_list: | ||||
|         pattern:  /forum/{topicGroupSlug} | ||||
|         defaults: | ||||
|                 _controller: KekRozsakFrontBundle:Forum:topicList | ||||
|  | ||||
| KekRozsakFrontBundle_forum_post_list: | ||||
|         pattern:  /forum/{topicGroupSlug}/{topicSlug} | ||||
|         defaults: | ||||
|                 _controller: KekRozsakFrontBundle:Forum:postList | ||||
|   | ||||
| @@ -0,0 +1,5 @@ | ||||
| {% extends '::main_template.html.twig' %} | ||||
| {% block title %} - Fórum - {{ topicGroup.title }} - {{ topic.title }}{% endblock %} | ||||
| {% block content %} | ||||
| <h3>Fórum - {{ topicGroup.title }} - {{ topic.title }}</h3> | ||||
| {% endblock %} | ||||
| @@ -0,0 +1,29 @@ | ||||
| {% extends '::main_template.html.twig' %} | ||||
| {% block title %} - Fórum{% endblock %} | ||||
| {% block content %} | ||||
| <h3>Fórum</h3> | ||||
| {% for topicGroup in topicGroups %} | ||||
| <table id="temakor-lista"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
| 			<td><a href="{{ path('KekRozsakFrontBundle_forum_topic_list', {topicGroupSlug: topicGroup.slug}) }}">{{ topicGroup.title }}</a></td> | ||||
| 			<td></td> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| {% if topicGroup.topics|length > 0 %} | ||||
| {% for topic in topicGroup.topics %} | ||||
| 		<tr> | ||||
| 			<td><a href="{{ path('KekRozsakFrontBundle_forum_post_list', {topicGroupSlug: topicGroup.slug, topicSlug: topic.slug}) }}">{{ topic.title }}</a></td> | ||||
| 			<td></td> | ||||
| 		</tr> | ||||
| {% endfor %} | ||||
| {% else %} | ||||
| 		<tr> | ||||
| 			<td colspan="2">Ebben a kategóriában nincsenek témák</td> | ||||
| 		</tr> | ||||
| {% endif %} | ||||
| 	</tbody> | ||||
| </table> | ||||
| {% endfor %} | ||||
| {% endblock content %} | ||||
| @@ -0,0 +1,20 @@ | ||||
| {% extends '::main_template.html.twig' %} | ||||
| {% block title %} - Fórum - {{ topicGroup.title }}{% endblock %} | ||||
| {% block content %} | ||||
| <h3>Fórum - {{ topicGroup.title }}</h3> | ||||
| {% if topicGroup.topics|length > 0 %} | ||||
| <table> | ||||
| 	<thead> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| {% for topic in topicGroup.topics %} | ||||
| 		<tr> | ||||
| 			<td><a href="{{ path('KekRozsakFrontBundle_forum_post_list', { topicGroupSlug: topicGroup.slug, topicSlug: topic.slug }) }}">{{ topic.title }}</a></td> | ||||
| 		</tr> | ||||
| {% endfor %} | ||||
| 	</tbody> | ||||
| </table> | ||||
| {% else %} | ||||
| Ebben a témakörben nincsenek témák. | ||||
| {% endif %} | ||||
| {% endblock content %} | ||||
| @@ -109,3 +109,32 @@ p.hir-datum { | ||||
| 	margin: 0; | ||||
| } | ||||
|  | ||||
| #temakor-lista { | ||||
| 	border: 1px solid #3366ff; | ||||
| 	border-collapse: collapse; | ||||
| 	width: 100%; | ||||
| 	margin-bottom: 10px; | ||||
| } | ||||
|  | ||||
| #temakor-lista thead td { | ||||
| 	font-weight: bold; | ||||
| 	height: 1.5em; | ||||
| 	border-bottom: 2px solid #3366ff; | ||||
| 	padding: 3px; | ||||
| } | ||||
|  | ||||
| #temakor-lista thead td a { | ||||
| 	color: #3366ff; | ||||
| 	text-decoration: none; | ||||
| } | ||||
|  | ||||
| #temakor-lista tbody td { | ||||
| 	padding: 3px; | ||||
| 	border-bottom: 1px solid #3366ff; | ||||
| } | ||||
|  | ||||
| #temakor-lista tbody td a { | ||||
| 	color: #3366ff; | ||||
| 	text-decoration: underline; | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user