]> Raphaƫl G. Git Repositories - airbundle/blobdiff - Command/Calendar2Command.php
Force string cast of simple xml elements
[airbundle] / Command / Calendar2Command.php
index 86be070bca659bb894b8add0788d915b6396a201..0ddcd3ff3213a5d4c1a42e4a05df29c4a62dc9a4 100644 (file)
@@ -26,23 +26,14 @@ use Symfony\Contracts\Translation\TranslatorInterface;
 
 use Twig\Extra\Markdown\DefaultMarkdown;
 
-use Rapsys\AirBundle\Entity\Session;
+use Rapsys\AirBundle\Command;
 use Rapsys\AirBundle\Entity\GoogleCalendar;
 use Rapsys\AirBundle\Entity\GoogleToken;
+use Rapsys\AirBundle\Entity\Session;
 
 use Rapsys\PackBundle\Util\SluggerUtil;
 
 class Calendar2Command extends Command {
-       /**
-        * Set default name
-        */
-    protected static $defaultName = 'rapsysair:calendar2';
-
-       /**
-        * Set default description
-        */
-    protected static $defaultDescription = 'Synchronize sessions in users\' calendar';
-
        /**
         * Set google client scopes
         */
@@ -98,10 +89,24 @@ class Calendar2Command extends Command {
                $this->markdown = new DefaultMarkdown;
        }
 
+       /**
+        * Configure attribute command
+        */
+       protected function configure() {
+               //Configure the class
+               $this
+                       //Set name
+                       ->setName('rapsysair:calendar2')
+                       //Set description shown with bin/console list
+                       ->setDescription('Synchronize sessions in users\' calendar')
+                       //Set description shown with bin/console --help airlibre:attribute
+                       ->setHelp('This command synchronize sessions in users\' google calendar');
+       }
+
        /**
         * Process the attribution
         */
-       protected function execute(InputInterface $input, OutputInterface $output) {
+       protected function execute(InputInterface $input, OutputInterface $output): int {
                //Iterate on google tokens
                foreach($tokens = $this->doctrine->getRepository(GoogleToken::class)->findAllIndexed() as $tid => $token) {
                        //Iterate on google calendars
@@ -124,7 +129,7 @@ class Calendar2Command extends Command {
                                //TODO: load all calendar events here ?
 
                                //Iterate on sessions to update
-                               foreach($sessions = $this->doctrine->getRepository(Session::class)->findAllByUserIdSynchronized($token['uid'], $calendar['synchronized'])) {
+                               foreach($sessions = $this->doctrine->getRepository(Session::class)->findAllByUserIdSynchronized($token['uid'], $calendar['synchronized']) as $session) {
                                        //TODO: insert/update/delete events here ?
                                }