summary | 
shortlog | 
log | 
commit | commitdiff | 
tree
raw | 
patch | 
inline | side by side (from parent 1: 
5ec45cd)
 
Add usleep to prevent rate limit 403
                        //With expired token
                        if ($this->google->isAccessTokenExpired()) {
                                //Refresh token
                        //With expired token
                        if ($this->google->isAccessTokenExpired()) {
                                //Refresh token
+                               //TODO: better handle internal_failure
                                if (($gRefresh = $this->google->getRefreshToken()) && ($gToken = $this->google->fetchAccessTokenWithRefreshToken($gRefresh)) && empty($gToken['error'])) {
                                        //Get google token
                                        $googleToken = $this->doctrine->getRepository(GoogleToken::class)->findOneById($token['id']);
                                if (($gRefresh = $this->google->getRefreshToken()) && ($gToken = $this->google->fetchAccessTokenWithRefreshToken($gRefresh)) && empty($gToken['error'])) {
                                        //Get google token
                                        $googleToken = $this->doctrine->getRepository(GoogleToken::class)->findOneById($token['id']);
                                //Refresh failed
                                } else {
                                        //Show error
                                //Refresh failed
                                } else {
                                        //Show error
+                                       //TODO: remove that and simply log internal failure ?
                                        fprintf(STDERR, 'Unable to refresh token %d: %s', $token['id'], $gToken['error']?:'');
 
                                        //TODO: warn user by mail ?
                                        fprintf(STDERR, 'Unable to refresh token %d: %s', $token['id'], $gToken['error']?:'');
 
                                        //TODO: warn user by mail ?
                                                        throw new \LogicException(sprintf('Calendar %s event %s operation failed', $calendar, $this->prefix.$session['id']), 0, $e);
                                                }
                                        }
                                                        throw new \LogicException(sprintf('Calendar %s event %s operation failed', $calendar, $this->prefix.$session['id']), 0, $e);
                                                }
                                        }
+
+                                       //Sleep
+                                       usleep(300000);