refactored 80%
[pharext/pharext.org] / app / Controller / Github / Repo.php
index 813b942bf0c2ec7f72345f29049b2ef9977070d5..64fbb9dbb67459bcac988e5d9f5eb31cfaa0809e 100644 (file)
@@ -10,17 +10,22 @@ class Repo extends Github
        function __invoke(array $args = null) {
                extract($args);
                if ($this->checkToken()) {
-                       list($repo) = $this->github->readRepo("$owner/$name", new RepoCallback($this->github))->send();
-                       $hook = $this->github->checkRepoHook($repo);
-                       
-                       $this->app->getView()->addData(compact("owner", "name", "repo", "hook"));
-                       
-                       if (($modal = $this->app->getRequest()->getQuery("modal"))) {
-                               $action = $this->app->getRequest()->getQuery($modal);
-                               $this->app->getView()->addData(compact("modal", "action")); 
-                       }
-                       
-                       $this->app->display("github/repo");
+                       $this->github->readRepo("$owner/$name")->then(
+                               new RepoCallback($this->github)
+                       )->done(function($result) use($owner, $name) {
+                               list($repo) = $result;
+                               $hook = $this->github->checkRepoHook($repo);
+
+                               $this->app->getView()->addData(compact("owner", "name", "repo", "hook"));
+                       });
+                       $this->github->drain();
+               }
+
+               if (($modal = $this->app->getRequest()->getQuery("modal"))) {
+                       $action = $this->app->getRequest()->getQuery($modal);
+                       $this->app->getView()->addData(compact("modal", "action")); 
                }
+
+               $this->app->display("github/repo");
        }
 }