Ejemplo n.º 1
0
    void UniSelector_OnItemsSelected(object sender, EventArgs e)
    {
        try
        {
            int processId             = ValidationHelper.GetInteger(ucSelector.Value, 0);
            AutomationManager manager = AutomationManager.GetInstance(CurrentUser);
            var infoObj = BaseAbstractInfoProvider.GetInfoById(listElem.ObjectType, listElem.ObjectID);
            using (CMSActionContext context = new CMSActionContext())
            {
                context.AllowAsyncActions = false;

                manager.StartProcess(infoObj, processId);
            }
        }
        catch (ProcessRecurrenceException ex)
        {
            ShowError(ex.Message);
        }
        catch (Exception ex)
        {
            LogAndShowError("Automation", "STARTPROCESS", ex);
        }

        listElem.UniGrid.ReloadData();
        pnlUpdate.Update();
    }
Ejemplo n.º 2
0
    public override bool LoadData(ActivityInfo ai)
    {
        if ((ai == null) || !ModuleManager.IsModuleLoaded(ModuleName.ECOMMERCE))
        {
            return(false);
        }

        switch (ai.ActivityType)
        {
        case PredefinedActivityType.PRODUCT_ADDED_TO_WISHLIST:
        case PredefinedActivityType.PRODUCT_ADDED_TO_SHOPPINGCART:
        case PredefinedActivityType.PRODUCT_REMOVED_FROM_SHOPPINGCART:
            break;

        default:
            return(false);
        }

        GeneralizedInfo sku = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.SKU, ai.ActivityItemID);

        if (sku != null)
        {
            string productName = ValidationHelper.GetString(sku.GetValue("SKUName"), null);
            ucDetails.AddRow("om.activitydetails.product", productName);

            if (ai.ActivityType != PredefinedActivityType.PRODUCT_ADDED_TO_WISHLIST)
            {
                ucDetails.AddRow("om.activitydetails.productunits", ai.ActivityValue);
            }
        }

        return(ucDetails.IsDataLoaded);
    }
Ejemplo n.º 3
0
    protected void Page_Init(object sender, EventArgs e)
    {
        string objectType = "";

        switch (QueryHelper.GetString("parameterName", "").ToLowerCSafe())
        {
        // It is banner
        case "bannerid":
            objectType = SiteObjectType.BANNER;
            break;

        // It is banner category
        case "bannercategoryid":
            objectType = SiteObjectType.BANNERCATEGORY;
            break;

        default:
            RedirectToInformation(GetString("bannermanagement.error.internal"));
            break;
        }

        // Get the ID
        int id = QueryHelper.GetInteger("parameterValue", 0);

        SetEditedObject(BaseAbstractInfoProvider.GetInfoById(objectType, id), "");
    }
    private BaseInfo GetInfoFromHiddenValues()
    {
        var objectType = ValidationHelper.GetString(hdnObjectType.Value, null);
        var objectId   = ValidationHelper.GetInteger(hdnObjectId.Value, 0);

        return(BaseAbstractInfoProvider.GetInfoById(objectType, objectId));
    }
    /// <summary>
    /// Updates contact's address.
    /// </summary>
    /// <param name="addressInfo">Billing address</param>
    private void MapContactAddress(IAddress addressInfo)
    {
        try
        {
            if ((addressInfo == null) || !SettingsKeyInfoProvider.GetBoolValue(SiteContext.CurrentSiteName + ".CMSEnableOnlineMarketing"))
            {
                return;
            }

            GeneralizedInfo contactInfo = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CONTACT, ContactID);

            // Check that current contact has not yet filled in address
            if ((contactInfo != null) && String.IsNullOrEmpty(ValidationHelper.GetString(contactInfo.GetValue("ContactAddress1"), "")))
            {
                Func <int, int?> getIntIfValid = i => i > 0 ? i : (int?)null;

                contactInfo.SetValue("ContactAddress1", addressInfo.AddressLine1);
                contactInfo.SetValue("ContactAddress2", addressInfo.AddressLine2);
                contactInfo.SetValue("ContactCity", addressInfo.AddressCity);
                contactInfo.SetValue("ContactZIP", addressInfo.AddressZip);
                contactInfo.SetValue("ContactMobilePhone", addressInfo.AddressPhone);
                contactInfo.SetValue("ContactCountryID", getIntIfValid(addressInfo.AddressCountryID));
                contactInfo.SetValue("ContactStateID", getIntIfValid(addressInfo.AddressStateID));
                contactInfo.SetObject();
            }
        }
        catch (Exception ex)
        {
            // Exception could happen when max length of contact parameters is exceeded
            EventLogProvider.LogException("ShoppingCartOrderAddresses.MapContactAddress", "UPDATECONTACT", ex);
        }
    }
Ejemplo n.º 6
0
    /// <summary>
    /// Gets new table header cell which contains label and rollback image.
    /// </summary>
    /// <param name="suffixID">ID suffix</param>
    /// <param name="objectVersion">VersionHistoryInfo object</param>
    private TableHeaderCell GetRollbackTableHeaderCell(string suffixID, ObjectVersionHistoryInfo objectVersion)
    {
        TableHeaderCell tblHeaderCell = new TableHeaderCell();

        // Label
        Label lblValue = new Label();

        lblValue.ID   = "lbl" + suffixID;
        lblValue.Text = HTMLHelper.HTMLEncode(GetVersionNumber(objectVersion.VersionNumber, objectVersion.VersionModifiedWhen)) + "&nbsp;";
        tblHeaderCell.Controls.Add(lblValue);

        // Add rollback controls if user authorized to modify selected object
        if (objectVersion.CheckPermissions(PermissionsEnum.Modify, SiteContext.CurrentSiteName, MembershipContext.AuthenticatedUser))
        {
            // Rollback image
            var imgRollback = new HyperLink();
            imgRollback.ID          = "imgRollback" + suffixID;
            imgRollback.CssClass    = "table-header-action";
            imgRollback.NavigateUrl = "#";

            string tooltip     = null;
            string confirmText = null;

            var info            = BaseAbstractInfoProvider.GetInfoById(Version.VersionObjectType, Version.VersionObjectID);
            var rollbackEnabled = !SynchronizationHelper.IsCheckedOutByOtherUser(info);

            // Set image action and description according to roll back type
            if (chkDisplayAllData.Checked)
            {
                tooltip     = GetString("objectversioning.versionlist.versionfullrollbacktooltip");
                confirmText = GetString("objectversioning.versionlist.confirmfullrollback");
            }
            else
            {
                tooltip     = GetString("history.versionrollbacktooltip");
                confirmText = GetString("Unigrid.ObjectVersionHistory.Actions.Rollback.Confirmation");
            }

            imgRollback.Text    = tooltip;
            imgRollback.Enabled = rollbackEnabled;

            // Prepare onclick script
            if (rollbackEnabled)
            {
                var confirmScript = "if (confirm(\"" + confirmText + "\")) { ";
                confirmScript += ControlsHelper.GetPostBackEventReference(this, objectVersion.VersionID + "|" + chkDisplayAllData.Checked) + "; } return false;";
                imgRollback.Attributes.Add("onclick", confirmScript);
            }

            tblHeaderCell.Controls.Add(imgRollback);
        }

        return(tblHeaderCell);
    }
Ejemplo n.º 7
0
    private void ucSelectCustomer_Changed(object sender, EventArgs e)
    {
        // Check permissions
        if (ContactHelper.AuthorizedModifyContact(ci.ContactSiteID, true))
        {
            // Load value form dynamic control
            string values = null;
            if (ucSelectCustomer != null)
            {
                values = ValidationHelper.GetString(ucSelectCustomer.GetValue("OnlineMarketingValue"), null);
            }

            if (!String.IsNullOrEmpty(values))
            {
                // Store users one by one
                string[] customerIds   = values.Split(';');
                int      currentSiteID = SiteContext.CurrentSiteID;
                foreach (string customerId in customerIds)
                {
                    // Check if user ID is valid
                    int customerIdInt = ValidationHelper.GetInteger(customerId, 0);
                    if (customerIdInt <= 0)
                    {
                        continue;
                    }

                    // Only allow adding customers on the same site as contact or registered customers
                    var customer = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CUSTOMER, customerIdInt);
                    if ((customer == null) || ((customer.Generalized.ObjectSiteID != currentSiteID) && !customer.IsGlobal))
                    {
                        continue;
                    }

                    // Add new relation
                    int parentId = (ci.ContactMergedWithContactID == 0)
                   ? ci.ContactID
                   : ci.ContactMergedWithContactID;

                    ContactMembershipInfoProvider.SetRelationship(customerIdInt, MemberTypeEnum.EcommerceCustomer, ci.ContactID, parentId, true);
                    ci = ContactInfoProvider.GetContactInfo(contactId);
                }

                // When contact was merged then refresh complete page
                if ((ci != null) && (ci.ContactMergedWithContactID > 0))
                {
                    Page.Response.Redirect(RequestContext.URL.ToString(), true);
                }
                else
                {
                    gridElem.ReloadData();
                }
            }
        }
    }
Ejemplo n.º 8
0
    protected void Page_Load(object sender, EventArgs e)
    {
        gridState.WhereCondition = String.Format("StateObjectID = {0} AND StateObjectType = '{1}'", ObjectID, SqlHelper.GetSafeQueryString(ObjectType));
        gridState.EditActionUrl  = EditActionUrl;

        BaseInfo contact = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CONTACT, ObjectID);

        if (contact != null)
        {
            contactSiteId = contact.Generalized.ObjectSiteID;
        }
    }
Ejemplo n.º 9
0
    protected void Page_Load(object sender, EventArgs e)
    {
        siteSelector.UniSelector.OnSelectionChanged   += UniSelector_OnSelectionChanged;
        siteSelector.DropDownSingleSelect.AutoPostBack = true;
        if (!URLHelper.IsPostback())
        {
            siteSelector.SiteID = SiteContext.CurrentSiteID;
        }

        var user = MembershipContext.AuthenticatedUser;

        // Check e-commerce permission
        if (!user.IsAuthorizedPerResource("CMS.Ecommerce", "ReadCustomers") && !user.IsAuthorizedPerResource("CMS.Ecommerce", "EcommerceRead"))
        {
            RedirectToAccessDenied("CMS.Ecommerce", "ReadCustomers OR EcommerceRead");
        }

        // Skip loading customer data when ecommerce module is not present
        if (ModuleEntryManager.IsModuleLoaded(ModuleName.ECOMMERCE))
        {
            // Load customer data
            var customer = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CUSTOMER, QueryHelper.GetInteger("customerId", 0));
            if (customer != null)
            {
                // Check if customer is assigned to current site
                if (!user.CheckPrivilegeLevel(UserPrivilegeLevelEnum.GlobalAdmin) && !CustomerIsOnCurrentSite(customer))
                {
                    EditedObject = null;
                }

                email          = customer.GetStringValue("CustomerEmail", string.Empty);
                firstName      = customer.GetStringValue("CustomerFirstName", string.Empty);
                lastName       = customer.GetStringValue("CustomerLastName", string.Empty);
                customerUserId = customer.GetIntegerValue("CustomerUserID", -1);
                customerSiteId = customer.GetIntegerValue("CustomerSiteID", SiteContext.CurrentSiteID);
            }
        }

        if ((email == null) || (email.Trim() == string.Empty) || (!ValidationHelper.IsEmail(email)))
        {
            headTitle.Visible = false;
            ShowError(GetString("ecommerce.customer.invalidemail"));
            usNewsletters.Visible = false;
        }

        usNewsletters.OnSelectionChanged += usNewsletters_OnSelectionChanged;

        SetWhereCondition();

        LoadSelection(false);
    }
Ejemplo n.º 10
0
    /// <summary>
    /// Raises the <see cref="E:PreInit"/> event.
    /// </summary>
    protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);

        // Set the EditedObject attribute for the UIForm
        if (variantMode == VariantModeEnum.MVT)
        {
            mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.MVTVARIANT, QueryHelper.GetInteger("variantid", 0));
        }
        else if (variantMode == VariantModeEnum.ContentPersonalization)
        {
            cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CONTENTPERSONALIZATIONVARIANT, QueryHelper.GetInteger("variantid", 0));
        }
    }
Ejemplo n.º 11
0
    /// <summary>
    /// Checks whether the user is authorized to delete SKU bound to given node.
    /// </summary>
    /// <param name="node">Node to be checked</param>
    protected bool IsUserAuthorizedToModifySKU(TreeNode node)
    {
        bool authorized = false;

        if ((node != null) && (node.HasSKU))
        {
            var product = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.SKU, node.NodeSKUID);
            if (product != null)
            {
                authorized = product.CheckPermissions(PermissionsEnum.Delete, node.NodeSiteName, currentUser);
            }
        }

        return(authorized);
    }
Ejemplo n.º 12
0
    /// <summary>
    /// Selects base info item
    /// </summary>
    /// <param name="bi">Base info item definition</param>
    private String SelectItem(BaseInfo bi)
    {
        String   script   = String.Empty;
        int      parentID = ValidationHelper.GetInteger(bi.GetValue(itemParentColumn), 0);
        BaseInfo biParent = BaseAbstractInfoProvider.GetInfoById(categoryObjectType, parentID);

        if (biParent != null)
        {
            String categoryPath = ValidationHelper.GetString(biParent.GetValue(categoryPathColumn), String.Empty);
            string path         = categoryPath + "/" + bi.Generalized.ObjectCodeName;
            script += SelectAfterLoad(path, bi.Generalized.ObjectID, "item", parentID, true, true);
        }

        return(script);
    }
Ejemplo n.º 13
0
    protected void Page_Load(object sender, EventArgs e)
    {
        gridState.WhereCondition = new WhereCondition()
                                   .WhereEquals("StateObjectID", ObjectID)
                                   .WhereEquals("StateObjectType", ObjectType)
                                   .ToString(true);
        gridState.EditActionUrl = EditActionUrl;

        BaseInfo contact = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CONTACT, ObjectID);

        if (contact != null)
        {
            contactSiteId = contact.Generalized.ObjectSiteID;
        }
    }
Ejemplo n.º 14
0
    /// <summary>
    /// Init event handler
    /// </summary>
    protected override void OnInit(EventArgs e)
    {
        // Set the EditedObject attribute for the UIForm
        if (variantMode == VariantModeEnum.MVT)
        {
            mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(MVTVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            mvtEditElem.UIFormControl.ReloadData();
        }
        else if (variantMode == VariantModeEnum.ContentPersonalization)
        {
            cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(ContentPersonalizationVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            cpEditElem.UIFormControl.ReloadData();
        }

        base.OnInit(e);
    }
Ejemplo n.º 15
0
    public override bool LoadData(ActivityInfo ai)
    {
        if ((ai == null) || !ModuleManager.IsModuleLoaded(ModuleName.BLOGS))
        {
            return(false);
        }

        switch (ai.ActivityType)
        {
        case PredefinedActivityType.BLOG_COMMENT:
        case PredefinedActivityType.SUBSCRIPTION_BLOG_POST:
            break;

        default:
            return(false);
        }

        // Link to blog post
        int nodeId = ai.ActivityNodeID;

        lblDocIDVal.Text = GetLinkForDocument(nodeId, ai.ActivityCulture);

        // Link to blog
        int blogDocumentID = ai.ActivityItemDetailID;

        if (blogDocumentID > 0)
        {
            plcBlogDocument.Visible = true;
            lblBlogVal.Text         = GetLinkForDocument(blogDocumentID, ai.ActivityCulture);
        }

        if (ai.ActivityType == PredefinedActivityType.BLOG_COMMENT)
        {
            // Get blog comment data
            GeneralizedInfo iinfo = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.BLOGCOMMENT, ai.ActivityItemID);
            if (iinfo != null)
            {
                plcComment.Visible = true;
                txtComment.Text    = ValidationHelper.GetString(iinfo.GetValue("CommentText"), null);
            }
        }

        return(true);
    }
    public override bool LoadData(ActivityInfo ai)
    {
        if ((ai == null) || (ai.ActivityType != PredefinedActivityType.CUSTOMER_REGISTRATION) || !ModuleManager.IsModuleLoaded(ModuleName.ECOMMERCE))
        {
            return(false);
        }

        GeneralizedInfo customer = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CUSTOMER, ai.ActivityItemID);

        if (customer != null)
        {
            string name = UserNameFormatter.GetFriendlyUserName(customer.GetValue("CustomerFirstName") as string, null,
                                                                customer.GetValue("CustomerLastName") as string,
                                                                customer.GetValue("CustomerEmail") as string, null);

            ucDetails.AddRow("om.activitydetails.regcustomer", name);
        }

        return(ucDetails.IsDataLoaded);
    }
Ejemplo n.º 17
0
    /// <summary>
    /// Loads and displays either the MVT or Content personalization edit form.
    /// </summary>
    /// <param name="forceReload">if true, then reloads the edit form content</param>
    private void LoadEditForm()
    {
        // Set the EditedObject attribute for the UIForm
        if (variantMode == VariantModeEnum.MVT)
        {
            mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.MVTVARIANT, QueryHelper.GetInteger("variantid", 0));

            // Display MVT edit dialog
            mvtEditElem.Visible = true;
            mvtEditElem.UIFormControl.SubmitButton.Visible = false;
        }
        else if (variantMode == VariantModeEnum.ContentPersonalization)
        {
            cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CONTENTPERSONALIZATIONVARIANT, QueryHelper.GetInteger("variantid", 0));

            // Display Content personalization edit dialog
            cpEditElem.Visible = true;
            cpEditElem.UIFormControl.SubmitButton.Visible = false;
        }
    }
Ejemplo n.º 18
0
 /// <summary>
 /// Handles the Load event of the Page control.
 /// </summary>
 protected void Page_Load(object sender, EventArgs e)
 {
     if (variantMode == VariantModeEnum.MVT)
     {
         // Display MVT edit dialog
         mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.MVTVARIANT, QueryHelper.GetInteger("variantid", 0));
         mvtEditElem.UIFormControl.ParentObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.PAGETEMPLATE, QueryHelper.GetInteger("templateid", 0));
         mvtEditElem.Visible = true;
         mvtEditElem.UIFormControl.SubmitButton.Visible = false;
         mvtEditElem.UIFormControl.ReloadData();
     }
     else if (variantMode == VariantModeEnum.ContentPersonalization)
     {
         // Display Content personalization edit dialog
         cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.CONTENTPERSONALIZATIONVARIANT, QueryHelper.GetInteger("variantid", 0));
         cpEditElem.UIFormControl.ParentObject = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.PAGETEMPLATE, QueryHelper.GetInteger("templateid", 0));
         cpEditElem.Visible = true;
         cpEditElem.UIFormControl.SubmitButton.Visible = false;
         cpEditElem.UIFormControl.ReloadData();
     }
 }
Ejemplo n.º 19
0
    private void gridState_OnAction(string actionName, object actionArgument)
    {
        switch (actionName.ToLowerCSafe())
        {
        case "delete":
            int stateId = ValidationHelper.GetInteger(actionArgument, 0);

            var obj   = BaseAbstractInfoProvider.GetInfoById(ObjectType, ObjectID);
            var state = AutomationStateInfoProvider.GetAutomationStateInfo(stateId);

            if (!CurrentUser.IsAuthorizedPerResource(ModuleName.ONLINEMARKETING, "RemoveProcess", SiteInfoProvider.GetSiteName(state.StateSiteID)))
            {
                RedirectToAccessDenied(ModuleName.ONLINEMARKETING, "RemoveProcess");
            }

            AutomationManager manager = AutomationManager.GetInstance(CurrentUser);
            manager.RemoveProcess(obj, state);

            break;
        }
    }
Ejemplo n.º 20
0
    protected void Page_Init(object sender, EventArgs e)
    {
        MessagesPlaceHolder = plcMess;

        string objectType  = String.Empty;
        string elementName = String.Empty;

        switch (QueryHelper.GetString("parameterName", String.Empty).ToLowerCSafe())
        {
        // It is banner
        case "bannerid":
            objectType  = BannerInfo.OBJECT_TYPE;
            elementName = "Report_1";
            break;

        // It is banner category
        case "bannercategoryid":
            objectType  = BannerCategoryInfo.OBJECT_TYPE;
            elementName = "Report";
            break;

        default:
            RedirectToInformation(GetString("bannermanagement.error.internal"));
            break;
        }


        // Check UI personalization
        var uiElement = new UIElementAttribute(ResourceName, elementName);

        uiElement.Check(this);

        // Check Reporting permissions
        CheckReportingAvailability();

        // Get the ID
        int id = QueryHelper.GetInteger("parameterValue", 0);

        SetEditedObject(BaseAbstractInfoProvider.GetInfoById(objectType, id), String.Empty);
    }
Ejemplo n.º 21
0
    /// <summary>
    /// OnPreRender event handler
    /// </summary>
    /// <param name="e"></param>
    protected override void OnPreRender(EventArgs e)
    {
        if (SearchTaskInfo != null)
        {
            GeneralizedInfo relatedObjectInfo = BaseAbstractInfoProvider.GetInfoById(SearchTaskInfo.SearchTaskRelatedObjectType, SearchTaskInfo.SearchTaskRelatedObjectID);
            string          relatedObjectStr  = String.Empty;

            if (relatedObjectInfo == null)
            {
                relatedObjectStr = LocalizationHelper.GetStringFormat(
                    "smartsearch.searchtaskrelatedobjectnotexist",
                    TypeHelper.GetNiceObjectTypeName(SearchTaskInfo.SearchTaskRelatedObjectType),
                    SearchTaskInfo.SearchTaskRelatedObjectID
                    );
            }
            else
            {
                relatedObjectStr = relatedObjectInfo.GetFullObjectName(false, true, false);
            }

            StringBuilder report = new StringBuilder();
            report.Append("<div class='form-horizontal'>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.tasktype"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(GetString("smartsearch.tasktype." + SearchTaskInfo.SearchTaskType.ToStringRepresentation())), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskobjecttype"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(TypeHelper.GetNiceObjectTypeName(SearchTaskInfo.SearchTaskObjectType)), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskfield"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(SearchTaskInfo.SearchTaskField), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskvalue"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(SearchTaskInfo.SearchTaskValue), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskrelatedobject"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(relatedObjectStr), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskservername"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(SearchTaskInfo.SearchTaskServerName), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskcreated"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(SearchTaskInfo.SearchTaskCreated.ToString()), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskstatus"), ":</span></div><div class='editing-form-value-cell'><span class='form-control-text'>", UniGridFunctions.ColoredSpanMsg(HTMLHelper.HTMLEncode(GetString("smartsearch.searchtaskstatusenum." + SearchTaskInfo.SearchTaskStatus.ToStringRepresentation())), SearchTaskInfo.SearchTaskStatus != SearchTaskStatusEnum.Error), "</span></div></div>");
            report.Append("<div class='form-group'><div class='editing-form-label-cell'><span class='control-label'>", GetString("smartsearch.task.taskerrormessage"), ":</strong></div><div class='editing-form-value-cell'><span class='form-control-text'>", HTMLHelper.HTMLEncode(SearchTaskInfo.SearchTaskErrorMessage), "</span></div></div>");
            report.Append("</div>");

            lblReport.Text = report.ToString();
        }
        else
        {
            lblReport.Text = GetString("srch.task.tasknotexist");
        }
    }
Ejemplo n.º 22
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!QueryHelper.ValidateHash("hash"))
        {
            return;
        }

        if (!ModuleManager.IsModuleLoaded(ModuleName.ECOMMERCE))
        {
            return;
        }

        int orderId = QueryHelper.GetInteger("orderid", 0);

        // Get order object
        var order = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.ORDER, orderId);

        if (order != null)
        {
            ltl.Text = order.GetStringValue("OrderInvoice", "");
        }
    }
Ejemplo n.º 23
0
    /// <summary>
    /// Loads and displays either the MVT or Content personalization edit form.
    /// </summary>
    /// <param name="forceReload">if true, then reloads the edit form content</param>
    private void LoadEditForm()
    {
        // Set the EditedObject attribute for the UIForm
        if (variantMode == VariantModeEnum.MVT)
        {
            mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(MVTVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            mvtEditElem.UIFormControl.ReloadData();

            // Display MVT edit dialog
            mvtEditElem.Visible = true;
            mvtEditElem.UIFormControl.SubmitButton.Visible = false;
        }
        else if (variantMode == VariantModeEnum.ContentPersonalization)
        {
            cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(ContentPersonalizationVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            cpEditElem.UIFormControl.ReloadData();

            // Display Content personalization edit dialog
            cpEditElem.Visible = true;
            cpEditElem.UIFormControl.SubmitButton.Visible = false;
        }
    }
Ejemplo n.º 24
0
    /// <summary>
    /// Used for maxnodes in collapsed node.
    /// </summary>
    private TreeNode treeElem_OnNodeCreated(DataRow itemData, TreeNode defaultNode)
    {
        if (UseMaxNodeLimit && (MaxTreeNodes > 0))
        {
            //Get parentID from data row
            int    parentID       = ValidationHelper.GetInteger(itemData.ItemArray[4], 0);
            string dataObjectType = ValidationHelper.GetString(itemData.ItemArray[7], String.Empty);

            //Dont use maxnodes limitation for categories
            if (dataObjectType.ToLowerCSafe().Contains("category"))
            {
                return(defaultNode);
            }

            //Increment index count in collapsing
            mIndex++;
            if (mIndex == MaxTreeNodes)
            {
                //Load parentid
                int      parentParentID = 0;
                BaseInfo biParent       = BaseAbstractInfoProvider.GetInfoById(categoryObjectType, parentID);

                if (biParent != null)
                {
                    parentParentID = ValidationHelper.GetInteger(biParent.GetValue(categoryParentColumn), 0);
                }

                TreeNode node = new TreeNode();
                node.Text = "<span class=\"ContentTreeItem\" onclick=\"SelectNode(" + parentID + " ,'category'," + parentParentID + ",true ); return false;\"><span class=\"Name\">" + GetString("general.seelisting") + "</span></span>";
                return(node);
            }
            if (mIndex > MaxTreeNodes)
            {
                return(null);
            }
        }
        return(defaultNode);
    }
    /// <summary>
    /// Init event handler.
    /// </summary>
    protected override void OnInit(EventArgs e)
    {
        // When displaying an existing variant of a zone, get the variant mode for its original zone
        if (variantId > 0)
        {
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            if ((pti != null) && ((pti.TemplateInstance != null)))
            {
                // Get the original zone and retrieve its variant mode
                WebPartZoneInstance zoneInstance = pti.TemplateInstance.GetZone(zoneId);
                if ((zoneInstance != null) && (zoneInstance.VariantMode != VariantModeEnum.None))
                {
                    variantMode = zoneInstance.VariantMode;
                }
            }
        }

        if (variantMode == VariantModeEnum.MVT)
        {
            // Display MVT edit dialog
            mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(MVTVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            mvtEditElem.UIFormControl.ParentObject = BaseAbstractInfoProvider.GetInfoById(PageTemplateInfo.OBJECT_TYPE, QueryHelper.GetInteger("templateid", 0));
            mvtEditElem.Visible = true;
            mvtEditElem.UIFormControl.SubmitButton.Visible = false;
            mvtEditElem.UIFormControl.ReloadData();
        }
        else if (variantMode == VariantModeEnum.ContentPersonalization)
        {
            // Display Content personalization edit dialog
            cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(ContentPersonalizationVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            cpEditElem.UIFormControl.ParentObject = BaseAbstractInfoProvider.GetInfoById(PageTemplateInfo.OBJECT_TYPE, QueryHelper.GetInteger("templateid", 0));
            cpEditElem.Visible = true;
            cpEditElem.UIFormControl.SubmitButton.Visible = false;
            cpEditElem.UIFormControl.ReloadData();
        }

        base.OnInit(e);
    }
Ejemplo n.º 26
0
    public override bool LoadData(ActivityInfo ai)
    {
        if ((ai == null) || !ModuleManager.IsModuleLoaded(ModuleName.EVENTMANAGER) || (ai.ActivityType != PredefinedActivityType.EVENT_BOOKING))
        {
            return(false);
        }

        int nodeId = ai.ActivityNodeID;

        ucDetails.AddRow("om.activitydetails.documenturl", GetLinkForDocument(nodeId, ai.ActivityCulture), false);

        GeneralizedInfo iinfo = BaseAbstractInfoProvider.GetInfoById(PredefinedObjectType.EVENTATTENDEE, ai.ActivityItemID);

        if (iinfo != null)
        {
            ucDetails.AddRow("om.activitydetails.attendee", String.Format("{0} {1} ({2})",
                                                                          ValidationHelper.GetString(iinfo.GetValue("AttendeeFirstName"), null),
                                                                          ValidationHelper.GetString(iinfo.GetValue("AttendeeLastName"), null),
                                                                          ValidationHelper.GetString(iinfo.GetValue("AttendeeEmail"), null)));
        }

        return(ucDetails.IsDataLoaded);
    }
Ejemplo n.º 27
0
    private string GetPreviewScriptForNewsletter(IssueInfo issue, NewsletterInfo newsletter, IssueHelper issueHelper)
    {
        string script;
        string siteName = SiteContext.CurrentSiteName;

        // Get specific number of subscribers subscribed to the newsletter
        DataSet subscribers = SubscriberInfoProvider
                              .GetSubscribers()
                              .TopN(MAX_PREVIEW_SUBSCRIBERS)
                              .WhereIn("SubscriberID", new IDQuery(SubscriberNewsletterInfo.OBJECT_TYPE, "SubscriberID")
                                       .WhereEquals("NewsletterID", issue.IssueNewsletterID)
                                       .Where(w => w.WhereTrue("SubscriptionApproved")
                                              .Or()
                                              .WhereNull("SubscriptionApproved")));

        if (!DataHelper.DataSourceIsEmpty(subscribers))
        {
            // Limit max subscribers count to number of rows
            int maxCount = subscribers.Tables[0].Rows.Count;

            // Generate javascript based on subscribers
            script = InitializePreviewScript(issue, maxCount);

            for (int i = 0; i < maxCount; i++)
            {
                // Get subscriber
                SubscriberInfo subscriber = new SubscriberInfo(subscribers.Tables[0].Rows[i]);
                // Insert subscriber GUID
                script = string.Format("{0} guid[{1}] = '{2}'; \n ", script, i, subscriber.SubscriberGUID);

                // Get subscriber's member
                SortedDictionary <int, SubscriberInfo> subMembers = SubscriberInfoProvider.GetSubscribers(subscriber, 1);
                if ((subMembers != null) && (subMembers.Count > 0))
                {
                    foreach (KeyValuePair <int, SubscriberInfo> item in subMembers)
                    {
                        // Get 1st subscriber's member
                        SubscriberInfo sbMember = item.Value;
                        if (sbMember != null)
                        {
                            // Create information line
                            string infoLine = ScriptHelper.GetString(sbMember.SubscriberEmail, false);

                            // Add info about subscriber type
                            if (sbMember.SubscriberType.EqualsCSafe(PredefinedObjectType.CONTACTGROUP, true))
                            {
                                infoLine = string.Format("{0} ({1})", infoLine, GetString("objecttype.om_contactgroup").ToLowerCSafe());
                            }
                            else if (sbMember.SubscriberType.EqualsCSafe(PredefinedObjectType.CONTACT, true))
                            {
                                infoLine = string.Format("{0} ({1})", infoLine, GetString("objecttype.om_contact").ToLowerCSafe());
                            }

                            script = string.Format("{0}email[{1}] = '{2}'; \n ", script, i, HTMLHelper.HTMLEncode(infoLine));

                            // Create resolved subject
                            script = string.Format("{0}subject[{1}] = {2}; \n ", script, i, ScriptHelper.GetString(HTMLHelper.HTMLEncode(GetPreviewSubject(issue, newsletter, issueHelper, sbMember, siteName))));
                        }
                    }
                }
                else
                {
                    // Get generic name for external subscribers
                    var related = BaseAbstractInfoProvider.GetInfoById(subscriber.SubscriberType, subscriber.SubscriberRelatedID);
                    script = string.Format("{0}email[{1}] = '{2}'; \n ", script, i, HTMLHelper.HTMLEncode(TypeHelper.GetNiceObjectTypeName(subscriber.SubscriberType) + " \"" + HTMLHelper.HTMLEncode(related.Generalized.ObjectDisplayName) + "\""));

                    // Create resolved subject
                    return(string.Format("{0}subject[{1}] = {2}; \n ", script, i, ScriptHelper.GetString(HTMLHelper.HTMLEncode(GetPreviewSubject(issue, newsletter, issueHelper, null, siteName)))));
                }
            }
        }
        else
        {
            return(InitializePreviewScriptForZeroSubscribers(issue, GetPreviewSubject(issue, newsletter, issueHelper, null, siteName)));
        }
        return(script);
    }
Ejemplo n.º 28
0
    /// <summary>
    /// Setups controls.
    /// </summary>
    private void SetupControls()
    {
        if (FileSystemMode)
        {
            // New file button
            if (!String.IsNullOrEmpty(NewTextFileExtension))
            {
                plcNewFile.Visible = true;

                string query = "?identifier=" + Identifier;

                // New folder button
                WindowHelper.Remove(Identifier);

                Hashtable properties = new Hashtable();
                properties.Add("targetpath", TargetFolderPath);
                properties.Add("newfileextension", NewTextFileExtension);
                WindowHelper.Add(Identifier, properties);

                var url = UrlResolver.ResolveUrl("~/CMSModules/Content/Controls/Dialogs/Selectors/FileSystemSelector/EditTextFile.aspx") + query;
                url = URLHelper.AddParameterToUrl(url, "hash", QueryHelper.GetHash(url, false));

                btnNew.ToolTip       = GetString("dialogs.actions.newfile.desc");
                btnNew.OnClientClick = String.Format("modalDialog('{0}', 'NewFile', 905, 688, null, true); return false;", url);
                btnNew.Text          = GetString("general.create");
            }
            else
            {
                plcNewFile.Visible = false;
            }

            // Initialize file uploader
            fileUploader.SourceType          = MediaSourceEnum.PhysicalFile;
            fileUploader.TargetFolderPath    = TargetFolderPath;
            fileUploader.AllowedExtensions   = AllowedExtensions;
            fileUploader.AfterSaveJavascript = "FSS_FilesUploaded";
        }
        else
        {
            // If attachments are being displayed and no document or form is specified - hide uploader
            if (!IsCopyMoveLinkDialog && (((SourceType != MediaSourceEnum.DocumentAttachments) && (SourceType != MediaSourceEnum.MetaFile)) ||
                                          ((SourceType == MediaSourceEnum.DocumentAttachments) && (Config.AttachmentDocumentID > 0 || Config.AttachmentFormGUID != Guid.Empty)) ||
                                          ((SourceType == MediaSourceEnum.MetaFile) && ((MetaFileObjectID > 0) && !string.IsNullOrEmpty(MetaFileObjectType) && !string.IsNullOrEmpty(MetaFileCategory)))))
            {
                // Initialize file uploader
                if (SourceType == MediaSourceEnum.MetaFile)
                {
                    fileUploader.ObjectID   = MetaFileObjectID;
                    fileUploader.ObjectType = MetaFileObjectType;
                    fileUploader.Category   = MetaFileCategory;

                    BaseInfo info = BaseAbstractInfoProvider.GetInfoById(MetaFileObjectType, MetaFileObjectID);

                    fileUploader.SiteID = info != null ? info.Generalized.ObjectSiteID : SiteContext.CurrentSiteID;
                }
                else
                {
                    fileUploader.DocumentID          = DocumentID;
                    fileUploader.FormGUID            = FormGUID;
                    fileUploader.NodeParentNodeID    = ((NodeID > 0) ? NodeID : ParentNodeID);
                    fileUploader.NodeClassName       = SystemDocumentTypes.File;
                    fileUploader.LibraryID           = LibraryID;
                    fileUploader.LibraryFolderPath   = LibraryFolderPath;
                    fileUploader.ResizeToHeight      = ResizeToHeight;
                    fileUploader.ResizeToMaxSideSize = ResizeToMaxSideSize;
                    fileUploader.ResizeToWidth       = ResizeToWidth;
                    fileUploader.CheckPermissions    = true;
                }
                fileUploader.ParentElemID = CMSDialogHelper.GetMediaSource(SourceType);
                fileUploader.SourceType   = SourceType;
            }
            else
            {
                plcDirectFileUploader.Visible = false;
                fileUploader.StopProcessing   = true;
            }
        }

        // Initialize disabled button
        fileUploader.IsLiveSite = IsLiveSite;
        fileUploader.Text       = GetString("general.upload");
        fileUploader.UploadMode = MultifileUploaderModeEnum.DirectMultiple;

        const string disableMenuItem =
            @"function DisableNewFileBtn() {                                      
    $cmsj('#dialogsUploaderDiv').attr('style', 'display:none;');                                 
    $cmsj('#dialogsUploaderDisabledDiv').removeAttr('style');
}
";

        ScriptHelper.RegisterStartupScript(Page, typeof(string), "disableMenuItem", ScriptHelper.GetScript(disableMenuItem));

        if (!FileSystemActionsEnabled)
        {
            // Disable file action
            ScriptHelper.RegisterStartupScript(Page, typeof(string), "disableNewFile", ScriptHelper.GetScript("DisableNewFileBtn();"));
        }
    }
Ejemplo n.º 29
0
    /// <summary>
    /// Handles delete action.
    /// </summary>
    /// <param name="eventArgument">Objecttype(item or itemcategory);objectid</param>
    public void RaisePostBackEvent(string eventArgument)
    {
        string[] values = eventArgument.Split(';');
        if (values.Length == 3)
        {
            int      id       = ValidationHelper.GetInteger(values[1], 0);
            int      parentId = ValidationHelper.GetInteger(values[2], 0);
            BaseInfo biParent = BaseAbstractInfoProvider.GetInfoById(categoryObjectType, parentId);

            if (biParent == null)
            {
                return;
            }

            String categoryPath = ValidationHelper.GetString(biParent.GetValue(categoryPathColumn), String.Empty);
            int    parentID     = ValidationHelper.GetInteger(biParent.GetValue(categoryParentColumn), 0);

            //Test permission
            if (!MembershipContext.AuthenticatedUser.IsAuthorizedPerResource(ResourceName, "Modify"))
            {
                String url = CMSPage.GetAccessDeniedUrl(UIHelper.ACCESSDENIED_PAGE, ResourceName, "modify", String.Empty, String.Empty);

                // Display access denied page in conent frame and select deleted item again
                String denyScript = @"$cmsj(document).ready(function(){ frames['paneContentTMain'].location = '" + ResolveUrl(url) + "';" + SelectAfterLoad(categoryPath + "/", id, values[0], parentId, false, false) + "});";

                ltlScript.Text += ScriptHelper.GetScript(denyScript);
                return;
            }

            string script = String.Empty;

            switch (values[0])
            {
            case "item":
                BaseInfo bi = BaseAbstractInfoProvider.GetInfoById(objectType, id);
                if (bi != null)
                {
                    bi.Delete();
                }

                break;

            case "category":
                try
                {
                    BaseInfo biCate = BaseAbstractInfoProvider.GetInfoById(categoryObjectType, id);
                    if (biCate != null)
                    {
                        biCate.Delete();
                    }
                }
                catch (Exception ex)
                {
                    // Make alert with exception message, most probable cause is deleting category with subcategories
                    script = String.Format("alert('{0}');\n", ex.Message);

                    // Current node stays selected
                    parentId = id;
                }
                break;
            }

            // After delete select first tab always
            tabIndexStr     = String.Empty;
            script          = SelectAfterLoad(categoryPath + "/", parentId, "category", parentID, true, true) + script;
            ltlScript.Text += ScriptHelper.GetScript(script);
        }
    }
Ejemplo n.º 30
0
    protected void Page_Load(object sender, EventArgs e)
    {
        objectType = UIContextHelper.GetObjectType(UIContext);
        CloneItemButton.Visible = DisplayCloneButton;

        // Pass tabindex
        int tabIndex = ValidationHelper.GetInteger(UIContext["TabIndex"], 0);

        if (tabIndex != 0)
        {
            tabIndexStr = "&tabindex=" + tabIndex;
        }

        String editElem     = ValidationHelper.GetString(UIContext["itemEdit"], String.Empty);
        String categoryElem = ValidationHelper.GetString(UIContext["categoryedit"], String.Empty);

        categoryPathColumn   = ValidationHelper.GetString(UIContext["pathColumn"], String.Empty);
        categoryParentColumn = ValidationHelper.GetString(UIContext["categoryparentcolumn"], String.Empty);
        categoryObjectType   = ValidationHelper.GetString(UIContext["parentobjecttype"], String.Empty);
        itemParentColumn     = ValidationHelper.GetString(UIContext["parentColumn"], String.Empty);
        newItem = ValidationHelper.GetString(UIContext["newitem"], String.Empty);

        if (!ValidateInput())
        {
            return;
        }

        itemLocation     = URLHelper.AppendQuery(UIContextHelper.GetElementUrl(ResourceName, editElem), "?tabslayout=horizontal&displaytitle=false");
        categoryLocation = URLHelper.AppendQuery(UIContextHelper.GetElementUrl(ResourceName, categoryElem), "?tabslayout=horizontal&displaytitle=false");

        RegisterExportScript();
        RegisterTreeScript();
        InitTree();

        // Setup menu action scripts
        String newItemText = newItem.StartsWithCSafe("javascript", true) ? newItem : "NewItem('item'); return false;";

        AddButon.Actions.Add(new CMSButtonAction
        {
            Text          = GetString(objectType + ".newitem"),
            OnClientClick = newItemText
        });
        AddButon.Actions.Add(new CMSButtonAction
        {
            Text          = GetString("development.tree.newcategory"),
            OnClientClick = "NewItem('category'); return false;"
        });

        DeleteItemButton.OnClientClick = "DeleteItem(); return false;";
        ExportItemButton.OnClientClick = "ExportObject(); return false;";
        CloneItemButton.OnClientClick  = "if ((selectedItemId > 0) && (selectedItemType == 'item')) { modalDialog('" + URLHelper.ResolveUrl("~/CMSModules/Objects/Dialogs/CloneObjectDialog.aspx?reloadall=1&displaytitle=" + UIContext["displaytitle"] + "&objecttype=" + objectType + "&objectid=") + "' + selectedItemId, 'Clone item', 750, 470); } return false;";

        // Tooltips
        DeleteItemButton.ToolTip = GetString("development.tree.deleteselected");
        ExportItemButton.ToolTip = GetString("exportobject.title");
        CloneItemButton.ToolTip  = GetString(objectType + ".clone");

        // URLs for menu actions
        String script = "var doNotReloadContent = false;\n";

        // Script for deleting widget or category
        string delPostback  = ControlsHelper.GetPostBackEventReference(this, "##");
        string deleteScript = "function DeleteItem() { \n" +
                              " if ((selectedItemId > 0) && (selectedItemParent > 0) && " +
                              " confirm(" + ScriptHelper.GetLocalizedString("general.deleteconfirmation") + ")) {\n " +
                              delPostback.Replace("'##'", "selectedItemType+';'+selectedItemId+';'+selectedItemParent") + ";\n" +
                              "}\n" +
                              "}\n";

        script += deleteScript;

        // Preselect tree item
        if (!RequestHelper.IsPostBack())
        {
            int parentobjectid = QueryHelper.GetInteger("parentobjectid", 0);
            int objectID       = QueryHelper.GetInteger("objectID", 0);

            // Select category
            if (parentobjectid > 0)
            {
                BaseInfo biParent = BaseAbstractInfoProvider.GetInfoById(categoryObjectType, parentobjectid);
                if (biParent != null)
                {
                    String path     = ValidationHelper.GetString(biParent.GetValue(categoryPathColumn), String.Empty);
                    int    parentID = ValidationHelper.GetInteger(biParent.GetValue(categoryParentColumn), 0);
                    script += SelectAfterLoad(path, parentobjectid, "category", parentID, true, true);
                }
            }
            // Select item
            else if (objectID > 0)
            {
                BaseInfo bi = BaseAbstractInfoProvider.GetInfoById(objectType, objectID);
                if (bi != null)
                {
                    script += SelectItem(bi);
                }
            }
            else
            {
                // Selection by hierarchy URL
                BaseInfo biSel    = UIContext.EditedObject as BaseInfo;
                BaseInfo biParent = UIContext.EditedObjectParent as BaseInfo;

                // Check for category selection
                if ((biParent != null) && (biParent.TypeInfo.ObjectType == categoryObjectType))
                {
                    String path     = ValidationHelper.GetString(biParent.GetValue(categoryPathColumn), String.Empty);
                    int    parentID = ValidationHelper.GetInteger(biParent.GetValue(categoryParentColumn), 0);
                    script += SelectAfterLoad(path, biParent.Generalized.ObjectID, "category", parentID, false, true);
                }
                // Check for item selection
                else if ((biSel != null) && (biSel.TypeInfo.ObjectType == objectType))
                {
                    script += SelectItem(biSel);
                }
                else
                {
                    // Select root by default
                    BaseInfo bi = BaseAbstractInfoProvider.GetInfoByName(categoryObjectType, "/");

                    if (bi != null)
                    {
                        script += SelectAfterLoad("/", bi.Generalized.ObjectID, "category", 0, true, true);
                    }
                }
            }
        }


        ltlScript.Text += ScriptHelper.GetScript(script);
    }