public void RowClicked(int row)
        {
            if (row < News.Count)
            {
                // mark that they tapped this item.
                NewsAnalytic.Instance.Trigger(NewsAnalytic.Read, News[row].News.Title);

                if (News[row].News.SkipDetailsPage == true && string.IsNullOrEmpty(News[row].News.ReferenceURL) == false)
                {
                    // if this is an app-url, then let the task (which forwards it to the springboard) handle it.
                    if (SpringboardViewController.IsAppURL(News[row].News.ReferenceURL) == true)
                    {
                        Task.HandleAppURL(News[row].News.ReferenceURL);
                    }
                    else
                    {
                        // copy the news item's relevant members. That way, if we're running in debug,
                        // and they want to override the news item, we can do that below.
                        string newsUrl             = News[row].News.ReferenceURL;
                        bool   newsImpersonation   = News[row].News.IncludeImpersonationToken;
                        bool   newsExternalBrowser = News[row].News.ReferenceUrlLaunchesBrowser;

                        // If we're running a debug build, see if we should override the news
                        #if DEBUG
                        if (DebugConfig.News_Override_Item == true)
                        {
                            newsUrl             = DebugConfig.News_Override_ReferenceURL;
                            newsImpersonation   = DebugConfig.News_Override_IncludeImpersonationToken;
                            newsExternalBrowser = DebugConfig.News_Override_ReferenceUrlLaunchesBrowser;
                        }
                        #endif

                        TaskWebViewController.HandleUrl(newsExternalBrowser, newsImpersonation, newsUrl, Task, this, false, false, false);
                    }
                }
                else
                {
                    NewsDetailsUIViewController viewController = new NewsDetailsUIViewController();
                    viewController.NewsItem = News[row].News;

                    Task.PerformSegue(this, viewController);
                }
            }
        }
        public void RowClicked( int row )
        {
            if ( row < News.Count )
            {
                // mark that they tapped this item.
                NewsAnalytic.Instance.Trigger( NewsAnalytic.Read, News[ row ].News.Title );

                if ( News[ row ].News.SkipDetailsPage == true && string.IsNullOrEmpty( News[ row ].News.ReferenceURL ) == false )
                {
                    TaskWebViewController.HandleUrl( News[ row ].News.ReferenceUrlLaunchesBrowser, News[ row ].News.IncludeImpersonationToken, News[ row ].News.ReferenceURL, Task, this, false, false );
                }
                else
                {
                    NewsDetailsUIViewController viewController = new NewsDetailsUIViewController();
                    viewController.NewsItem = News[ row ].News;

                    Task.PerformSegue( this, viewController );
                }
            }
        }
Esempio n. 3
0
        public void RowClicked( int row )
        {
            if ( row < News.Count )
            {
                NewsDetailsUIViewController viewController = new NewsDetailsUIViewController();
                viewController.NewsItem = News[ row ].News;

                Task.PerformSegue( this, viewController );
            }
        }