When does the auth happen relative to the client controller being constructed?

On Apr 20, 2014, at 9:24 PM, Billy Figueroa <[email protected]> wrote:

> Ok so this issue has not been resolved. I am trying to avoid putting the 
> logic in my main controller. I did notice this has to be one of the "time" 
> issues you mentioned luke.
> 
> I m guessing the MainController receives the broadcast because it is some how 
> already loaded and ready to go, but my client controller somehow is not?
> 
> I tried one thing and noticed it is definately a timing issue. I put a 
> $timeout call for 1 second and I noticed that if I do that it hits the 
> broadcast. How can I deal with these timing issues? I tried to change my 
> logic from using jquery success callbacks to using the promise then instead
> 
> ANYONE who can help can answer this, not just Luke. I addressed him because 
> hes been helping. Thanks Luke!
> 
> On Thursday, April 17, 2014 9:53:56 PM UTC-4, Billy Figueroa wrote:
> Hi All,
> 
> so I have a quick issue with my controller ordering I guess.
> 
> I have the following shell page layout...
> 
> <html>
>    <head></head>
>    <body ng-controller="MainController">
>       <div ng-view></div>
>    </body>
> </html>
> 
> I have an ng-view template that the routeProvider is loading (account.php) 
> when we hit the url and load ClientController...
> 
>     .when('/client/:user_id/account', {
>         templateUrl: '../MINT/views/account.php',
>         controller: 'ClientController',
>         restrict: true
>     })
> 
> I also have an AuthFacotory factory where, once a user logs in and I get data 
> back from my backend (PHP) I broadcast a signal to say we are authenticated
> 
>                     if (phpData.account_type === 'client')
>                         $rootScope.$broadcast('clientAuthenticated', phpData);
>                     else
>                         $rootScope.$broadcast('providerAuthenticated', 
> phpData);
> 
> I have the following I guess "watches" both inside the MainController and 
> ClientController
> 
> 
> <-- MainController -->
>     $scope.$on('clientAuthenticated', function(phpData) {
>         console.log("We caught the broadcast for 
> clientAuthenticated[MainController]");
>     });
> 
> <-- ClientController -->
>     $scope.$on('clientAuthenticated', function(phpData) {
>         console.log("We caught the broadcast for 
> clientAuthenticated[ClientController]");
>     });
> 
> 
> I am only "catching" the one in the MainController.
> 
> Based on the structure being that the ClientController is loaded as part of 
> the view, I m guessing its some sort of a child of the MainController but why 
> is it not "catching" that broadcast?
> 
> the weird part is that I have other code in the ClientController and that 
> gets executed but the console.log inside the scope statement is not
> 
> I wanted to create a jsfiddle or plunker but I rarely get them working when I 
> try to do it in a non global modular way like real apps are written 
> i.e. var myApp = angular.module('myApp', [])
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "AngularJS" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/angular.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to