internal bool AddDate(Pullenti.Ner.Decree.Internal.DecreeToken dt) { if (dt == null) { return(false); } if (dt.Ref != null && (dt.Ref.Referent is Pullenti.Ner.Date.DateReferent)) { Pullenti.Ner.Date.DateReferent dr = dt.Ref.Referent as Pullenti.Ner.Date.DateReferent; if (dr.IsRelative) { return(false); } int year = dr.Year; int mon = dr.Month; int day = dr.Day; if (year == 0) { return(false); } StringBuilder tmp = new StringBuilder(); tmp.Append(year); if (mon > 0) { tmp.AppendFormat(".{0}", mon.ToString("D02")); } if (day > 0) { tmp.AppendFormat(".{0}", day.ToString("D02")); } this.AddSlot(ATTR_DATE, tmp.ToString(), false, 0); return(true); } if (dt.Ref != null && (dt.Ref.Referent is Pullenti.Ner.Date.DateRangeReferent)) { this.AddSlot(ATTR_DATE, dt.Ref.Referent, false, 0); return(true); } if (dt.Value != null) { this.AddSlot(ATTR_DATE, dt.Value, false, 0); return(true); } return(false); }
internal void AddNumber(Pullenti.Ner.Decree.Internal.DecreeToken dt) { if (dt.Typ == Pullenti.Ner.Decree.Internal.DecreeToken.ItemType.Number) { if (dt.NumYear > 0) { this.AddSlot(ATTR_DATE, dt.NumYear.ToString(), false, 0); } } if (string.IsNullOrEmpty(dt.Value)) { return; } string value = dt.Value; if (".,".IndexOf(value[value.Length - 1]) >= 0) { value = value.Substring(0, value.Length - 1); } this.AddSlot(ATTR_NUMBER, value, false, 0); }