Exemplo n.º 1
0
        private void CookiesChanged(OssiferCookie oldCookies, OssiferCookie newCookies)
        {
            bool allCookiesAreAvailable = true;

            foreach (Cookie cookie in REQUIRED_COOKIES)
            {
                OssiferCookie ossiferCookie = OssiferSession.GetCookie(cookie.Name, cookie.Domain, cookie.Path);
                if (ossiferCookie == null || string.IsNullOrEmpty(ossiferCookie.Value))
                {
                    allCookiesAreAvailable = false;
                }
            }

            if (allCookiesAreAvailable && UserLoggedIn != null)
            {
                Cookie[] cookies = new Cookie[REQUIRED_COOKIES.Length];
                for (int i = 0; i < REQUIRED_COOKIES.Length; i++)
                {
                    Cookie requiredCookie = REQUIRED_COOKIES[i];
                    cookies[i] = fromOssiferCookie(OssiferSession.GetCookie(requiredCookie.Name, requiredCookie.Domain, requiredCookie.Path));
                }

                UserLoggedIn(cookies);

                /* remove self from CookieChanged, so we only alert the user once */
                OssiferSession.CookieChanged -= CookiesChanged;
            }
        }
Exemplo n.º 2
0
        private void CheckSignIn()
        {
            bool signed_in = OssiferSession.GetCookie("EMUSIC_REMEMBER_ME_COOKIE", "www.emusic.com", "/") != null;

            if (IsSignedIn != signed_in)
            {
                IsSignedIn = signed_in;
                OnSignInChanged();
            }
        }
Exemplo n.º 3
0
        private void CheckSignIn()
        {
            var signed_in = false;

            foreach (var domain in domains)
            {
                signed_in |= OssiferSession.GetCookie("at-main", ".amazon." + domain, "/") != null;
                signed_in |= OssiferSession.GetCookie("at-acbuk", ".amazon." + domain, "/") != null;
            }

            if (IsSignedIn != signed_in)
            {
                IsSignedIn = signed_in;
                OnSignInChanged();
            }
        }
Exemplo n.º 4
0
        public StoreView()
        {
            CanSearch          = true;
            FixupJavascriptUrl = "http://integrated-services.banshee.fm/amz/amz-fixups.js";

            OssiferSession.CookieChanged += (o, n) => CheckSignIn();

            // Ensure that Amazon knows a valid downloader is available,
            // otherwise the purchase experience is interrupted with a
            // confusing message about downloading and installing software.
            foreach (var domain in domains)
            {
                OssiferSession.SetCookie("dmusic_download_manager_enabled",
                                         AmzMp3Downloader.AmazonMp3DownloaderCompatVersion,
                                         ".amazon." + domain, "/", TimeSpan.FromDays(365.2422));
            }

            Country = StoreSourcePreferences.StoreCountry.Get();

            CheckSignIn();
            FullReload();
        }