internal static int MergeEvents(EventsPart obj, string novo, bool overwrite) { string oldValue = obj.Source; HParser pNew = new HParser(novo); HParser pOld = new HParser(obj.Source); Dictionary<string, string> eNew = null; Dictionary<string, string> eOld = null; try { // Eventos eNew = pNew.GetEvents(); eOld = pOld.GetEvents(true, eNew.Keys); MergeEventCode(eNew, eOld, "Event", pNew, pOld, overwrite); // Subs eNew = pNew.GetSubs(); eOld = pOld.GetSubs(true, eNew.Keys); MergeEventCode(eNew, eOld, "Sub", pNew, pOld, overwrite); obj.Source = (overwrite ? pNew.Text : pOld.Text); } catch (Exception e) { throw new TemplateException("MergeEvents: "+e.Message, (e.InnerException != null ? e.InnerException : e), obj.KBObject.Name); } return (oldValue != obj.Source ? 1 : 0); }