Public general use code classes and xml files that we've compiled and used over the years:
ApplicationInformation Support class for TentPlay Trek data model
1: using System;
2: using System.Linq;
3: using System.Collections.Generic;
4: using System.IO;
5: using System.Text.RegularExpressions;
6: using System.Xml.Linq;
7: using System.Reflection;
8: using System.Web;
9: using static Ia.Cl.Models.Db.Temp;
10:
11: namespace Ia.TentPlay.Cl.Models.Data.Trek
12: {
13: ////////////////////////////////////////////////////////////////////////////
14:
15: /// <summary publish="true">
16: /// ApplicationInformation Support class for TentPlay Trek data model
17: /// </summary>
18: ///
19: /// <remarks>
20: /// Copyright © 2006-2024 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
21: ///
22: /// This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
23: /// the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
24: ///
25: /// This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
26: /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
27: ///
28: /// You should have received a copy of the GNU General Public License along with this library. If not, see http://www.gnu.org/licenses.
29: ///
30: /// Copyright notice: This notice may not be removed or altered from any source distribution.
31: /// </remarks>
32: public class ApplicationInformation
33: {
34: private static XDocument xDocument;
35: private static List<Country> countryList;
36: private static List<Translation> translationList;
37:
38: private static readonly object objectLock = new object();
39:
40: ////////////////////////////////////////////////////////////////////////////
41:
42: /// <summary>
43: ///
44: /// </summary>
45: public ApplicationInformation() { }
46:
47: ////////////////////////////////////////////////////////////////////////////
48: ////////////////////////////////////////////////////////////////////////////
49:
50: /// <summary>
51: ///
52: /// </summary>
53: public class Country
54: {
55: private List<Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Translation> translationList;
56:
57: /// <summary/>
58: public Country() { }
59:
60: /// <summary/>
61: public string Iso3 { get; set; }
62:
63: /// <summary/>
64: public string Name { get; set; }
65:
66: /// <summary/>
67: public Dictionary<string, string> NameDictionary { get; set; }
68:
69: /// <summary/>
70: public string ManifestPackagePrefix { get; set; }
71:
72: /// <summary/>
73: public Dictionary<string, string> ApplicationNameDictionary { get; set; }
74:
75: /// <summary/>
76: public string WhatsNew { get; set; }
77:
78: /// <summary/>
79: public string VersionName { get; set; }
80:
81: /// <summary/>
82: public string CopyrightYear { get; set; }
83:
84: /// <summary/>
85: public string ManifestPackage { get; set; }
86:
87: /// <summary/>
88: public string ApplicationUrl { get; set; }
89:
90: /// <summary/>
91: public string GoogleMapsDebugApiKey { get; set; }
92:
93: /// <summary/>
94: public string GoogleMapsProductionApiKey { get; set; }
95:
96: /// <summary/>
97: public string GoogleAdMobAdUnitDebugId { get; set; }
98:
99: /// <summary/>
100: public string GoogleAdMobAppId { get; set; }
101:
102: /// <summary/>
103: public string GoogleAdMobAdUnitProductionId { get; set; }
104:
105: /// <summary/>
106: public DateTime Published { get; set; }
107:
108: /// <summary/>
109: public int FeatureCount { get; set; }
110:
111: /// <summary/>
112: public int AdministrativeFeatureCount { get; set; }
113:
114: /// <summary/>
115: public int PopulatedFeatureCount { get; set; }
116:
117: /// <summary/>
118: public int VegetationFeatureCount { get; set; }
119:
120: /// <summary/>
121: public int LocalityFeatureCount { get; set; }
122:
123: /// <summary/>
124: public int UnderseaFeatureCount { get; set; }
125:
126: /// <summary/>
127: public int StreetFeatureCount { get; set; }
128:
129: /// <summary/>
130: public int HypsographicFeatureCount { get; set; }
131:
132: /// <summary/>
133: public int HydrographicFeatureCount { get; set; }
134:
135: /// <summary/>
136: public int SpotFeatureCount { get; set; }
137:
138: /// <summary/>
139: public string ColorPrimary { get; set; }
140:
141: /// <summary/>
142: public string ColorPrimaryDark { get; set; }
143:
144: /// <summary/>
145: public string ColorAccent { get; set; }
146:
147: /// <summary/>
148: public bool LanguageListMatchesTranslationList
149: {
150: get
151: {
152: bool b;
153:
154: if (Languages != null && Translations != null)
155: {
156: b = Languages.All(u => Translations.Any(y => y.Iso6391 == u.Iso6391)) && Translations.All(u => Languages.Any(y => y.Iso6391 == u.Iso6391)) && Languages.Count == Translations.Count;
157: }
158: else b = false;
159:
160: return b;
161: }
162: }
163:
164: /// <summary/>
165: public virtual List<Image> NavigationHeaderImages { get; set; }
166:
167: /// <summary/>
168: public virtual List<Ia.Cl.Models.Language> Languages { get; set; }
169:
170: /// <summary/>
171: public virtual ICollection<Translation> Translations
172: {
173: get
174: {
175: if (translationList == null || translationList.Count == 0)
176: {
177: translationList = TranslationList(this);
178: }
179:
180: return translationList;
181: }
182: }
183:
184: ////////////////////////////////////////////////////////////////////////////
185:
186: /// <summary>
187: ///
188: /// </summary>
189: public string FeatureGraphicImageUrl
190: {
191: get
192: {
193: return "https://cdn.tentplay.com/trek/country/" + this.Iso3 + @"/images/feature-graphic.png";
194: }
195: }
196:
197: ////////////////////////////////////////////////////////////////////////////
198:
199: /// <summary>
200: ///
201: /// </summary>
202: public string PromoGraphicImageUrl
203: {
204: get
205: {
206: return "https://cdn.tentplay.com/trek/country/" + this.Iso3 + @"/images/promo-graphic.png";
207: }
208: }
209:
210: ////////////////////////////////////////////////////////////////////////////
211:
212: /// <summary>
213: ///
214: /// </summary>
215: public string HiResIconImageUrl
216: {
217: get
218: {
219: return "https://cdn.tentplay.com/trek/country/" + this.Iso3 + @"/images/hi-res-icon.png";
220: }
221: }
222:
223: ////////////////////////////////////////////////////////////////////////////
224: ////////////////////////////////////////////////////////////////////////////
225:
226: /// <summary>
227: ///
228: /// </summary>
229: public string MipMapLdpiIcLauncherImageUrl
230: {
231: get
232: {
233: return MipMapXIcLauncherImage("ldpi");
234: }
235: }
236:
237: ////////////////////////////////////////////////////////////////////////////
238:
239: /// <summary>
240: ///
241: /// </summary>
242: public string MipMapMdpiIcLauncherImageUrl
243: {
244: get
245: {
246: return MipMapXIcLauncherImage("mdpi");
247: }
248: }
249:
250: ////////////////////////////////////////////////////////////////////////////
251:
252: /// <summary>
253: ///
254: /// </summary>
255: public string MipMapHdpiIcLauncherImageUrl
256: {
257: get
258: {
259: return MipMapXIcLauncherImage("hdpi");
260: }
261: }
262:
263: ////////////////////////////////////////////////////////////////////////////
264:
265: /// <summary>
266: ///
267: /// </summary>
268: public string MipMapXhdpiIcLauncherImageUrl
269: {
270: get
271: {
272: return MipMapXIcLauncherImage("xhdpi");
273: }
274: }
275:
276: ////////////////////////////////////////////////////////////////////////////
277:
278: /// <summary>
279: ///
280: /// </summary>
281: public string MipMapXxhdpiIcLauncherImageUrl
282: {
283: get
284: {
285: return MipMapXIcLauncherImage("xxhdpi");
286: }
287: }
288:
289: ////////////////////////////////////////////////////////////////////////////
290:
291: /// <summary>
292: ///
293: /// </summary>
294: public string MipMapXxxhdpiIcLauncherImageUrl
295: {
296: get
297: {
298: return MipMapXIcLauncherImage("xxxhdpi");
299: }
300: }
301:
302: ////////////////////////////////////////////////////////////////////////////
303:
304: /// <summary>
305: ///
306: /// </summary>
307: public string MipMapXIcLauncherImage(string x)
308: {
309: return "https://cdn.tentplay.com/trek/country/" + this.Iso3 + @"/images/mipmap-" + x + "/ic_launcher.png";
310: }
311:
312: ////////////////////////////////////////////////////////////////////////////
313: ////////////////////////////////////////////////////////////////////////////
314:
315: /// <summary>
316: ///
317: /// </summary>
318: public string MipMapLdpiSplashScreenImageUrl
319: {
320: get
321: {
322: return MipMapXSplashScreenImage("ldpi");
323: }
324: }
325:
326: ////////////////////////////////////////////////////////////////////////////
327:
328: /// <summary>
329: ///
330: /// </summary>
331: public string MipMapMdpiSplashScreenImageUrl
332: {
333: get
334: {
335: return MipMapXSplashScreenImage("mdpi");
336: }
337: }
338:
339: ////////////////////////////////////////////////////////////////////////////
340:
341: /// <summary>
342: ///
343: /// </summary>
344: public string MipMapHdpiSplashScreenImageUrl
345: {
346: get
347: {
348: return MipMapXSplashScreenImage("hdpi");
349: }
350: }
351:
352: ////////////////////////////////////////////////////////////////////////////
353:
354: /// <summary>
355: ///
356: /// </summary>
357: public string MipMapXhdpiSplashScreenImageUrl
358: {
359: get
360: {
361: return MipMapXSplashScreenImage("xhdpi");
362: }
363: }
364:
365: ////////////////////////////////////////////////////////////////////////////
366:
367: /// <summary>
368: ///
369: /// </summary>
370: public string MipMapXxhdpiSplashScreenImageUrl
371: {
372: get
373: {
374: return MipMapXSplashScreenImage("xxhdpi");
375: }
376: }
377:
378: ////////////////////////////////////////////////////////////////////////////
379:
380: /// <summary>
381: ///
382: /// </summary>
383: public string MipMapXxxhdpiSplashScreenImageUrl
384: {
385: get
386: {
387: return MipMapXSplashScreenImage("xxxhdpi");
388: }
389: }
390:
391: ////////////////////////////////////////////////////////////////////////////
392:
393: /// <summary>
394: ///
395: /// </summary>
396: public string MipMapXSplashScreenImage(string x)
397: {
398: return "https://cdn.tentplay.com/trek/country/" + this.Iso3 + @"/images/mipmap-" + x + "/splash_screen.png";
399: }
400:
401: ////////////////////////////////////////////////////////////////////////////
402: ////////////////////////////////////////////////////////////////////////////
403:
404: /// <summary>
405: ///
406: /// </summary>
407: public string StoreListingSampleScreenCapture1ImageUrl
408: {
409: get
410: {
411: return StoreListingSampleScreenCaptureXImage(1);
412: }
413: }
414:
415: ////////////////////////////////////////////////////////////////////////////
416:
417: /// <summary>
418: ///
419: /// </summary>
420: public string StoreListingSampleScreenCapture2ImageUrl
421: {
422: get
423: {
424: return StoreListingSampleScreenCaptureXImage(2);
425: }
426: }
427:
428: ////////////////////////////////////////////////////////////////////////////
429:
430: /// <summary>
431: ///
432: /// </summary>
433: public string StoreListingSampleScreenCapture3ImageUrl
434: {
435: get
436: {
437: return StoreListingSampleScreenCaptureXImage(3);
438: }
439: }
440:
441: ////////////////////////////////////////////////////////////////////////////
442:
443: /// <summary>
444: ///
445: /// </summary>
446: public string StoreListingSampleScreenCapture4ImageUrl
447: {
448: get
449: {
450: return StoreListingSampleScreenCaptureXImage(4);
451: }
452: }
453:
454: ////////////////////////////////////////////////////////////////////////////
455:
456: /// <summary>
457: ///
458: /// </summary>
459: public string StoreListingSampleScreenCapture5ImageUrl
460: {
461: get
462: {
463: return StoreListingSampleScreenCaptureXImage(5);
464: }
465: }
466:
467: ////////////////////////////////////////////////////////////////////////////
468:
469: /// <summary>
470: ///
471: /// </summary>
472: public string StoreListingSampleScreenCapture6ImageUrl
473: {
474: get
475: {
476: return StoreListingSampleScreenCaptureXImage(6);
477: }
478: }
479:
480: ////////////////////////////////////////////////////////////////////////////
481:
482: /// <summary>
483: ///
484: /// </summary>
485: public string StoreListingSampleScreenCapture7ImageUrl
486: {
487: get
488: {
489: return StoreListingSampleScreenCaptureXImage(7);
490: }
491: }
492:
493: ////////////////////////////////////////////////////////////////////////////
494:
495: /// <summary>
496: ///
497: /// </summary>
498: public string StoreListingSampleScreenCapture8ImageUrl
499: {
500: get
501: {
502: return StoreListingSampleScreenCaptureXImage(8);
503: }
504: }
505:
506: ////////////////////////////////////////////////////////////////////////////
507:
508: /// <summary>
509: ///
510: /// </summary>
511: public string StoreListingSampleScreenCaptureXImage(int i)
512: {
513: return "https://cdn.tentplay.com/trek/country/" + this.Iso3 + @"/images/" + i + ".png";
514: }
515:
516: ////////////////////////////////////////////////////////////////////////////
517: ////////////////////////////////////////////////////////////////////////////
518: }
519:
520: ////////////////////////////////////////////////////////////////////////////
521:
522: public class Image
523: {
524: /// <summary/>
525: //public string Caption { get; set; }
526:
527: /// <summary/>
528: //public string Photographer { get; set; }
529:
530: /// <summary/>
531: //public string Source { get; set; }
532:
533: /// <summary/>
534: public string AndroidFileName { get; set; }
535:
536: /// <summary/>
537: public string FileName { get; set; }
538: }
539:
540: ////////////////////////////////////////////////////////////////////////////
541:
542: public class Translation
543: {
544: /// <summary/>
545: public Translation() { }
546:
547: /// <summary/>
548: public string CountryIso3 { get; set; }
549: /// <summary/>
550: public string Iso6391 { get; set; }
551: /// <summary/>
552: public string SiteName { get; set; }
553: /// <summary/>
554: public string CompanyName { get; set; }
555: /// <summary/>
556: public string ShortDescription { get; set; }
557: /// <summary/>
558: public string LongDescription { get; set; }
559:
560: /// <summary/>
561: public string About { get; set; }
562: /// <summary/>
563: public string AboutTitle { get; set; }
564: /// <summary/>
565: public string SearchSearchHint { get; set; }
566: /// <summary/>
567: public string Statistic { get; set; }
568: /// <summary/>
569: public string StatisticTitle { get; set; }
570: /// <summary/>
571: public string Setting { get; set; }
572: /// <summary/>
573: public string SettingTitle { get; set; }
574:
575: /// <summary/>
576: public string ShareTitle { get; set; }
577: /// <summary/>
578: public string ShareApplication { get; set; }
579: /// <summary/>
580: public string ShareTrek { get; set; }
581: /// <summary/>
582: public string ShareNoEmailClientInstalled { get; set; }
583: /// <summary/>
584: public string ShareContactUs { get; set; }
585:
586: /// <summary/>
587: public string HelpFeedbackTitle { get; set; }
588: /// <summary/>
589: public string Help { get; set; }
590: /// <summary/>
591: public string HelpTitle { get; set; }
592: /// <summary/>
593: public string HelpMagnifiyingGlass { get; set; }
594: /// <summary/>
595: public string HelpMainListOrder { get; set; }
596: /// <summary/>
597: public string HelpMapType { get; set; }
598: /// <summary/>
599: public string HelpGoogleMapRoute { get; set; }
600: /// <summary/>
601: public string HelpGoogleMapMarker { get; set; }
602: /// <summary/>
603: public string Feedback { get; set; }
604: /// <summary/>
605: public string FeedbackTitle { get; set; }
606: /// <summary/>
607: public string FeedbackEmailSubject { get; set; }
608:
609: /// <summary/>
610: public string Legal { get; set; }
611: /// <summary/>
612: public string LegalTitle { get; set; }
613: /// <summary/>
614: public string FeatureClassName { get; set; }
615: /// <summary/>
616: public string FeatureClassCaption { get; set; }
617: /// <summary/>
618: public string FeatureClassDescription { get; set; }
619: /// <summary/>
620: public string FeatureClassAdministrativeName { get; set; }
621: /// <summary/>
622: public string FeatureClassAdministrativeCaption { get; set; }
623: /// <summary/>
624: public string FeatureClassAdministrativeClassId { get; set; }
625: /// <summary/>
626: public string FeatureClassAdministrativeDescription { get; set; }
627: /// <summary/>
628: public string FeatureClassPopulatedName { get; set; }
629: /// <summary/>
630: public string FeatureClassPopulatedCaption { get; set; }
631: /// <summary/>
632: public string FeatureClassPopulatedClassId { get; set; }
633: /// <summary/>
634: public string FeatureClassPopulatedDescription { get; set; }
635: /// <summary/>
636: public string FeatureClassVegetationName { get; set; }
637: /// <summary/>
638: public string FeatureClassVegetationCaption { get; set; }
639: /// <summary/>
640: public string FeatureClassVegetationClassId { get; set; }
641: /// <summary/>
642: public string FeatureClassVegetationDescription { get; set; }
643: /// <summary/>
644: public string FeatureClassLocalityName { get; set; }
645: /// <summary/>
646: public string FeatureClassLocalityCaption { get; set; }
647: /// <summary/>
648: public string FeatureClassLocalityClassId { get; set; }
649: /// <summary/>
650: public string FeatureClassLocalityDescription { get; set; }
651: /// <summary/>
652: public string FeatureClassUnderseaName { get; set; }
653: /// <summary/>
654: public string FeatureClassUnderseaCaption { get; set; }
655: /// <summary/>
656: public string FeatureClassUnderseaClassId { get; set; }
657: /// <summary/>
658: public string FeatureClassUnderseaDescription { get; set; }
659: /// <summary/>
660: public string FeatureClassStreetName { get; set; }
661: /// <summary/>
662: public string FeatureClassStreetCaption { get; set; }
663: /// <summary/>
664: public string FeatureClassStreetClassId { get; set; }
665: /// <summary/>
666: public string FeatureClassStreetDescription { get; set; }
667: /// <summary/>
668: public string FeatureClassHypsographicName { get; set; }
669: /// <summary/>
670: public string FeatureClassHypsographicCaption { get; set; }
671: /// <summary/>
672: public string FeatureClassHypsographicClassId { get; set; }
673: /// <summary/>
674: public string FeatureClassHypsographicDescription { get; set; }
675: /// <summary/>
676: public string FeatureClassHydrographicName { get; set; }
677: /// <summary/>
678: public string FeatureClassHydrographicCaption { get; set; }
679: /// <summary/>
680: public string FeatureClassHydrographicClassId { get; set; }
681: /// <summary/>
682: public string FeatureClassHydrographicDescription { get; set; }
683: /// <summary/>
684: public string FeatureClassSpotName { get; set; }
685: /// <summary/>
686: public string FeatureClassSpotCaption { get; set; }
687: /// <summary/>
688: public string FeatureClassSpotClassId { get; set; }
689: /// <summary/>
690: public string FeatureClassSpotDescription { get; set; }
691: /// <summary/>
692: public virtual ICollection<Country> Countries
693: {
694: get
695: {
696: return (from c in CountryList where c.Languages.Any(u => u.Iso6391 == this.Iso6391) select c).ToList();
697: }
698: }
699: /// <summary/>
700: public List<Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass> FeatureClassList
701: {
702: get
703: {
704: Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass fc;
705: List<Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass> list;
706:
707: list = new List<Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass>();
708:
709: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
710:
711: fc.Id = this.FeatureClassAdministrativeClassId;
712: fc.Name = this.FeatureClassAdministrativeName;
713: fc.Caption = this.FeatureClassAdministrativeCaption;
714: fc.Description = this.FeatureClassAdministrativeDescription;
715:
716: list.Add(fc);
717:
718:
719: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
720:
721: fc.Id = this.FeatureClassPopulatedClassId;
722: fc.Name = this.FeatureClassPopulatedName;
723: fc.Caption = this.FeatureClassPopulatedCaption;
724: fc.Description = this.FeatureClassPopulatedDescription;
725:
726: list.Add(fc);
727:
728:
729: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
730:
731: fc.Id = this.FeatureClassVegetationClassId;
732: fc.Name = this.FeatureClassVegetationName;
733: fc.Caption = this.FeatureClassVegetationCaption;
734: fc.Description = this.FeatureClassVegetationDescription;
735:
736: list.Add(fc);
737:
738:
739: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
740:
741: fc.Id = this.FeatureClassLocalityClassId;
742: fc.Name = this.FeatureClassLocalityName;
743: fc.Caption = this.FeatureClassLocalityCaption;
744: fc.Description = this.FeatureClassLocalityDescription;
745:
746: list.Add(fc);
747:
748:
749: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
750:
751: fc.Id = this.FeatureClassUnderseaClassId;
752: fc.Name = this.FeatureClassUnderseaName;
753: fc.Caption = this.FeatureClassUnderseaCaption;
754: fc.Description = this.FeatureClassUnderseaDescription;
755:
756: list.Add(fc);
757:
758:
759: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
760:
761: fc.Id = this.FeatureClassStreetClassId;
762: fc.Name = this.FeatureClassStreetName;
763: fc.Caption = this.FeatureClassStreetCaption;
764: fc.Description = this.FeatureClassStreetDescription;
765:
766: list.Add(fc);
767:
768:
769: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
770:
771: fc.Id = this.FeatureClassHypsographicClassId;
772: fc.Name = this.FeatureClassHypsographicName;
773: fc.Caption = this.FeatureClassHypsographicCaption;
774: fc.Description = this.FeatureClassHypsographicDescription;
775:
776: list.Add(fc);
777:
778:
779: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
780:
781: fc.Id = this.FeatureClassHydrographicClassId;
782: fc.Name = this.FeatureClassHydrographicName;
783: fc.Caption = this.FeatureClassHydrographicCaption;
784: fc.Description = this.FeatureClassHydrographicDescription;
785:
786: list.Add(fc);
787:
788:
789: fc = new Ia.TentPlay.Cl.Models.Business.Trek.FeatureClass();
790:
791: fc.Id = this.FeatureClassSpotClassId;
792: fc.Name = this.FeatureClassSpotName;
793: fc.Caption = this.FeatureClassSpotCaption;
794: fc.Description = this.FeatureClassSpotDescription;
795:
796: list.Add(fc);
797:
798: return list;
799: }
800: }
801: }
802:
803: ////////////////////////////////////////////////////////////////////////////
804:
805: /// <summary>
806: ///
807: /// </summary>
808: public static List<Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Country> CountryList
809: {
810: get
811: {
812: if (countryList == null || countryList.Count == 0)
813: {
814: lock (objectLock)
815: {
816: Country country;
817:
818: countryList = new List<Country>(100);
819:
820: foreach (XElement x in XDocument.Element("applicationInformation").Element("countryList").Elements("country"))
821: {
822: country = new Country();
823: country.Iso3 = x.Attribute("id").Value;
824:
825: country.Name = (from c in Ia.Cl.Models.Country.List where c.Iso3 == country.Iso3.ToUpper() select c.Name).SingleOrDefault();
826: country.NameDictionary = (from c in Ia.Cl.Models.Country.List where c.Iso3 == country.Iso3.ToUpper() select c.NameDictionary).SingleOrDefault();
827:
828: country.ManifestPackagePrefix = x.Parent.Parent.Element("manifestPackagePrefix").Value;
829:
830: country.GoogleMapsDebugApiKey = x.Parent.Parent.Element("googleMapsDebugApiKey").Value;
831: country.GoogleAdMobAdUnitDebugId = x.Parent.Parent.Element("googleAdMobAdUnitDebugId").Value;
832:
833: country.ApplicationNameDictionary = ApplicationNameDictionary(x);
834:
835: country.WhatsNew = Regex.Replace(x.Parent.Parent.Element("googleStoreWhatsNew").Value.Trim(), @"\n[ ]+", "\n");
836:
837: country.VersionName = x.Element("version").Attribute("name").Value;
838: country.CopyrightYear = x.Element("version").Attribute("copyrightYear").Value;
839: country.ManifestPackage = x.Element("manifestPackage").Value;
840:
841: country.ApplicationUrl = ReplaceNameVariableWithName(Ia.TentPlay.Cl.Models.Data.CompanyInformation.ApplicationDownloadLink, country);
842:
843: country.GoogleMapsProductionApiKey = x.Element("googleMapsProductionApiKey").Value;
844: country.GoogleAdMobAppId = x.Element("googleAdMobAppId").Value;
845: country.GoogleAdMobAdUnitProductionId = x.Element("googleAdMobAdUnitId").Value;
846:
847: country.Published = (x.Element("version").Attribute("published") != null && x.Element("version").Attribute("published").Value != string.Empty) ? DateTime.Parse(x.Element("version").Attribute("published").Value) : DateTime.MinValue;
848:
849: country.ColorPrimary = (from e in x.Element("colorTheme").Elements("color") where e.Attribute("name").Value == "colorPrimary" select e.Attribute("value").Value).SingleOrDefault();
850: country.ColorPrimaryDark = (from e in x.Element("colorTheme").Elements("color") where e.Attribute("name").Value == "colorPrimaryDark" select e.Attribute("value").Value).SingleOrDefault();
851: country.ColorAccent = (from e in x.Element("colorTheme").Elements("color") where e.Attribute("name").Value == "colorAccent" select e.Attribute("value").Value).SingleOrDefault();
852:
853: country.NavigationHeaderImages = ApplicationImageList(x.Element("navigationHeader").Element("imageList"));
854:
855: country.Languages = ApplicationLanguageList(country.Iso3, country.ApplicationNameDictionary);
856:
857: countryList.Add(country);
858: }
859: }
860: }
861:
862: return countryList.ToList();
863: }
864: }
865:
866: ////////////////////////////////////////////////////////////////////////////
867:
868: /// <summary>
869: ///
870: /// </summary>
871: public static Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Country ByIso3(string iso3)
872: {
873: var country = (from c in CountryList where c.Iso3 == iso3 select c).SingleOrDefault();
874:
875: return country;
876: }
877:
878: ////////////////////////////////////////////////////////////////////////////
879:
880: /// <summary>
881: ///
882: /// </summary>
883: public static void CountryStatisticCalcucation(ref Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Country country)
884: {
885: int featureCount, administrative, populated, vegetation, locality, undersea, street, hypsographic, hydrographic, spot;
886: Ia.Cl.Models.Result result;
887:
888: Ia.TentPlay.Cl.Models.Data.Trek.Feature.Statistic(country.Iso3, out featureCount, out administrative, out populated, out vegetation, out locality, out undersea, out street, out hypsographic, out hydrographic, out spot, out result);
889:
890: country.FeatureCount = featureCount;
891: country.AdministrativeFeatureCount = administrative;
892: country.PopulatedFeatureCount = populated;
893: country.VegetationFeatureCount = vegetation;
894: country.LocalityFeatureCount = locality;
895: country.UnderseaFeatureCount = undersea;
896: country.StreetFeatureCount = street;
897: country.HypsographicFeatureCount = hypsographic;
898: country.HydrographicFeatureCount = hydrographic;
899: country.SpotFeatureCount = spot;
900: }
901:
902: ////////////////////////////////////////////////////////////////////////////
903:
904: /// <summary>
905: ///
906: /// </summary>
907: private static Dictionary<string, string> ApplicationNameDictionary(XElement xElement)
908: {
909: XElement xe;
910: IEnumerable<XAttribute> list;
911: Dictionary<string, string> dictionary;
912:
913: dictionary = new Dictionary<string, string>();
914:
915: xe = xElement.Element("applicationName");
916:
917: if (xe.HasAttributes)
918: {
919: list = xe.Attributes();
920:
921: foreach (XAttribute xa in list)
922: {
923: dictionary.Add(xa.Name.LocalName, xa.Value);
924: }
925: }
926:
927: return dictionary;
928: }
929:
930: ////////////////////////////////////////////////////////////////////////////
931:
932: /// <summary>
933: ///
934: /// </summary>
935: private static List<Ia.Cl.Models.Language> ApplicationLanguageList(string fileCountry, Dictionary<string, string> countryApplicationNameDictionary)
936: {
937: List<Ia.Cl.Models.Language> list, countrySpokenLanguageList, featureDesignationLanguageList;
938:
939: list = new List<Ia.Cl.Models.Language>();
940:
941: countrySpokenLanguageList = (from c in Ia.Cl.Models.Country.List
942: where c.Iso3 == fileCountry
943: select c.SpokenLanguageList).SingleOrDefault();
944:
945: featureDesignationLanguageList = Ia.TentPlay.Cl.Models.Data.Trek.FeatureDesignation.LanguageList;
946:
947: // make sure to select only languages defined in application title
948:
949: list = (from c in countrySpokenLanguageList
950: join n in featureDesignationLanguageList on c.Symbol equals n.Symbol
951: join cand in countryApplicationNameDictionary on n.Symbol equals cand.Key
952: select c).ToList();
953:
954: // below: add English to all language lists for all countries
955: if (list.Find(u => u.Symbol == "en") == null) list.Add(Ia.Cl.Models.Language.List.Single(u => u.Symbol == "en"));
956:
957: return list;
958: }
959:
960: ////////////////////////////////////////////////////////////////////////////
961:
962: /// <summary>
963: ///
964: /// </summary>
965: private static List<Image> ApplicationImageList(XElement imageList)
966: {
967: Image image;
968: List<Image> list;
969:
970: list = new List<Image>();
971:
972: foreach (XElement x in imageList.Elements("image"))
973: {
974: image = new Image();
975:
976: // Attribute
977: //image.Caption = x.Attribute("caption").Value;
978: //image.Photographer = x.Attribute("photographer").Value.Replace(" ", "").ToLower();
979: //image.Source = x.Attribute("source").Value.ToLower();
980: image.FileName = x.Attribute("fileName").Value;
981: image.AndroidFileName = x.Attribute("fileName").Value.Replace("-", "_");
982:
983: list.Add(image);
984: }
985:
986: return list;
987: }
988:
989: ////////////////////////////////////////////////////////////////////////////
990: ////////////////////////////////////////////////////////////////////////////
991:
992: /// <summary>
993: ///
994: /// </summary>
995: private static List<Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Translation> TranslationList(Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Country country)
996: {
997: string s;
998: Ia.Cl.Models.Result result;
999: Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Translation translation;
1000: List<Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Translation> translationList;
1001: List<Ia.TentPlay.Cl.Models.Business.Trek.FeatureDesignation> featureDesignationNameAndCountList;
1002:
1003: translationList = new List<Translation>(100);
1004:
1005: foreach (Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Translation rawTranslation in RawTranslationList)
1006: {
1007: if (country.Languages.Any(u => u.Iso6391 == rawTranslation.Iso6391))
1008: {
1009: featureDesignationNameAndCountList = Ia.TentPlay.Cl.Models.Data.Trek.Default.FeatureDesignationNameAndCountWithinDatabaseList(country.Iso3, rawTranslation, out result);
1010:
1011: translation = new Translation();
1012: translation.CountryIso3 = country.Iso3;
1013: translation.Iso6391 = rawTranslation.Iso6391;
1014:
1015: translation.SiteName = rawTranslation.SiteName;
1016: translation.CompanyName = rawTranslation.CompanyName;
1017:
1018: translation.About = ReplaceNameVariableWithName(rawTranslation.About, country, translation.Iso6391);
1019: translation.AboutTitle = rawTranslation.AboutTitle;
1020:
1021: translation.ShortDescription = ReplaceNameVariableWithName(rawTranslation.ShortDescription, country, translation.Iso6391);
1022:
1023: translation.LongDescription = ReplaceNameVariableWithName(rawTranslation.LongDescription, country, translation.Iso6391);
1024: s = Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.BuildRandomDesignationListString(featureDesignationNameAndCountList);
1025: translation.LongDescription = translation.LongDescription.Replace("#randomDesignationList", s);
1026:
1027: translation.SearchSearchHint = rawTranslation.SearchSearchHint;
1028:
1029: translation.Statistic = ReplaceNameVariableWithName(rawTranslation.Statistic, country, translation.Iso6391);
1030: translation.StatisticTitle = rawTranslation.StatisticTitle;
1031: translation.Setting = rawTranslation.Setting;
1032: translation.SettingTitle = rawTranslation.SettingTitle;
1033:
1034: translation.ShareTitle = rawTranslation.ShareTitle;
1035: translation.ShareApplication = ReplaceNameVariableWithName(rawTranslation.ShareApplication, country, translation.Iso6391);
1036: translation.ShareTrek = ReplaceNameVariableWithName(rawTranslation.ShareTrek, country, translation.Iso6391);
1037: translation.ShareNoEmailClientInstalled = rawTranslation.ShareNoEmailClientInstalled;
1038: translation.ShareContactUs = rawTranslation.ShareContactUs;
1039:
1040: translation.HelpFeedbackTitle = rawTranslation.HelpFeedbackTitle;
1041: translation.Help = rawTranslation.Help;
1042: translation.HelpTitle = rawTranslation.HelpTitle;
1043: translation.HelpMainListOrder = rawTranslation.HelpMainListOrder;
1044: translation.HelpGoogleMapRoute = rawTranslation.HelpGoogleMapRoute;
1045: translation.HelpGoogleMapMarker = rawTranslation.HelpGoogleMapMarker;
1046: translation.HelpMagnifiyingGlass = rawTranslation.HelpMagnifiyingGlass;
1047: translation.HelpMapType = rawTranslation.HelpMapType;
1048: translation.Feedback = ReplaceNameVariableWithName(rawTranslation.Feedback, country, translation.Iso6391);
1049: translation.FeedbackTitle = rawTranslation.FeedbackTitle;
1050: translation.FeedbackEmailSubject = rawTranslation.FeedbackEmailSubject;
1051:
1052: translation.Legal = ReplaceNameVariableWithName(rawTranslation.Legal, country, translation.Iso6391);
1053: translation.LegalTitle = rawTranslation.LegalTitle;
1054:
1055: translation.FeatureClassName = rawTranslation.FeatureClassName;
1056: translation.FeatureClassDescription = rawTranslation.FeatureClassDescription;
1057:
1058: translation.FeatureClassAdministrativeName = rawTranslation.FeatureClassAdministrativeName;
1059: translation.FeatureClassAdministrativeCaption = rawTranslation.FeatureClassAdministrativeCaption;
1060: translation.FeatureClassAdministrativeClassId = rawTranslation.FeatureClassAdministrativeClassId;
1061: translation.FeatureClassAdministrativeDescription = rawTranslation.FeatureClassAdministrativeDescription;
1062:
1063: translation.FeatureClassPopulatedName = rawTranslation.FeatureClassPopulatedName;
1064: translation.FeatureClassPopulatedCaption = rawTranslation.FeatureClassPopulatedCaption;
1065: translation.FeatureClassPopulatedClassId = rawTranslation.FeatureClassPopulatedClassId;
1066: translation.FeatureClassPopulatedDescription = rawTranslation.FeatureClassPopulatedDescription;
1067:
1068: translation.FeatureClassVegetationName = rawTranslation.FeatureClassVegetationName;
1069: translation.FeatureClassVegetationCaption = rawTranslation.FeatureClassVegetationCaption;
1070: translation.FeatureClassVegetationClassId = rawTranslation.FeatureClassVegetationClassId;
1071: translation.FeatureClassVegetationDescription = rawTranslation.FeatureClassVegetationDescription;
1072:
1073: translation.FeatureClassLocalityName = rawTranslation.FeatureClassLocalityName;
1074: translation.FeatureClassLocalityCaption = rawTranslation.FeatureClassLocalityCaption;
1075: translation.FeatureClassLocalityClassId = rawTranslation.FeatureClassLocalityClassId;
1076: translation.FeatureClassLocalityDescription = rawTranslation.FeatureClassLocalityDescription;
1077:
1078: translation.FeatureClassUnderseaName = rawTranslation.FeatureClassUnderseaName;
1079: translation.FeatureClassUnderseaCaption = rawTranslation.FeatureClassUnderseaCaption;
1080: translation.FeatureClassUnderseaClassId = rawTranslation.FeatureClassUnderseaClassId;
1081: translation.FeatureClassUnderseaDescription = rawTranslation.FeatureClassUnderseaDescription;
1082:
1083: translation.FeatureClassStreetName = rawTranslation.FeatureClassStreetName;
1084: translation.FeatureClassStreetCaption = rawTranslation.FeatureClassStreetCaption;
1085: translation.FeatureClassStreetClassId = rawTranslation.FeatureClassStreetClassId;
1086: translation.FeatureClassStreetDescription = rawTranslation.FeatureClassStreetDescription;
1087:
1088: translation.FeatureClassHypsographicName = rawTranslation.FeatureClassHypsographicName;
1089: translation.FeatureClassHypsographicCaption = rawTranslation.FeatureClassHypsographicCaption;
1090: translation.FeatureClassHypsographicClassId = rawTranslation.FeatureClassHypsographicClassId;
1091: translation.FeatureClassHypsographicDescription = rawTranslation.FeatureClassHypsographicDescription;
1092:
1093: translation.FeatureClassHydrographicName = rawTranslation.FeatureClassHydrographicName;
1094: translation.FeatureClassHydrographicCaption = rawTranslation.FeatureClassHydrographicCaption;
1095: translation.FeatureClassHydrographicClassId = rawTranslation.FeatureClassHydrographicClassId;
1096: translation.FeatureClassHydrographicDescription = rawTranslation.FeatureClassHydrographicDescription;
1097:
1098: translation.FeatureClassSpotName = rawTranslation.FeatureClassSpotName;
1099: translation.FeatureClassSpotCaption = rawTranslation.FeatureClassSpotCaption;
1100: translation.FeatureClassSpotClassId = rawTranslation.FeatureClassSpotClassId;
1101: translation.FeatureClassSpotDescription = rawTranslation.FeatureClassSpotDescription;
1102:
1103: translationList.Add(translation);
1104: }
1105: }
1106:
1107: return translationList.ToList();
1108: }
1109:
1110: ////////////////////////////////////////////////////////////////////////////
1111:
1112: /// <summary>
1113: ///
1114: /// </summary>
1115: private static string ReplaceNameVariableWithName(string line, Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Country applicationCountry)
1116: {
1117: return ReplaceNameVariableWithName(line, applicationCountry, null);
1118: }
1119:
1120: ////////////////////////////////////////////////////////////////////////////
1121:
1122: /// <summary>
1123: ///
1124: /// </summary>
1125: private static string ReplaceNameVariableWithName(string line, Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Country applicationCountry, string iso6391)
1126: {
1127: string s;
1128:
1129: s = line;
1130:
1131: // this must be before $manifestPackage
1132: s = Replace(s, "$applicationUrl", applicationCountry.ApplicationUrl);
1133:
1134: if (!string.IsNullOrEmpty(iso6391))
1135: {
1136: s = Replace(s, "$applicationName", applicationCountry.ApplicationNameDictionary[iso6391]);
1137: s = Replace(s, "$countryName", applicationCountry.NameDictionary[iso6391]);
1138: }
1139:
1140: s = Replace(s, "$countryIso3", applicationCountry.Iso3);
1141: s = Replace(s, "$version", applicationCountry.VersionName);
1142: s = Replace(s, "$manifestPackagePrefix", applicationCountry.ManifestPackagePrefix);
1143: s = Replace(s, "$manifestPackage", applicationCountry.ManifestPackage);
1144: s = Replace(s, "$copyrightYear", applicationCountry.CopyrightYear);
1145: s = Replace(s, "$featureCount", applicationCountry.FeatureCount.ToString());
1146:
1147: s = Replace(s, "$companyName", Ia.TentPlay.Cl.Models.Data.CompanyInformation.CompanyName);
1148: s = Replace(s, "$companyEmail", Ia.TentPlay.Cl.Models.Data.CompanyInformation.CompanyEmail);
1149: s = Replace(s, "$companyUrl", Ia.TentPlay.Cl.Models.Data.CompanyInformation.CompanyUrl);
1150:
1151: s = Replace(s, "$applicationCompanyName", Ia.TentPlay.Cl.Models.Data.CompanyInformation.ApplicationCompanyName);
1152: s = Replace(s, "$applicationCompanyEmail", Ia.TentPlay.Cl.Models.Data.CompanyInformation.ApplicationCompanyEmail);
1153: s = Replace(s, "$applicationCompanyUrl", Ia.TentPlay.Cl.Models.Data.CompanyInformation.ApplicationCompanyUrl);
1154:
1155: return s;
1156: }
1157:
1158: ////////////////////////////////////////////////////////////////////////////
1159:
1160: /// <summary>
1161: ///
1162: /// </summary>
1163: private static string Replace(string content, string term, string replacementTerm)
1164: {
1165: return content.Replace(term, replacementTerm);
1166: }
1167:
1168: ////////////////////////////////////////////////////////////////////////////
1169:
1170: /// <summary>
1171: ///
1172: /// </summary>
1173: public static string BuildRandomDesignationListString(List<Ia.TentPlay.Cl.Models.Business.Trek.FeatureDesignation> featureDesignationNameAndCountList)
1174: {
1175: string s;
1176:
1177: s = string.Join(", ", (from f in featureDesignationNameAndCountList where f.Name.Length < 16 select Ia.Cl.Models.Language.Pluralize(f.Name)).PickRandom(19).ToArray());
1178: s = Ia.Cl.Models.Language.FirstCharacterToUpper(s);
1179:
1180: return s;
1181:
1182: }
1183:
1184: ////////////////////////////////////////////////////////////////////////////
1185:
1186: /// <summary>
1187: ///
1188: /// </summary>
1189: public static List<Ia.TentPlay.Cl.Models.Data.Trek.ApplicationInformation.Translation> RawTranslationList
1190: {
1191: get
1192: {
1193: if (translationList == null || translationList.Count == 0)
1194: {
1195: lock (objectLock)
1196: {
1197: Translation translation;
1198:
1199: translationList = new List<Translation>(100);
1200:
1201: foreach (XElement x in XDocument.Element("applicationInformation").Element("translationList").Elements("translation"))
1202: {
1203: translation = new Translation();
1204: translation.Iso6391 = x.Attribute("id").Value;
1205: translation.SiteName = x.Element("siteName").Value;
1206: translation.CompanyName = x.Element("companyName").Value;
1207:
1208: translation.About = x.Element("about").Value.Trim();
1209: translation.AboutTitle = x.Element("about").Attribute("title").Value;
1210:
1211: translation.ShortDescription = Regex.Replace(x.Element("shortDescription").Value.Trim(), @"\n[ ]+", "\n");
1212: translation.LongDescription = Regex.Replace(translation.About, @"\n[ ]+", "\n");
1213:
1214: translation.SearchSearchHint = x.Element("search").Attribute("searchHint").Value;
1215:
1216: translation.Statistic = x.Element("statistic").Value.Trim();
1217: translation.StatisticTitle = x.Element("statistic").Attribute("title").Value;
1218: translation.Setting = x.Element("setting").Value.Trim();
1219: translation.SettingTitle = x.Element("setting").Attribute("title").Value;
1220:
1221: translation.ShareTitle = x.Element("share").Attribute("title").Value;
1222: translation.ShareApplication = x.Element("share").Element("application").Value.Trim();
1223: translation.ShareTrek = x.Element("share").Element("trek").Value.Trim();
1224: translation.ShareNoEmailClientInstalled = x.Element("share").Attribute("noEmailClientInstalled").Value;
1225: translation.ShareContactUs = x.Element("share").Attribute("contactUs").Value;
1226:
1227: translation.HelpFeedbackTitle = x.Element("help_feedback").Attribute("title").Value;
1228: translation.Help = x.Element("help_feedback").Element("help").Value.Trim();
1229: translation.HelpTitle = x.Element("help_feedback").Element("help").Attribute("title").Value;
1230: translation.HelpMainListOrder = x.Element("help_feedback").Element("help").Attribute("mainListOrder").Value;
1231: translation.HelpGoogleMapRoute = x.Element("help_feedback").Element("help").Attribute("googleMapRoute").Value;
1232: translation.HelpGoogleMapMarker = x.Element("help_feedback").Element("help").Attribute("googleMapMarker").Value;
1233: translation.HelpMagnifiyingGlass = x.Element("help_feedback").Element("help").Attribute("magnifiyingGlass").Value;
1234: translation.HelpMapType = x.Element("help_feedback").Element("help").Attribute("mapType").Value;
1235: translation.Feedback = x.Element("help_feedback").Element("feedback").Value.Trim();
1236: translation.FeedbackTitle = x.Element("help_feedback").Element("feedback").Attribute("title").Value;
1237: translation.FeedbackEmailSubject = x.Element("help_feedback").Element("feedback").Attribute("feedbackEmailSubject").Value;
1238:
1239: translation.Legal = x.Element("legal").Value.Trim();
1240: translation.LegalTitle = x.Element("legal").Attribute("title").Value;
1241:
1242: translation.FeatureClassName = x.Element("featureClass").Attribute("caption").Value;
1243: translation.FeatureClassDescription = x.Element("featureClass").Attribute("description").Value;
1244:
1245: translation.FeatureClassAdministrativeName = x.Element("featureClass").Element("administrative").Attribute("name").Value;
1246: translation.FeatureClassAdministrativeCaption = x.Element("featureClass").Element("administrative").Attribute("caption").Value;
1247: translation.FeatureClassAdministrativeClassId = x.Element("featureClass").Element("administrative").Attribute("classId").Value;
1248: translation.FeatureClassAdministrativeDescription = x.Element("featureClass").Element("administrative").Attribute("description").Value;
1249:
1250: translation.FeatureClassPopulatedName = x.Element("featureClass").Element("populated").Attribute("name").Value;
1251: translation.FeatureClassPopulatedCaption = x.Element("featureClass").Element("populated").Attribute("caption").Value;
1252: translation.FeatureClassPopulatedClassId = x.Element("featureClass").Element("populated").Attribute("classId").Value;
1253: translation.FeatureClassPopulatedDescription = x.Element("featureClass").Element("populated").Attribute("description").Value;
1254:
1255: translation.FeatureClassVegetationName = x.Element("featureClass").Element("vegetation").Attribute("name").Value;
1256: translation.FeatureClassVegetationCaption = x.Element("featureClass").Element("vegetation").Attribute("caption").Value;
1257: translation.FeatureClassVegetationClassId = x.Element("featureClass").Element("vegetation").Attribute("classId").Value;
1258: translation.FeatureClassVegetationDescription = x.Element("featureClass").Element("vegetation").Attribute("description").Value;
1259:
1260: translation.FeatureClassLocalityName = x.Element("featureClass").Element("locality").Attribute("name").Value;
1261: translation.FeatureClassLocalityCaption = x.Element("featureClass").Element("locality").Attribute("caption").Value;
1262: translation.FeatureClassLocalityClassId = x.Element("featureClass").Element("locality").Attribute("classId").Value;
1263: translation.FeatureClassLocalityDescription = x.Element("featureClass").Element("locality").Attribute("description").Value;
1264:
1265: translation.FeatureClassUnderseaName = x.Element("featureClass").Element("undersea").Attribute("name").Value;
1266: translation.FeatureClassUnderseaCaption = x.Element("featureClass").Element("undersea").Attribute("caption").Value;
1267: translation.FeatureClassUnderseaClassId = x.Element("featureClass").Element("undersea").Attribute("classId").Value;
1268: translation.FeatureClassUnderseaDescription = x.Element("featureClass").Element("undersea").Attribute("description").Value;
1269:
1270: translation.FeatureClassStreetName = x.Element("featureClass").Element("street").Attribute("name").Value;
1271: translation.FeatureClassStreetCaption = x.Element("featureClass").Element("street").Attribute("caption").Value;
1272: translation.FeatureClassStreetClassId = x.Element("featureClass").Element("street").Attribute("classId").Value;
1273: translation.FeatureClassStreetDescription = x.Element("featureClass").Element("street").Attribute("description").Value;
1274:
1275: translation.FeatureClassHypsographicName = x.Element("featureClass").Element("hypsography").Attribute("name").Value;
1276: translation.FeatureClassHypsographicCaption = x.Element("featureClass").Element("hypsography").Attribute("caption").Value;
1277: translation.FeatureClassHypsographicClassId = x.Element("featureClass").Element("hypsography").Attribute("classId").Value;
1278: translation.FeatureClassHypsographicDescription = x.Element("featureClass").Element("hypsography").Attribute("description").Value;
1279:
1280: translation.FeatureClassHydrographicName = x.Element("featureClass").Element("hydrographic").Attribute("name").Value;
1281: translation.FeatureClassHydrographicCaption = x.Element("featureClass").Element("hydrographic").Attribute("caption").Value;
1282: translation.FeatureClassHydrographicClassId = x.Element("featureClass").Element("hydrographic").Attribute("classId").Value;
1283: translation.FeatureClassHydrographicDescription = x.Element("featureClass").Element("hydrographic").Attribute("description").Value;
1284:
1285: translation.FeatureClassSpotName = x.Element("featureClass").Element("spot").Attribute("name").Value;
1286: translation.FeatureClassSpotCaption = x.Element("featureClass").Element("spot").Attribute("caption").Value;
1287: translation.FeatureClassSpotClassId = x.Element("featureClass").Element("spot").Attribute("classId").Value;
1288: translation.FeatureClassSpotDescription = x.Element("featureClass").Element("spot").Attribute("description").Value;
1289:
1290: translationList.Add(translation);
1291: }
1292: }
1293: }
1294:
1295: return translationList.ToList();
1296: }
1297: }
1298:
1299: ////////////////////////////////////////////////////////////////////////////
1300: ////////////////////////////////////////////////////////////////////////////
1301:
1302: /// <summary>
1303: ///
1304: /// How to embed and access resources by using Visual C# http://support.microsoft.com/kb/319292/en-us
1305: ///
1306: /// 1. Change the "Build Action" property of your XML file from "Content" to "Embedded Resource".
1307: /// 2. Add "using System.Reflection".
1308: /// 3. Manifest resource stream will start with the project namespace, the location of XML file.
1309: ///
1310: /// </summary>
1311:
1312: private static XDocument XDocument
1313: {
1314: get
1315: {
1316: if (xDocument == null)
1317: {
1318: lock (objectLock)
1319: {
1320: Assembly assembly;
1321: StreamReader streamReader;
1322:
1323: assembly = Assembly.GetExecutingAssembly();
1324: streamReader = new StreamReader(assembly.GetManifestResourceStream("Ia.TentPlay.Cl.Models.Data.Trek.application-information.xml"));
1325:
1326: try
1327: {
1328: if (streamReader.Peek() != -1) xDocument = System.Xml.Linq.XDocument.Load(streamReader);
1329: }
1330: catch (Exception)
1331: {
1332: }
1333: finally
1334: {
1335: }
1336: }
1337: }
1338:
1339: return xDocument;
1340: }
1341: }
1342:
1343: ////////////////////////////////////////////////////////////////////////////
1344: ////////////////////////////////////////////////////////////////////////////
1345: }
1346: }
- HomeController (Ia.Hsb.DrugOnCall.Wa.Controllers) :
- ErrorViewModel (Ia.Hsb.DrugOnCall.Wa.Models) :
- HomeViewModel (Ia.Hsb.DrugOnCall.Wa.Models) :
- Ui (Ia.Hsb.DrugOnCall.Wa.Models) :
- HomeController (Ia.Hsb.Pregnalact.Wa.Controllers) :
- ErrorViewModel (Ia.Hsb.Pregnalact.Wa.Models) :
- HomeViewModel (Ia.Hsb.Pregnalact.Wa.Models) :
- Ui (Ia.Hsb.Pregnalact.Wa.Models) :
- AgentController (Ia.Api.Wa.Controllers) : Agent API Controller class.
- AuthorizationHeaderHandler () :
- DefaultController (Ia.Api.Wa.Controllers) : Default API Controller class.
- GeoIpController (Ia.Api.Wa.Controllers) : GeoIp API Controller class of Internet Application project model.
- HeartbeatController (Ia.Api.Wa.Controllers) : Heartbeat API Controller class.
- HomeController (Ia.Api.Wa.Controllers) :
- PacketController (Ia.Api.Wa.Controllers) : Packet API Controller class.
- TempController (Ia.Api.Wa.Controllers.Db) : DB Temp API Controller class.
- TraceController (Ia.Api.Wa.Controllers) : Trace API Controller class.
- WeatherController (Ia.Api.Wa.Controllers) : OpenWeatherMap API Controller class.
- WebhookController (Ia.Api.Wa.Controllers) : Webhook API Controller class.
- Ui (Ia.Api.Wa.Models) :
- WeatherForecast (Ia.Api.Wa.Models) :
- Webhook (Ia.Api.Wa.Models) :
- HomeController (Ia.Cdn.Wa.Controllers) :
- ErrorViewModel (Ia.Cdn.Wa.Models) :
- ApplicationDbContext (Ia.Cl) :
- ApplicationUser (Ia.Cl) :
- Db (Ia.Cl) :
- DynamicSiteMapProvider () : Sitemap support class.
- Enumeration () : Enumeration class. Extends enumeration to class like behaviour.
- Extention () : Extention methods for different class objects.
- Agent (Ia.Cl.Models) : Agent model
- ApplicationConfiguration (Ia.Cl.Models) : ApplicationConfiguration class.
- Authentication (Ia.Cl.Model) : Manage and verify user logging and passwords. The administrator will define the user's password and logging website. The service will issue a true of false according to authentication.
- Storage (Ia.Cl.Model.Azure) : Azure Cloud related support functions.
- Default (Ia.Cl.Model.Business.Nfc) : Default NFC Near-Field Communication (NFC) Support Business functions
- Inventory (Ia.Cl.Model.Business.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Business functions
- Tag (Ia.Cl.Model.Business.Nfc) : TAG NFC Near-Field Communication (NFC) Support Business functions
- Country (Ia.Cl.Models) : Country geographic coordinates and standard UN naming conventions.
- Germany (Ia.Cl.Models) : German cities and states.
- Kuwait (Ia.Cl.Models) : Kuwait provinces, cities, and areas.
- SaudiArabia (Ia.Cl.Models) : Saudi Arabia provinces, cities, and areas.
- Encryption (Ia.Cl.Models.Cryptography) : Symmetric Key Algorithm (Rijndael/AES) to encrypt and decrypt data.
- Default (Ia.Cl.Models.Data) : Support class for data model
- Default (Ia.Cl.Model.Data.Nfc) : Default NFC Near-Field Communication (NFC) Support Data functions
- Inventory (Ia.Cl.Model.Data.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Data functions
- Project (Ia.Cl.Model.Nfc.Data) : Project Support class for NFC data model
- Tag (Ia.Cl.Model.Data.Nfc) : TAG NFC Near-Field Communication (NFC) Support Data functions
- Msmq (Ia.Cl.Model.Db) : MSMQ Database support class. This handles storing and retrieving MSMQ storage.
- MySql (Ia.Model.Db) : MySQL supporting class.
- Object (Ia.Cl.Model.Db) : Object entity class
- Odbc (Ia.Cl.Model.Db) : ODBC support class.
- OleDb (Ia.Cl.Models.Db) : OLEDB support class
- Oracle (Ia.Cl.Models.Db) : Oracle support class.
- Sqlite (Ia.Cl.Models.Db) : SQLite support class.
- SqlServer (Ia.Cl.Models.Db) : SQL Server support class.
- SqlServerCe (Ia.Cs.Db) : SQL Server CE support class.
- Temp (Ia.Cl.Models.Db) : Temporary Storage support class.
- Text (Ia.Cl.Models.Db) : Text Database support class. This handles storing and retrieving text storage.
- Xml (Ia.Cl.Models.Db) : XML Database support class. This handles storing and retrieving XDocument storage.
- Default (Ia.Cl.Models) : General use static class of common functions used by most applications.
- Gv (Ia.Cl.Models.Design) : ASP.NET design related support class.
- File (Ia.Cl.Models) : File manipulation related support class.
- Ftp (Ia.Cl.Models) : A wrapper class for .NET 2.0 FTP
- Location (Ia.Cl.Models.Geography) : Geographic location related function, location, coordinates (latitude, longitude), bearing, degree and radian conversions, CMap value for resolution, and country geographic info-IP from MaxMind.
- GeoIp (Ia.Cl.Models) : GeoIp class of Internet Application project model.
- Gmail (Ia.Cl.Models) : Gmail API support class
- StaticMap (Ia.Cl.Models.Google) : Google support class.
- Drive (Ia.Cl.Models.Google) : Google Drive Directory and File support class.
- Heartbeat (Ia.Cl.Models) : Heartbeat class.
- Hijri (Ia.Cl.Model) : Hijri date handler class.
- Html (Ia.Cl.Models) : Handle HTML encoding, decoding functions.
- HtmlHelper (Ia.Cl.Models) : HtmlHelper for ASP.Net Core.
- Http (Ia.Cl.Models) : Contains functions that relate to posting and receiving data from remote Internet/Intranet pages
- Identity (Ia.Cl.Models) : ASP.NET Identity support class.
- Image (Ia.Cl.Models) : Image processing support class.
- Imap (Ia.Cl.Models) : IMAP Server Support Class
- Language (Ia.Cl.Models) : Language related support class including langauge list and codes.
- Individual (Ia.Cl.Model.Life) : Individual object.
- Main (Ia.Cl.Models.Life) : General base class for life entities. Make it link through delegates to create and update database objects.
- Log (Ia.Cl.Models) : Log file support class.
- Mouse (Ia.Cl.Models) : Windows mouse movements and properties control support class.
- Newspaper (Ia.Cl.Models) : Newspaper and publication display format support class.
- Inventory (Ia.Cl.Model.Nfc) : Inventory NFC Near-Field Communication (NFC) Support Entity functions
- Tag (Ia.Cl.Model.Nfc) : TAG NFC Near-Field Communication (NFC) Support Entity functions
- Ocr (Ia.Cl.Models) : Handles OCR operations.
- Packet (Ia.Cl.Models) : Packet model
- PrayerTime (Ia.Cl.Models) : Prayer times support class.
- Punycode (Ia.Cl.Models) : Punycode support class.
- QrCode (Ia.Cl.Models) : QR Code support class.
- RabbitMq (Ia.Cl.Models) : RabbitMQ Messaging and Streaming Broker Support Class.
- Result (Ia.Cl.Models) : Result support class.
- Seo (Ia.Cl.Models) : Search Engine Optimization (SEO) support class.
- Sms (Ia.Cl.Models) : SMS API service support class.
- Smtp (Ia.Cl.Models) : SMTP Server Support Class
- Socket (Ia.Cl.Models) : Search Engine Optimization (SEO) support class.
- Sound (Ia.Cl.Models) : Sound support class.
- Stopwatch (Ia.Cl.Models) : Stopwatch model
- TagHelper (Ia.Cl.Models) : TagHelper for ASP.Net Core.
- Telnet (Ia.Cl.Models) : Telnet communication support class.
- Trace (Ia.Cl.Models) : Trace function to try to identifiy a user using IP addresses, cookies, and session states.
- Default (Ia.Cl.Models.Ui) : Default support UI class
- Upload (Ia.Cl.Model) : Handle file uploading functions.
- Utf8 (Ia.Cl.Models) : Handle UTF8 issues.
- Weather (Ia.Cl.Models) : Weather class
- Winapi (Ia.Cl.Models) : WINAPI click events support class.
- Word (Ia.Cl.Models) : Word object.
- Twitter (Ia.Cl.Models) : Twitter API support class.
- Xml (Ia.Cl.Models) : XML support class.
- Zip (Ia.Cl.Models) : Zip
- AboutController (Ia.Wa.Controllers) :
- AccountController (Ia.Wa.Controllers) :
- ApplicationController (Ia.Wa.Controllers) :
- ContactController (Ia.Wa.Controllers) :
- HelpController (Ia.Wa.Controllers) :
- HomeController (Ia.Wa.Controllers) :
- IdentityController (Ia.Wa.Controllers) :
- LegalController (Ia.Wa.Controllers) :
- LibraryController (Ia.Wa.Controllers) :
- ManageController (Ia.Wa.Controllers) :
- NetworkController (Ia.Wa.Controllers) :
- NgossController (Ia.Wa.Controllers) :
- PortfolioController (Ia.Wa.Controllers) :
- ServiceController (Ia.Wa.Controllers) :
- ServiceDesignChartController (Ia.Wa.Controllers) :
- ServiceDesignController (Ia.Wa.Controllers) :
- ServiceMAndroidController (Ia.Wa.Controllers) :
- ServiceMController (Ia.Wa.Controllers) :
- ServiceMIosController (Ia.Wa.Controllers) :
- ServiceNfcController (Ia.Wa.Controllers) :
- SmsController (Ia.Wa.Controllers) :
- ExternalLoginConfirmationViewModel (Ia.Wa.Models.AccountViewModels) :
- ForgotPasswordViewModel (Ia.Wa.Models.AccountViewModels) :
- LoginViewModel (Ia.Wa.Models.AccountViewModels) :
- RegisterViewModel (Ia.Wa.Models.AccountViewModels) :
- ResetPasswordViewModel (Ia.Wa.Models.AccountViewModels) :
- SendCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- UseRecoveryCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- VerifyAuthenticatorCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- VerifyCodeViewModel (Ia.Wa.Models.AccountViewModels) :
- Default (Ia.Wa.Models.Business) :
- ContactViewModel (Ia.Wa.Models) :
- Default (Ia.Wa.Models.Data) :
- Portfolio (Ia.Wa.Models.Data) :
- ErrorViewModel (Ia.Wa.Models) :
- AddPhoneNumberViewModel (Ia.Wa.Models.ManageViewModels) :
- ChangePasswordViewModel (Ia.Wa.Models.ManageViewModels) :
- ConfigureTwoFactorViewModel (Ia.Wa.Models.ManageViewModels) :
- DisplayRecoveryCodesViewModel (Ia.Wa.Models.ManageViewModels) :
- FactorViewModel (Ia.Wa.Models.ManageViewModels) :
- IndexViewModel (Ia.Wa.Models.ManageViewModels) :
- ManageLoginsViewModel (Ia.Wa.Models.ManageViewModels) :
- RemoveLoginViewModel (Ia.Wa.Models.ManageViewModels) :
- SetPasswordViewModel (Ia.Wa.Models.ManageViewModels) :
- VerifyPhoneNumberViewModel (Ia.Wa.Models.ManageViewModels) :
- MenuViewModel (Ia.Wa.Models) :
- ParameterViewModel (Ia.Wa.Models) :
- QrCodeViewModel (Ia.Wa.Models) :
- Default (Ia.Wa.Models.Ui) :
- ServiceAndroidApplicationTrekCountry (Ia.Wa.Models.Ui) :
- AuthMessageSender (IdentitySample.Services) :
- DefaultController (Ia.Ngn.Cl.Model.Api.Controller) : Service Suspension API Controller class of Next Generation Network'a (NGN's) model.
- KoranController (Ia.Islamic.Koran.Cl.Model.Api.Controller) : Koran API Controller class of Islamic Koran Reference Network project model.
- PrayerTimeController (Ia.Islamic.Koran.Cl.Model.Api.Controller) : Prayer Time API Controller class of Islamic Koran Reference Network project model.
- ApplicationController (Ia.Islamic.Koran.Belief.Wa.Controllers) :
- HomeController (Ia.Islamic.Koran.Belief.Wa.Controllers) :
- ApplicationViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- Business (Ia.Islamic.Koran.Belief.Wa.Models) : Koran Reference Network support functions: Business model
- ErrorViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- HomeViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- VerseCheckboxViewModel (Ia.Islamic.Koran.Belief.Wa.Models) :
- KoranDbContext (Ia.Islamic.Cl) : Koran Reference Network Data Context
- Default (Ia.Islamic.Cl.Model.Business) : Koran Reference Network Class Library support functions: Business model
- PrayerTime (Ia.Islamic.Koran.Cl.Model.Business) : Prayer Time Business class of Islamic Koran Reference Network project model.
- Word (Ia.Islamic.Cl.Model.Business) : Koran Reference Network Class Library support functions: business model
- Chapter (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Default (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: Data model
- Koran (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Verse (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- VerseTopic (Ia.Islamic.Cl.Model.Data) : Koran Reference Network Class Library support functions: data model
- Chapter (Ia.Islamic.Cl.Model) : Chapter Koran Reference Network Class Library support functions: Entity model
- Koran (Ia.Islamic.Cl.Model) : Koran Koran Reference Network Class Library support functions: Entity model
- Verse (Ia.Islamic.Cl.Model) : Verse Koran Reference Network Class Library support functions: Entity model
- VerseTopic (Ia.Islamic.Cl.Model) : VerseTopic Koran Reference Network Class Library support functions: Entity model
- Word (Ia.Islamic.Cl.Model) : Word Koran Reference Network Class Library support functions: Entity model
- WordVerse (Ia.Islamic.Cl.Model) : WordVerse Koran Reference Network Class Library support functions: Entity model
- Translation (Ia.Islamic.Cl.Model) : Koran Reference Network Class Library support functions: Data model
- VerseTopicUi (Ia.Islamic.Cl.Model.Ui) : Koran Reference Network Class Library support functions: UI model
- HomeController (Ia.Islamic.Koran.Wa.Controllers) :
- KoranController (Ia.Islamic.Koran.Wa.Controllers) :
- Default (Ia.Islamic.Koran.Wa.Model.Business) :
- ErrorViewModel (Ia.Islamic.Koran.Wa.Models) :
- KoranViewModel (Ia.Islamic.Koran.Wa.Models) :
- Default (Ia.Islamic.Koran.Wa.Models.Ui) :
- Default (Ia.Islamic.Koran.Wfa.Model.Business) : Koran Reference Network Windows Form support functions: Business model
- Preparation (Ia.Islamic.Koran.Wfa.Model.Business) : Koran Reference Network Windows Form support functions: Business model
- Default (Ia.Islamic.Koran.Wfa.Model.Data) : Koran Reference Network Windows Form support functions: Data model
- Kanji (Ia.Learning.Cl.Models.Business) : Kanji business support class
- Kanji (Ia.Learning.Cl.Models.Data) : Kanji support class
- Default (Ia.Learning.Cl.Models) : Default data support functions
- MoeBook (Ia.Learning.Cl.Models) : Ministry of Education Books support class for Learning data model.
- Default (Ia.Learning.Cl.Models.Ui) :
- Business (Ia.Learning.Kafiya.Models) : Default business support class.
- Data (Ia.Learning.Kafiya.Models) : Default data support class.
- HomeController (Ia.Learning.Manhag.Wa.Controllers) :
- ErrorViewModel (Ia.Learning.Manhag.Wa.Models) :
- IndexViewModel (Ia.Learning.Manhag.Wa.Models.Home) :
- DefaultController (Ia.Learning.Kanji.Wa.Controllers) :
- Default (Ia.Learning.Kanji.Models.Business) : Default business support class.
- Index (Ia.Learning.Kanji.Wa.Models.Default) :
- IndexViewModel (Ia.Learning.Kanji.Wa.Models.Default) :
- ErrorViewModel (Ia.Learning.Kanji.Wa.Models) :
- Default (Ia.Simple.Cl.Models.Business.SmartDeals) :
- Category (Ia.Simple.Cl.Models.Data.SmartDeals) :
- Default (Ia.Simple.Cl.Models.Data.SmartDeals) :
- Product (Ia.Simple.Cl.Models.Data.SmartDeals) :
- HomeController (Ia.Statistics.Cdn.Wa.Controllers) :
- Default (Ia.Statistics.Cl.Models.Boutiqaat) : Structure of the boutiqaat.com website.
- Category (Ia.Statistics.Cl.Models) :
- Default (Ia.Statistics.Cl.Models.Dabdoob) : Structure of the dabdoob.com website.
- Default (Ia.Statistics.Cl.Models) :
- Default (Ia.Statistics.Cl.Models.EnglishBookshop) : Structure of the theenglishbookshop.com website.
- Default (Ia.Statistics.Cl.Models.FantasyWorldToys) : Structure of the fantasyworldtoys.com website.
- Default (Ia.Statistics.Cl.Models.HsBookstore) : Structure of the hsbookstore.com website.
- Default (Ia.Statistics.Cl.Models.LuluHypermarket) : Structure of the lulutypermarket.com website.
- Default (Ia.Statistics.Cl.Models.Natureland) : Structure of the natureland.net website.
- Product (Ia.Statistics.Cl.Models) :
- ProductPriceSpot (Ia.Statistics.Cl.Models) :
- ProductPriceStockQuantitySold (Ia.Statistics.Cl.Models) :
- ProductStockSpot (Ia.Statistics.Cl.Models) :
- Site (Ia.Statistics.Cl.Models) : Site support class for Optical Fiber Network (OFN) data model.
- Default (Ia.Statistics.Cl.Models.SultanCenter) : Structure of the sultan-center.com website.
- Default (Ia.Statistics.Cl.Models.Taw9eel) : Structure of the taw9eel.com website.
- WebDriverExtensions () :
- AboutController (Ia.Statistics.Wa.Controllers) :
- ContactController (Ia.Statistics.Wa.Controllers) :
- HelpController (Ia.Statistics.Wa.Controllers) :
- HomeController (Ia.Statistics.Wa.Controllers) :
- IdentityController (Ia.Statistics.Wa.Controllers) :
- LegalController (Ia.Statistics.Wa.Controllers) :
- ListController (Ia.Statistics.Wa.Controllers) :
- SearchController (Ia.Statistics.Wa.Controllers) :
- ServiceController (Ia.Statistics.Wa.Controllers) :
- Default (Ia.Statistics.Wa.Models.Business) :
- ContactViewModel (Ia.Statistics.Wa.Models) :
- Default (Ia.Statistics.Wa.Models.Data) :
- ErrorViewModel (Ia.Statistics.Wa.Models) :
- Index (Ia.Statistics.Wa.Models.Home) :
- IndexViewModel (Ia.Statistics.Wa.Models.Home) :
- ProductViewModel (Ia.Statistics.Wa.Models.List) :
- Default (Ia.Statistics.Wa.Models.Ui) :
- ServiceAndroidApplicationTrekCountry (Ia.Statistics.Wa.Models.Ui) :
- DefaultController (Ia.TentPlay.Api.Wa.Controllers) : Trek API Controller class of Tent Play's model.
- ApplicationDbContext (Ia.TentPlay) :
- Db (Ia.TentPlay) :
- Default (Ia.TentPlay.Cl.Models.Business) : Support class for TentPlay business model
- Default (Ia.TentPlay.Cl.Models.Business.Trek) : Support class for TentPlay Trek business model
- Feature (Ia.TentPlay.Cl.Models.Business.Trek) : Feature class for TentPlay Trek business model
- FeatureClass (Ia.TentPlay.Cl.Models.Business.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureClassDistanceToCapital (Ia.TentPlay.Cl.Models.Business.Trek) : FeatureClassDistanceToCapital Support class for TentPlay business model
- FeatureDesignation (Ia.TentPlay.Cl.Models.Business.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureName (Ia.TentPlay.Cl.Models.Business.Trek) : Support class for TentPlay Trek business model
- CompanyInformation (Ia.TentPlay.Cl.Models.Data) : CompanyInformation Support class for TentPlay data model
- Default (Ia.TentPlay.Cl.Models.Data) : Support class for TentPlay data model
- ApplicationInformation (Ia.TentPlay.Cl.Models.Data.Trek) : ApplicationInformation Support class for TentPlay Trek data model
- Default (Ia.TentPlay.Cl.Models.Data.Trek) : Default class for TentPlay Trek data model
- Feature (Ia.TentPlay.Cl.Models.Data.Trek) : Feature Support class for TentPlay entity data
- FeatureClass (Ia.TentPlay.Cl.Models.Data.Trek) : FeatureClass Support class for TentPlay Trek business model
- FeatureDesignation (Ia.TentPlay.Cl.Models.Data.Trek) : FeatureDesignation Support class for TentPlay Trek data model
- NgaCountryWaypoint (Ia.TentPlay.Cl.Models.Data.Trek) : NgaCountryWaypoint Support class for TentPlay Waypoint entity data
- Score (Ia.TentPlay.Cl.Models.Memorise) : Score entity functions
- Feature (Ia.TentPlay.Cl.Models.Trek) : Feature Support class for TentPlay entity model
- FeatureDesignation (Ia.TentPlay.Cl.Models.Trek) : FeatureDesignation Support class for TentPlay Trek entity model
- ApplicationInformation (Ia.TentPlay.Cl.Models.Memorise) : ApplicationInformation Support class for TentPlay Memorise model
- Default (Ia.TentPlay.Cl.Models.Memorise) : Default class for TentPlay Memorise data model
- German (Ia.TentPlay.Cl.Models.Memorise) : German class
- Kana (Ia.TentPlay.Cl.Models.Memorise) : Kana class
- Kanji (Ia.TentPlay.Cl.Models.Memorise) : Kanji class
- Math (Ia.TentPlay.Cl.Models.Memorise) : Math Class
- MorseCode (Ia.TentPlay.Cl.Models.Memorise) : Morse code class
- PhoneticAlphabet (Ia.TentPlay.Cl.Models.Memorise) : Phonetic Alphabet
- Russian (Ia.TentPlay.Cl.Models.Memorise) : Russian class
- Test (Ia.TentPlay.Cl.Models.Memorise) : Test Class
- Default (Ia.TentPlay.Cl.Models.Ui.Trek) : Default class for TentPlay Trek UI model
- AboutController (Ia.TentPlay.Wa.Controllers) :
- ContactController (Ia.TentPlay.Wa.Controllers) :
- HelpController (Ia.TentPlay.Wa.Controllers) :
- HomeController (Ia.TentPlay.Wa.Controllers) :
- LegalController (Ia.TentPlay.Wa.Controllers) :
- MemoriseController (Ia.TentPlay.Wa.Controllers) :
- TradeController (Ia.TentPlay.Wa.Controllers) :
- TrekController (Ia.TentPlay.Wa.Controllers) :
- ErrorViewModel (Ia.TentPlay.Wa.Models) :
- TrekViewModel (Ia.TentPlay.Wa.Models) :
- Default (Ia.TentPlay.Wa.Models.Ui) :