Added a controller, that lists the pages, the user is an adminitrator of
authorKai Moritz <kai@juplo.de>
Mon, 1 Feb 2016 17:29:09 +0000 (18:29 +0100)
committerKai Moritz <kai@juplo.de>
Tue, 3 Jul 2018 15:18:12 +0000 (17:18 +0200)
src/main/java/de/juplo/yourshouter/PagesController.java [new file with mode: 0644]
src/main/webapp/thymeleaf/home.html
src/main/webapp/thymeleaf/pages.html [new file with mode: 0644]

diff --git a/src/main/java/de/juplo/yourshouter/PagesController.java b/src/main/java/de/juplo/yourshouter/PagesController.java
new file mode 100644 (file)
index 0000000..f7091fb
--- /dev/null
@@ -0,0 +1,39 @@
+package de.juplo.yourshouter;
+
+import javax.inject.Inject;
+import org.springframework.social.facebook.api.Account;
+
+import org.springframework.social.facebook.api.Facebook;
+import org.springframework.social.facebook.api.PagedList;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+
+/**
+ * Controller, that handles requests to the root of the application.
+ *
+ * @author Kai Moritz
+ */
+@Controller
+public class PagesController
+{
+  private final Facebook facebook;
+
+
+  @Inject
+  public PagesController(Facebook facebook)
+  {
+    this.facebook = facebook;
+  }
+
+
+  @RequestMapping(value = "/pages.html", method = RequestMethod.GET)
+  public String list(Model model)
+  {
+    PagedList<Account> accounts = facebook.pageOperations().getAccounts();
+    model.addAttribute("accounts", accounts);
+    return "pages";
+  }
+}
index b9d94f9..891da6c 100644 (file)
@@ -10,6 +10,7 @@
       <li><a href="profile.html" th:href="@{/profile.html}">Show public profile-data</a></li>
       <li><a href="#" th:href="@{/h2-console}">Connect to the H2-console</a></li>
       <li><a href="permissions.html" th:href="@{/permissions.html}">Manage permissions</a></li>
+      <li><a href="pages.html" th:href="@{/pages.html}">Show pages, that you are an administrator of</a></li>
     </ul>
   </body>
 </html>
diff --git a/src/main/webapp/thymeleaf/pages.html b/src/main/webapp/thymeleaf/pages.html
new file mode 100644 (file)
index 0000000..5e8532a
--- /dev/null
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
+  <head>
+    <title>Pages</title>
+  </head>
+  <body>
+    <p>Back <a href="home.html" th:href="@{/}">HOME</a></p>
+    <hr />
+    <h1>The permissions you granted to this app</h1>
+    <ul>
+      <li th:each="permission : ${permissions}" th:text="${permission}">public_profile</li>
+    </ul>
+    <h1>Pages, you are an administrator of</h1>
+    <ul th:each="account : ${accounts}">
+      <li><strong>ID:</strong> <em th:text="${account.id}">123456789</em></li>
+      <li><strong>Name:</strong> <em th:text="${account.name}">Spielwiese</em></li>
+      <li><strong>Category:</strong> <em th:text="${account.category}">Unknown</em></li>
+    </ul>
+  </body>
+</html>