예제 #1
0
 private void LoadContents(XmlNode iNode)
 {
     foreach (XmlNode lNode in iNode.ChildNodes)
     {
         RoyalGazetteContent lContent = RoyalGazetteContent.CreateContentObject(lNode.Name);
         if (lContent != null)
         {
             lContent.DoLoad(lNode);
             BoardMeetingTopic lTopic = new BoardMeetingTopic();
             lTopic.Topic     = lContent;
             lTopic.Effective = TambonHelper.GetAttributeOptionalDateTime(lNode, "effective");
             String s = TambonHelper.GetAttributeOptionalString(lNode, "type");
             if (String.IsNullOrEmpty(s))
             {
                 s = TambonHelper.GetAttributeOptionalString(lNode, "new");
             }
             if (!String.IsNullOrEmpty(s))
             {
                 lTopic.Type = (EntityType)Enum.Parse(typeof(EntityType), s);
             }
             lTopic.FindGazette();
             Contents.Add(lTopic);
         }
     }
 }
예제 #2
0
        internal static EntityLeader Load(XmlNode node)
        {
            EntityLeader result = null;

            if (node != null && node.Name.Equals("official"))
            {
                result           = new EntityLeader();
                result.Name      = TambonHelper.GetAttribute(node, "name");
                result.English   = TambonHelper.GetAttributeOptionalString(node, "english");
                result.Telephone = TambonHelper.GetAttributeOptionalString(node, "telephone");
                result.CellPhone = TambonHelper.GetAttributeOptionalString(node, "cellphone");
                result.Comment   = TambonHelper.GetAttributeOptionalString(node, "comment");

                result.BeginOfTermYear = TambonHelper.GetAttributeOptionalInt(node, "beginyear", 0);
                result.EndOfTermYear   = TambonHelper.GetAttributeOptionalInt(node, "endyear", 0);
                result.Index           = TambonHelper.GetAttributeOptionalInt(node, "index", 0);
                result.BeginOfTerm     = TambonHelper.GetAttributeOptionalDateTime(node, "begin");
                result.EndOfTerm       = TambonHelper.GetAttributeOptionalDateTime(node, "end");

                String position = TambonHelper.GetAttribute(node, "title");
                result.Position = (EntityLeaderType)Enum.Parse(typeof(EntityLeaderType), position);

                String personTitle = TambonHelper.GetAttributeOptionalString(node, "nametitle");
                if (!String.IsNullOrEmpty(personTitle))
                {
                    result.Title = (PersonTitle)Enum.Parse(typeof(PersonTitle), position);
                }
            }
            return(result);
        }
예제 #3
0
        internal static RoyalGazette Load(XmlNode iNode)
        {
            RoyalGazette RetVal = null;

            if (iNode != null && iNode.Name.Equals("entry"))
            {
                RetVal             = new RoyalGazette();
                RetVal.Description = TambonHelper.GetAttributeOptionalString(iNode, "description");
                RetVal.URI         = TambonHelper.GetAttribute(iNode, "uri");
                RetVal.Title       = TambonHelper.GetAttribute(iNode, "title");
                RetVal.SubTitle    = TambonHelper.GetAttributeOptionalString(iNode, "subtitle");
                RetVal.Volume      = Convert.ToInt32(TambonHelper.GetAttribute(iNode, "volume"));
                RetVal.Issue       = new RoyalGazetteIssue(TambonHelper.GetAttribute(iNode, "issue"));
                RetVal.PageInfo    = new RoyalGazettePageinfo(TambonHelper.GetAttribute(iNode, "page"));
                Int32 lPageEnd = TambonHelper.GetAttributeOptionalInt(iNode, "pageend", 0);
                if (lPageEnd != 0)
                {
                    RetVal.PageInfo.PageEnd = lPageEnd;
                }
                RetVal.Sign        = TambonHelper.GetAttributeOptionalDateTime(iNode, "sign");
                RetVal.Effective   = TambonHelper.GetAttributeOptionalDateTime(iNode, "effective");
                RetVal.Publication = TambonHelper.GetAttributeDateTime(iNode, "publication");
                RetVal.SignedBy    = TambonHelper.GetAttributeOptionalString(iNode, "signedby");
                String s = TambonHelper.GetAttributeOptionalString(iNode, "signedbyfunction");
                if (!String.IsNullOrEmpty(s))
                {
                    RetVal.SignedByPosition = (GazetteSignPosition)Enum.Parse(typeof(GazetteSignPosition), s);
                }
                Int32 lEffectiveRelative = TambonHelper.GetAttributeOptionalInt(iNode, "effectiveafter", -1);
                if (lEffectiveRelative >= 0)
                {
                    RetVal.Effective = RetVal.Publication.AddDays(lEffectiveRelative);
                }
                RetVal.LoadContents(iNode);
            }

            return(RetVal);
        }