public void Dispose()
 {
     if (PlaceHolders != null)
     {
         PlaceHolders.GetEnumerator().Dispose();
     }
 }
Exemple #2
0
        public virtual IDerivation Visit(PlaceHolderPhrase aPlaceHolderPhrase, DerivationContext aContext)
        {
            ListDerivation lList = new ListDerivation(true, aContext);
            TextDerivation lText = new TextDerivation(aPlaceHolderPhrase.Name); //Symbol.Create(mGrammar, Name, true);

            lList.Add(lText);
            //add this point to special list for futher replacement
            PlaceHolders.Add(aPlaceHolderPhrase.Name, lText);
            return(lList);
        }
Exemple #3
0
        public IEnumerable <string> GetPlaceHolderNames()
        {
            var list = PlaceHolders.Replace('|', ',');

            foreach (var placeHolders in list.Split(','))
            {
                if (string.IsNullOrEmpty(placeHolders))
                {
                    continue;
                }

                yield return(GetPlaceHolderName(this, placeHolders));
            }
        }
Exemple #4
0
        public override IDerivation Expand(DerivationContext aContext)
        {
            IDerivation        lExpandList    = RightPhrase.Expand(aContext);
            List <IDerivation> lReplacePoints = PlaceHolders.GetList(Name);

            foreach (TextDerivation lPoint in lReplacePoints)
            {
                if (Add)
                {
                    lPoint.Text += lExpandList.ToString();
                }
                else
                {
                    lPoint.Text = lExpandList.ToString();
                }
            }
            return(lExpandList);
        }
Exemple #5
0
        public virtual IDerivation Visit(PlaceHolderAssignPhrase aPlaceHolderAssignPhrase, DerivationContext aContext)
        {
            IDerivation        lExpandList    = aPlaceHolderAssignPhrase.RightPhrase.Accept(aContext);
            List <IDerivation> lReplacePoints = PlaceHolders.GetList(aPlaceHolderAssignPhrase.Name);

            foreach (TextDerivation lPoint in lReplacePoints)
            {
                if (aPlaceHolderAssignPhrase.Add)
                {
                    lPoint.Text += lExpandList.ToString();
                }
                else
                {
                    lPoint.Text = lExpandList.ToString();
                }
            }
            return(lExpandList);
        }
Exemple #6
0
        internal static AutoReminderAndPlaceHolders getAutoReminderAndPlaceHolders(HttpResponseMessage response)
        {
            var reminderAndPlaceHolders = new AutoReminderAndPlaceHolders();
            var jsonObj = JsonConvert.DeserializeObject <Dictionary <string, object> >(response.Content.ReadAsStringAsync().Result);

            if (jsonObj.ContainsKey("autoreminder"))
            {
                var reminder = new AutoReminder();
                reminder = JsonConvert.DeserializeObject <AutoReminder>(jsonObj["autoreminder"].ToString());
                reminderAndPlaceHolders.autoreminder = reminder;
            }
            if (jsonObj.ContainsKey("placeholders"))
            {
                var placeHolders = new PlaceHolders();
                placeHolders = JsonConvert.DeserializeObject <PlaceHolders>(jsonObj["placeholders"].ToString());
                reminderAndPlaceHolders.placeholders = placeHolders;
            }
            return(reminderAndPlaceHolders);
        }
Exemple #7
0
        internal static ManualReminderAndPlaceHolders getManualReminderAndPlaceHolders(HttpResponseMessage response)
        {
            var reminderAndPlaceHolders = new ManualReminderAndPlaceHolders();
            var jsonObj = JsonConvert.DeserializeObject <Dictionary <string, object> >(response.Content.ReadAsStringAsync().Result);

            if (jsonObj.ContainsKey("manualreminder"))
            {
                var reminder = new ManualReminder();
                reminder = JsonConvert.DeserializeObject <ManualReminder>(jsonObj["manualreminder"].ToString());
                reminderAndPlaceHolders.manualreminder = reminder;
            }
            if (jsonObj.ContainsKey("placeholders"))
            {
                var placeHolders = new PlaceHolders();
                placeHolders = JsonConvert.DeserializeObject <PlaceHolders>(jsonObj["placeholders"].ToString());
                reminderAndPlaceHolders.placeholders = placeHolders;
            }
            if (jsonObj.ContainsKey("show_org_address_as_one_field"))
            {
                reminderAndPlaceHolders.show_org_address_as_one_field = (bool)jsonObj["show_org_address_as_one_field"];
            }
            return(reminderAndPlaceHolders);
        }
Exemple #8
0
    public static PlaceHolders[] GetPlaceHolders(int emailTemplateID)
    {
        EmailTemplate       template = EmailTemplates.GetEmailTemplate(UserSession.LoginUser, emailTemplateID);
        List <PlaceHolders> result   = new List <PlaceHolders>();


        EmailTemplateParameters paramaters = new EmailTemplateParameters(UserSession.LoginUser);

        paramaters.LoadByTemplate(emailTemplateID);

        List <PlaceHolder> list = new List <PlaceHolder>();
        PlaceHolders       phs  = new PlaceHolders();

        if (!paramaters.IsEmpty)
        {
            phs.Name        = "Miscellaneous";
            phs.Description = "";
            foreach (EmailTemplateParameter parameter in paramaters)
            {
                PlaceHolder ph = new PlaceHolder();
                ph.Name        = parameter.Name;
                ph.Description = parameter.Description ?? "";
                list.Add(ph);
            }


            PlaceHolder phTo = new PlaceHolder();
            phTo.Name        = "ToEmailAddress";
            phTo.Description = "This adds the recipient's email address.";
            list.Add(phTo);

            phTo             = new PlaceHolder();
            phTo.Name        = "ToFirstName";
            phTo.Description = "This adds the recipient's first name.";
            list.Add(phTo);

            phTo             = new PlaceHolder();
            phTo.Name        = "ToLastName";
            phTo.Description = "This adds the recipient's last name.";
            list.Add(phTo);

            phs.Items = list.ToArray();
            result.Add(phs);
        }

        EmailTemplateTables tables = new EmailTemplateTables(UserSession.LoginUser);

        tables.LoadByTemplate(emailTemplateID);

        foreach (EmailTemplateTable table in tables)
        {
            phs             = new PlaceHolders();
            phs.Name        = table.Alias;
            phs.Description = table.Description ?? "";
            list.Clear();

            ReportTable reportTable = ReportTables.GetReportTable(UserSession.LoginUser, table.ReportTableID);

            ReportTableFields fields = new ReportTableFields(UserSession.LoginUser);
            fields.LoadByReportTableID(table.ReportTableID);

            foreach (ReportTableField field in fields)
            {
                PlaceHolder ph = new PlaceHolder();
                ph.Name        = table.Alias + '.' + field.FieldName;
                ph.Description = field.Description ?? "";
                list.Add(ph);
            }

            //do custom fields here

            ReferenceType refType = reportTable.CustomFieldRefType;

            if (refType != ReferenceType.None)
            {
                //TicketTypes ticketTypes = new TicketTypes(UserSession.LoginUser);
                //ticketTypes.LoadAllPositions(UserSession.LoginUser.OrganizationID);

                CustomFields customFields = new CustomFields(UserSession.LoginUser);
                customFields.LoadByReferenceType(UserSession.LoginUser.OrganizationID, refType, null, "Name");

                foreach (CustomField customField in customFields)
                {
                    string customFieldName = table.Alias + "." + customField.Name;
                    bool   flag            = false;

                    foreach (PlaceHolder existingPH in list)
                    {
                        if (existingPH.Name == customFieldName)
                        {
                            flag = true;
                            break;
                        }
                    }

                    if (flag)
                    {
                        continue;
                    }

                    PlaceHolder ph = new PlaceHolder();
                    ph.Name        = customFieldName;
                    ph.Description = "";
                    list.Add(ph);

                    /*
                     * if (customField.RefType == ReferenceType.Tickets || customField.RefType == ReferenceType.Actions)
                     * {
                     *  TicketType ticketType = ticketTypes.FindByTicketTypeID(customField.AuxID);
                     *  if (ticketType != null)
                     *  {
                     *      //
                     *  }
                     * }
                     * else
                     * {
                     * }*/
                }
            }

            phs.Items = list.ToArray();
            result.Add(phs);
        }

        phs             = new PlaceHolders();
        phs.Name        = "MyCompany";
        phs.Description = "Your company's information";
        list.Clear();

        ReportTableFields companyFields = new ReportTableFields(UserSession.LoginUser);

        companyFields.LoadByReportTableID(6);

        foreach (ReportTableField field in companyFields)
        {
            PlaceHolder ph = new PlaceHolder();
            ph.Name        = "MyCompany." + field.FieldName;
            ph.Description = field.Description ?? "";
            list.Add(ph);
        }


        phs.Items = list.ToArray();
        result.Add(phs);

        return(result.ToArray());
    }
 public UndefinedLayoutPageCompositionElement()
 {
     PlaceHolders.Add("Body",new RenderingsPlaceHolder("Body"));
 }