public LanguagesLoader(Location location, PersistenceService persistenceService,
     Func<Priority, INetworkService> networkServiceFactory, Priority priority = Priority.Background)
 {
     _location = location;
     _persistenceService = persistenceService;
     _networkService = networkServiceFactory(priority);
 }
 public DisclaimerViewModel(IAnalyticsService analytics, Language language, Location location, Func<Language, Location, DisclaimerLoader> disclaimerLoaderFactory)
 :base(analytics) {
     Title = "Disclaimer";
     
     _loader = disclaimerLoaderFactory(language, location);
     Refresh();
 }
		public void BeforeAll ()
		{
			_container = Platform.Setup.CreateContainer ();
			Assert.True (_container.TryResolve (out _networkService)); //TODO use different url
			_language = new Language{ ShortName = "de" };
			_location = new Location { Path = "/wordpress/augsburg/" };
			_updateTime = new UpdateTime (0);
		}
		public void BeforeAll ()
		{
			var container = Platform.Setup.CreateContainer ();
			Assert.True (container.TryResolve (out _persistenceService), "PersistenceService not found");
			Assert.True (container.TryResolve (out _networkService), "SafeNetworkService not found");
			_location = Mocks.Location;
			_persistenceService.Init ();
			_loader = new LanguagesLoader (_location, _persistenceService, _networkService);
		}
 Task<Collection<Disclaimer>> INetworkService.GetDisclaimers(Language language, Location location, UpdateTime time)
 => Task.Factory.StartNew(() => new Collection<Disclaimer> {
     new Disclaimer {
         Id=100, Title="Feedback, Kontakt und mögliches Engagement", Type="disclaimer", Status="publish", Modified=new DateTime(2016, 01, 23),
         Description="Auszug", Content="Noch kein HTML! Muss noch auf HTML View angepasst werden",
         ParentId=null, Order=0, Thumbnail=null, Author=new Author("login", "Mux", "Mastermann"), AutoTranslated=false,
         AvailableLanguages=new List<AvailableLanguage> ()
     }
 });
 Task<Collection<Page>> INetworkService.GetPages(Language language, Location location, UpdateTime time)
 => Task.Factory.StartNew(() => new Collection<Page>{
     new Page {
         Id=135, Title="Arztbesuch", Type="page", Status="publish", Modified=new DateTime(2016, 01, 23),
         Description="Wenn Sie in Augsburg angekommen sind, bekommen Sie einen  Berechtigungsschein für den Allgemeinarzt und für den Zahnarzt. Sie brauchen für ein Quartal einen Schein. 1. Quartal: Januar, Februar, März 2. Quartal: April, Mai, Juni 3. Quartal: Juli, August, September 4. Quartal: Oktober, November, Dezember Ein Behandlungsschein ist bis Ende des Quartals gültüg. Für das nächste",
         Content="<p>Wenn Sie in Augsburg angekommen sind, bekommen Sie einen  <a href=\"http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/de/ankunftsinformationen/die-wichtigsten-dokumente-und-schritte-nach-ankunft/\">Berechtigungsschein</a> für den Allgemeinarzt und für den Zahnarzt. Sie brauchen für ein Quartal einen Schein.</p><p><table style=\"border-color: #0a0909;height: 47px\" border=\"1\" width=\"590\"></p><p><tbody></p><p><tr></p><p><td style=\"border-color: #000000\"></p><p><div>1. Quartal: Januar, Februar, März</p><p>2. Quartal: April, Mai, Juni</p><p>3. Quartal: Juli, August, September</div></p><p><div>4. Quartal: Oktober, November, Dezember</div></td></p><p></tr></p><p></tbody></p><p></table></p><p>Ein Behandlungsschein ist bis Ende des Quartals gültüg. Für das nächste Quartal erhalten Sie wieder einen Schein. Dieser kommt automatisch per Post. Wenn der Schein nicht kommen sollte, gehen Sie zum <a href=\"http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/de/ankunftsinformationen/termin-beim-amt-fuer-soziale-leistungen-asl/\">Amt für Soziale Leistungen</a>. Mit dem Behandlungsschein ist der Arztbesuch für Sie kostenlos. Allerdings gibt es bestimmte Einschränkungen.</p><p></p><p><strong>Zu welchem Arzt gehen Sie?</strong></p><p>Sie können sich den Arzt frei auswählen. Aber innerhalb eines Quartals dürfen Sie für weitere Arzttermine den Arzt, bei dem Sie Ihren Behandlungsschein abgegeben haben, nicht wechseln. Falls Sie Hilfe bei der Suche nach einem geeigneten Arzt brauchen, fragen Sie Ihren <a href=\"http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/de/asylberatung-und-helpdesks/helferkreise/\">Helferkreis</a>, die <a href=\"http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/de/asylberatung-und-helpdesks/sprechstunde-fuer-dezentral-untergebrachte/\">Sprechstunde </a>für dezentral untergebrachte Asylsuchende oder die <a href=\"http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/de/kinder-und-familie/beratungsstellen-und-hilfsangebote/\">Asylsozialberatungsstellen</a>.</p><p></p><p>Arztpraxen haben normalerweise von Montag bis Freitag geöffnet. Die Öffnungszeiten sind je nach Arzt unterschiedlich. Es ist gut, einen Termin beim Arzt zu vereinbaren. Wenn Sie nachts einen Arzt brauchen, aber es kein Notfall ist, können Sie hier anrufen:</p><p><table></p><p><tbody></p><p><tr></p><p><td width=\"236\">Ärztlicher Bereitschaftsdienst</td></p><p><td width=\"190\">Telefon 0821 – 116 117</td></p><p><td width=\"190\">nur abends und an Wochenenden</td></p><p></tr></p><p><tr></p><p><td width=\"236\">Zahnärztlicher Notdienst</td></p><p><td width=\"190\"><a href=\"http://www.zahnarzt-notdienst-augsburg.de\" target=\"_blank\">www.zahnarzt-notdienst-augsburg.de</a></td></p><p><td width=\"190\">nur abends und an Wochenenden</td></p><p></tr></p><p></tbody></p><p></table></p><p>&nbsp;</p><p></p><p><strong><u>Allgemeinarzt und Kinderarzt</u></strong></p><p></p><p>Wenn Sie sich seelisch oder körperlich nicht gesund fühlen, gehen Sie zuerst zum Allgemeinarzt. Kinder müssen zu einem Kinderarzt gehen. Dieser Arzt übernimmt die Grundversorgung und ist der erste Ansprechpartner bei allen gesundheitlichen Beschwerden. Er führt eine erste Untersuchung durch und entscheidet über die weitere Behandlung.</p><p></p><p>Wenn eine Behandlung durch einen Facharzt notwendig ist, wird der Allgemeinarzt oder der Kinderarzt Sie dorthin überweisen. Mit der Überweisung des Allgemeinarztes oder des Kinderarztes bekommen Sie im <a href=\"http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/de/ankunftsinformationen/termin-beim-amt-fuer-soziale-leistungen-asl/\">Amt für Soziale Leistungen</a> einen Krankenbehandlungsschein für den Facharzt.</p><p></p><p>&nbsp;</p><p></p><p><strong><u>Fachärzte / Spezialisten</u></strong></p><p></p><p>Fachärzte sind auf ein medizinisches Gebiet spezialisiert und übernehmen nach Überweisung durch den Allgemeinarzt die weitere Behandlung.</p><p></p><p>Sollte eine Operation notwendig sein, lassen Sie sich von Ihrem Arzt einen Kostenvoranschlag für die Operationskosten erstellen. Dieser Kostenvoranschlag muss durch das Sozialamt <strong>vor</strong> der geplanten Operation genehmigt werden, ansonsten werden die Kosten nicht übernommen. Gleiches gilt für psychotherapeutische Behandlungen.</p><p></p><p>&nbsp;</p><p></p><p>&nbsp;</p>",
         ParentId=null, Order=0, Thumbnail="http://vmkrcmar21.informatik.tu-muenchen.de/wordpress/augsburg/wp-content/uploads/sites/2/2015/09/patient1.png",
         Author=new Author("login", "Mux", "Mastermann"), AutoTranslated=false,
         AvailableLanguages=new List<AvailableLanguage> ()
     }
 });
		public static void AssertLocation (Location expected, Location actual)
		{
			AssertNullOrNotNull (expected, actual);
			Assert.AreEqual (expected.Id, actual.Id);
			Assert.AreEqual (expected.Name, actual.Name);
			Assert.AreEqual (expected.Icon, actual.Icon);
			Assert.AreEqual (expected.CityImage, actual.CityImage);
			Assert.AreEqual (expected.Color, actual.Color);
			Assert.AreEqual (expected.Path, actual.Path);
			Assert.AreEqual (expected.Description, actual.Description);
			Assert.AreEqual (expected.Debug, actual.Debug);
		}
	    public LanguagesViewModel (IAnalyticsService analytics, Location location, Func<Location, LanguagesLoader> languageLoaderFactory, INavigator navigator,
            Func<MainPageViewModel> mainPageViewModelFactory)
        : base (analytics) {
			Title = "Select Language";
			Description = "What language do you speak?";
		    _navigator = navigator;
            _navigator.HideToolbar(this);
            _mainPageViewModelFactory = mainPageViewModelFactory;

            Items = new ObservableCollection<Language>();
            _location = location;
            LanguagesLoader = languageLoaderFactory(_location);
            ExecuteLoadLanguages();
        }
        public async void Init()
        {
            var locationId = Preferences.Location();
            var languageId = Preferences.Language(locationId);
            _language = await _persistence.Get<Language>(languageId);
            _location = await _persistence.Get<Location>(locationId);
            
            TabViewModel.SetLanguageLocation(_language, _location);
            TabViewModel.ChangeLanguageCommand = new Command(OnChangeLanguageClicked);
            TabViewModel.OpenSearchCommand = new Command(OnSearchClicked);

            NavigationViewModel.SetLocation(_location);
            NavigationViewModel.SetLanguage(_language);
        }
 public Task<string> UnsubscribePush(Location location, string regId)
 {
     return _networkService.UnsubscribePush(location, regId).DefaultIfFaulted();
 }
 public Task<Collection<Language>> GetLanguages(Location location)
 {
     return _networkService.GetLanguages(location).DefaultIfFaulted(new Collection<Language>());
 }
 public Task<Collection<EventPage>> GetEventPages(Language language, Location location, UpdateTime time)
 {
     return _networkService.GetEventPages(language, location, time).DefaultIfFaulted(new Collection<EventPage>());
 }
 public Task<HttpResponseMessage> GetPagesDebug(Language language, Location location, UpdateTime time)
 {
     return _networkService.GetPagesDebug(language, location, time).DefaultIfFaulted();
 }
 public Task<Collection<Disclaimer>> GetDisclaimers(Language language, Location location, UpdateTime time)
 {
     return _networkService.GetDisclaimers(language, location, time).DefaultIfFaulted(new Collection<Disclaimer>());
 }
 public void SetLocation(Location location)
 {
     PagesViewModel.Location = location;
     EventPagesViewModel.Location = location;
 }
 Task<string> INetworkService.UnsubscribePush(Location location, string regId)
 => Task.Factory.StartNew(() => "" /* TODO: need to lookup what goes here */);
 public Task<int> GetLanguagesCount(Location location)
 {
     return Connection.Table<Language>().Where(x => x.LocationId == location.Id).CountAsync().DefaultIfFaulted();
 }
 public void SetLanguageLocation(Language language, Location location) {
     _language = language;
     _location = location;
     LoadPages();
 }
        public Task<List<Language>> GetLanguages (Location location)
		{
			var query = Connection.Table<Language> ().Where (x => x.LocationId == location.Id);
			return query.ToListAsync ().DefaultIfFaulted (new List<Language> ());
		}
 Task<HttpResponseMessage> INetworkService.GetPagesDebug(Language language, Location location, UpdateTime time)
 => Task.Factory.StartNew(() => new HttpResponseMessage());
 Task<Collection<EventPage>> INetworkService.GetEventPages(Language language, Location location, UpdateTime time)
 => Task.Factory.StartNew(() => new Collection<EventPage>());
		public void Setup ()
		{
			_language = Mocks.Language;
			_location = Mocks.Location;
			_persistenceService.Init ();
		}
 public void SetLanguageLocation(Language language, Location location)
 {
     PagesViewModel.SetLanguageLocation(language, location);
     EventPagesViewModel.SetLanguageLocation(language, location);
 }
 private async Task<IEnumerable<Language>> LoadLanguages()
 {
     return
         await
             _persistence.GetLanguages(_location ??
                                       (_location = await _persistence.Get<Location>(Preferences.Location())));
 }
 Task<Collection<Language>> INetworkService.GetLanguages(Location location)
 => Task.Factory.StartNew(() => new Collection<Language>{
     new Language (0, "de", "Deutsch", "http://vmkrcmar21.informatik.tu-muenchen.de//wordpress//augsburg//wp-content//plugins//sitepress-multilingual-cms//res//flags//de.png")
 });
 internal void SetLocation(Location location)
 {
     _location = location;
     Title = location?.Name;
     Thumbnail = location?.CityImage;
 }
示例#27
0
 public static string GenerateKey(object id, Location location, Language language)
 {
     return id + "_" + language.Id + "_" + location.Id;
 }