Example #1
0
        private void NsTreeView_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            var treeView = Widget as TreeView;
            if (treeView != null)
            {
                var ds = treeView.DataSource;
                if (ds != null)
                {
                    var id = e.DestDragNode.Value;
                    //var obiektDest = ds.GetObjectById(id);

                    foreach (var item in e.DraggedNodes)
                    {
                        var idDragged = item.Value;
                        var folder = ds.GetObjectById(idDragged);
                        folder.SetPropValue(treeView.DataFieldParentId, Guid.Parse(id));
                        ds.Update(folder);
                        //item.ParentNode = e.;
                    }

                    RadTreeNode sourceNode = e.SourceDragNode;
                    RadTreeNode destinationNode = e.DestDragNode;

                    if (destinationNode != null)
                    {
                        MoveNode(e.DropPosition, sourceNode, destinationNode);
                    }
                }
            }
        }
Example #2
0
        /// <summary>
        /// Handles the OnNodeDrop event of the rtvTreeModules control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="Telerik.Web.UI.RadTreeNodeDragDropEventArgs"/> instance containing the event data.</param>
        protected void rtvTreeModules_OnNodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            // Only tabs
            if (e.DestDragNode.Level == 1)
            {
                e.DestDragNode.Nodes.Add(e.DraggedNodes[0]);
                e.DraggedNodes[0].Selected = true;

                var order = 0;
                var menus = dataManager.Menu.SelectByAccessProfileID(AccessProfileID).Where(a => a.ParentID == Guid.Parse(e.DestDragNode.Attributes["NodeID"])).ToList();
                if (menus.Count > 0)
                {
                    order = menus.OrderByDescending(a => a.Order).First().Order + 1;
                }

                var menuId = Guid.NewGuid();

                var menuAdd = new tbl_Menu();
                menuAdd.ID              = menuId;
                menuAdd.ParentID        = Guid.Parse(e.DestDragNode.Attributes["NodeID"]);
                menuAdd.AccessProfileID = AccessProfileID;
                menuAdd.ModuleID        = Guid.Parse(e.DraggedNodes[0].Value);
                menuAdd.Order           = order;
                dataManager.Menu.Add(menuAdd);


                BindTreeModules();
                BindTreeMenu();
            }
        }
Example #3
0
        /// <summary>
        /// Handles the OnNodeDrop event of the rtvTreeMenu control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="Telerik.Web.UI.RadTreeNodeDragDropEventArgs"/> instance containing the event data.</param>
        protected void rtvTreeMenu_OnNodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            if (e.DestDragNode.TreeView.ID == "rtvTreeMenu")
            {
                RadTreeNode             sourceNode   = e.SourceDragNode;
                RadTreeNode             destNode     = e.DestDragNode;
                RadTreeViewDropPosition dropPosition = e.DropPosition;
                if (destNode != null)
                {
                    if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                    {
                        PerformDragAndDrop(dropPosition, sourceNode, destNode);
                    }
                    else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                    {
                        foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                        {
                            PerformDragAndDrop(dropPosition, node, destNode);
                        }
                    }
                    destNode.Expanded = true;
                    sourceNode.TreeView.UncheckAllNodes();
                }

                SaveMenu();
            }
        }
        protected void radSiteMap_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            RadTreeNode             sourceNode   = e.SourceDragNode;
            RadTreeNode             destNode     = e.DestDragNode;
            RadTreeViewDropPosition dropPosition = e.DropPosition;

            if (destNode != null) //drag&drop is performed between trees
            {
                if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                {
                    PerformDragAndDrop(dropPosition, sourceNode, destNode);
                }
                else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                {
                    if (dropPosition == RadTreeViewDropPosition.Below) //Needed to preserve the order of the dragged items
                    {
                        for (int i = sourceNode.TreeView.SelectedNodes.Count - 1; i >= 0; i--)
                        {
                            PerformDragAndDrop(dropPosition, sourceNode.TreeView.SelectedNodes[i], destNode);
                        }
                    }
                    else
                    {
                        foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                        {
                            PerformDragAndDrop(dropPosition, node, destNode);
                        }
                    }
                }

                destNode.Expanded = true;
                sourceNode.TreeView.UnselectAllNodes();
            }
        }
Example #5
0
        protected void NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            RadTreeNode sourceNode = e.SourceDragNode;
            RadTreeNode destNode = e.DestDragNode;
            RadTreeViewDropPosition dropPosition = e.DropPosition;
            if (!ShareHolders.ValidateAPriori(sourceNode.Text, destNode.Text))
            {
                return;
            }

            if (destNode != null) //drag&drop is performed between trees
            {
                bool betweenNodes = true;
                if (betweenNodes) //dropped node will at the same level as a destination node
                {
                    if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                    {
                        PerformDragAndDrop(dropPosition, sourceNode, destNode);
                    }
                    else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                    {
                        foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                        {
                            PerformDragAndDrop(dropPosition, node, destNode);
                        }
                    }
                }
                else //dropped node will be a sibling of the destination node
                {
                    throw new NotImplementedException();
                }
                destNode.Expanded = true;
                sourceNode.TreeView.UnselectAllNodes();
            }
        }
Example #6
0
        protected void rtvRolesDisponibles_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            //if (e.DestDragNode.ParentNode.Value == e.SourceDragNode.ParentNode.Value)
            //{
            //    foreach (RadTreeNode nodo in e.DestDragNode.ParentNode.Nodes)
            //    {
            //        GestionarRolDeUsuario(nodo, false);
            //    }
            //}
            //else //busca
            if (e.DestDragNode != null)
            {
                RadTreeNodeCollection nodos = e.DestDragNode.ParentNode.TreeView.Nodes;
                for (int i = 0; i < nodos.Count; i++)
                {
                    if (nodos[i].Value == e.SourceDragNode.ParentNode.Value)
                    {
                        foreach (RadTreeNode nodo in nodos[i].Nodes)
                        {
                            GestionarRolDeUsuario(nodo, false);
                        }
                    }
                }
            }

            GestionarRolDeUsuario(e.DraggedNodes[0], true);
        }
        protected void rTreeViewSkills_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            RadTreeNode sourceNode = e.SourceDragNode;
            RadTreeNode destNode = e.DestDragNode;
            RadTreeViewDropPosition dropPosition = e.DropPosition;

            if (destNode != null) //drag&drop is performed between trees
            {
                if (ChbClientSide.Checked) //dropped node will at the same level as a destination node
                {
                    if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                    {
                        PerformDragAndDrop(dropPosition, sourceNode, destNode);
                    }
                    else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                    {
                        if (dropPosition == RadTreeViewDropPosition.Below) //Needed to preserve the order of the dragged items
                        {
                            for (int i = sourceNode.TreeView.SelectedNodes.Count - 1; i >= 0; i--)
                            {
                                PerformDragAndDrop(dropPosition, sourceNode.TreeView.SelectedNodes[i], destNode);
                            }
                        }
                        else
                        {
                            foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                            {
                                PerformDragAndDrop(dropPosition, node, destNode);
                            }
                        }
                    }
                }
                else //dropped node will be a sibling of the destination node
                {
                    if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                    {
                        if (!sourceNode.IsAncestorOf(destNode))
                        {
                            sourceNode.Owner.Nodes.Remove(sourceNode);
                            destNode.Nodes.Add(sourceNode);
                        }
                    }
                    else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                    {
                        foreach (RadTreeNode node in rTreeViewSkills.SelectedNodes)
                        {
                            if (!node.IsAncestorOf(destNode))
                            {
                                node.Owner.Nodes.Remove(node);
                                destNode.Nodes.Add(node);
                            }
                        }
                    }
                }

                destNode.Expanded = true;
                sourceNode.TreeView.UnselectAllNodes();

            }
        }
Example #8
0
        protected void RadTreeView1_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            e.SourceDragNode.Remove();

            if (e.HtmlElementID == RadListBox1.ClientID)
            {
                RadListBoxItem item = new RadListBoxItem();
                item.Text = e.SourceDragNode.Text;

                if (RadListBox1.SelectedIndex > -1)
                {
                    RadListBox1.Items.Insert(RadListBox1.SelectedIndex + 1, item);
                }
                else
                {
                    RadListBox1.Items.Add(item);
                }
            }
            else
            {
                if (e.DestDragNode.Level == 0)
                {
                    e.DestDragNode.Nodes.Add(e.SourceDragNode);
                }
                else
                {
                    e.DestDragNode.InsertAfter(e.SourceDragNode);
                }
            }
        }
Example #9
0
        /// <summary>
        /// Proceeds the drop.
        /// </summary>
        /// <param name="radDockZone">The RAD dock zone.</param>
        /// <param name="e">The <see cref="Telerik.Web.UI.RadTreeNodeDragDropEventArgs"/> instance containing the event data.</param>
        private void ProceedDrop(RadDockZone radDockZone, RadTreeNodeDragDropEventArgs e)
        {
            if ((WidgetTypeInTreeView)int.Parse(e.SourceDragNode.Attributes["Type"]) != WidgetTypeInTreeView.Category)
            {
                var widgetToAccessProfile = new tbl_WidgetToAccessProfile
                {
                    AccessProfileID = AccessProfileId,
                    WidgetID        = Guid.Parse(e.SourceDragNode.Value),
                    Order           = radDockLayout.RegisteredDocks.Count,
                    ModuleID        = CurrentModuleId == Guid.Empty ? null : (Guid?)CurrentModuleId
                };

                dataManager.WidgetToAccessProfile.Add(widgetToAccessProfile);

                radDockZone.Controls.Add(AddRadDock(e.SourceDragNode.Text, widgetToAccessProfile.ID.ToString()));
            }
            else
            {
                foreach (RadTreeNode node in e.SourceDragNode.Nodes)
                {
                    var widgetToAccessProfile = new tbl_WidgetToAccessProfile
                    {
                        AccessProfileID = AccessProfileId,
                        WidgetID        = Guid.Parse(node.Value),
                        Order           = radDockLayout.RegisteredDocks.Count,
                        ModuleID        = CurrentModuleId == Guid.Empty ? null : (Guid?)CurrentModuleId
                    };

                    dataManager.WidgetToAccessProfile.Add(widgetToAccessProfile);

                    radDockZone.Controls.Add(AddRadDock(node.Text, widgetToAccessProfile.ID.ToString()));
                }
            }
        }
Example #10
0
 protected void tvMenu_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     foreach (RadTreeNode node in e.DraggedNodes)
     {
         e.DestDragNode.Nodes.Add(node);
     }
     HF_Modificar.Value = "1";
 }
Example #11
0
    protected void RadTreeView1_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
    {
        RadTreeNode             sourceNode   = e.SourceDragNode;
        RadTreeNode             destNode     = e.DestDragNode;
        RadTreeViewDropPosition dropPosition = e.DropPosition;

        if (destNode != null) //drag&drop is performed between trees
        {
            PerformDragAndDrop(dropPosition, sourceNode, destNode);
        }
    }
Example #12
0
        protected void treeCategories_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            FAQsController          FAQsController = new FAQsController();
            RadTreeNode             sourceNode     = e.SourceDragNode;
            RadTreeNode             destNode       = e.DestDragNode;
            RadTreeViewDropPosition dropPosition   = e.DropPosition;

            if (destNode == null || sourceNode == destNode || sourceNode.IsAncestorOf(destNode))
            {
                return;
            }

            int          sourceFaqCategoryId = Convert.ToInt32(sourceNode.Value);
            CategoryInfo sourceCategory      = FAQsController.GetCategory(sourceFaqCategoryId);

            int          destFaqCategoryId = Convert.ToInt32(destNode.Value);
            CategoryInfo destCategory      = FAQsController.GetCategory(destFaqCategoryId);

            switch (dropPosition)
            {
            case RadTreeViewDropPosition.Over:                     // child
                // Change Treeview
                sourceNode.Owner.Nodes.Remove(sourceNode);
                destNode.Nodes.Add(sourceNode);

                // Change the ParentId of Source in database
                sourceCategory.FaqCategoryParentId = destCategory.FaqCategoryId;
                sourceCategory.ViewOrder           = 999;
                FAQsController.UpdateCategory(sourceCategory);
                break;

            case RadTreeViewDropPosition.Above:                     // sibling - above
                sourceNode.Owner.Nodes.Remove(sourceNode);
                destNode.InsertBefore(sourceNode);
                sourceCategory.FaqCategoryParentId = destCategory.FaqCategoryParentId;
                sourceCategory.ViewOrder           = destCategory.ViewOrder - 1;
                FAQsController.UpdateCategory(sourceCategory);

                break;

            case RadTreeViewDropPosition.Below:                     // sibling - below
                sourceNode.Owner.Nodes.Remove(sourceNode);
                destNode.InsertAfter(sourceNode);
                sourceCategory.FaqCategoryParentId = destCategory.FaqCategoryParentId;
                sourceCategory.ViewOrder           = destCategory.ViewOrder + 1;
                FAQsController.UpdateCategory(sourceCategory);
                break;
            }
            FAQsController.ReorderCategory(sourceCategory.FaqCategoryParentId, ModuleId);
            panelAddEdit.Visible = false;
        }
Example #13
0
        protected void HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            var sourceNode      = e.SourceDragNode;
            var destinationNode = e.DestDragNode;
            //RadTreeViewDropPosition dropPosition = e.DropPosition;
            var dragNodes = e.DraggedNodes.ToList();

            // move treeview
            if (destinationNode != null)
            {
                var cDests = new CApproval();
                var dests  = cDests.Get(Convert.ToInt32(destinationNode.Value), Convert.ToInt32(hfApproveType.Value));

                if (dragNodes.Any())
                {
                    foreach (var n in dragNodes)
                    {
                        var cDrags = new CApproval();
                        var drags  = cDests.Get(Convert.ToInt32(n.Value), Convert.ToInt32(hfApproveType.Value));

                        var emp = drags.UserId;

                        switch (e.DropPosition)
                        {
                        case RadTreeViewDropPosition.Over:
                            drags.Supervisor = dests.UserId;
                            break;
                        }
                        cDrags.UpdateStaff(Convert.ToInt32(hfApproveType.Value), emp, drags.Supervisor);
                        SetTreeviewChart(hfApproveType.Value);
                        //}
                    }
                }
            }
            // move to grid
            else if (e.HtmlElementID == RadGridSupervisor.ClientID)
            {
                foreach (var n in dragNodes)
                {
                    var cDrags = new CApproval();
                    var drags  = cDrags.Get(Convert.ToInt32(n.Value), Convert.ToInt32(hfApproveType.Value));
                    var emp    = drags.UserId;

                    drags.Supervisor = null;

                    cDrags.UpdateStaff(Convert.ToInt32(hfApproveType.Value), emp, drags.Supervisor);
                    SetTreeviewChart(hfApproveType.Value);
                }
            }
        }
Example #14
0
    protected void RadTreeView1_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
    {
        RadTreeNode sourceNode = e.SourceDragNode;
        int         currentPos = int.Parse(currentPlaceholderPosition.Value);


        int docksCount = CurrentDockStates.Count;

        RadDock dock = new RadDock();

        dock.UniqueName = Guid.NewGuid().ToString();
        dock.ID         = string.Format("RadDock{0}", dock.UniqueName);
        dock.Title      = "Dock" + docksCount.ToString();
        //dock.Text = sourceNode.Text;
        dock.Width = Unit.Pixel(300);

        dock.Commands.Add(new DockCloseCommand());
        dock.Commands.Add(new DockExpandCollapseCommand());
        dock.Command += new DockCommandEventHandler(dock_Command);

        // Add Controls
        Label myLabel = new Label();

        myLabel.Text = "<h1>This is a Lable Control</h1>";

        TextBox myTextBox = new TextBox();

        myTextBox.Text = "This is a Text Box";

        dock.ContentContainer.Controls.Add(myLabel);
        dock.ContentContainer.Controls.Add(myTextBox);

        UpdatePanel1.ContentTemplateContainer.Controls.Add(dock);


        ScriptManager.RegisterStartupScript(
            dock,
            this.GetType(),
            "AddDock",
            string.Format(@"function _addDock() {{  
    Sys.Application.remove_load(_addDock);  
    $find('{1}').dock($find('{0}'),{2});   
    $find('{0}').doPostBack('DockPositionChanged');  
 
}};  
Sys.Application.add_load(_addDock);", dock.ClientID, currentZoneTB.Value, currentPos),
            true);

        CreateSaveStateTrigger(dock);
    }
Example #15
0
        protected void rtvGCA_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            string ErrorMessage = String.Empty;

            if (e.SourceDragNode == null || e.DestDragNode == null)
            {
                return;
            }
            bool IsMerge = e.SourceDragNode.Level == e.DestDragNode.Level;

            if (e.SourceDragNode.Level - 1 != e.DestDragNode.Level && !IsMerge)
            {
                return;
            }
            if (e.SourceDragNode.Level < 1)
            {
                return;
            }

            Guid SourceID = new Guid(e.SourceDragNode.Value);
            Guid DestID   = new Guid(e.DestDragNode.Value);

            if (IsMerge)
            {
                Bll.GroupCategoryAspect.Merge(SourceID, DestID);
            }
            else
            {
                bool isCopy = Request.Params["CtrlKeyField"] == "True";
                if (isCopy)
                {
                    Bll.GroupCategoryAspect.Copy(SourceID, DestID);
                }
                else
                {
                    Bll.GroupCategoryAspect.Move(SourceID, DestID);
                }
            }
            if (!String.IsNullOrEmpty(ErrorMessage))
            {
                rapTreeView.ResponseScripts.Add("alert('" + ErrorMessage.Replace("'", "\\'") + "');");
            }
            GenerateTreeView();
        }
Example #16
0
 /// <summary>
 /// Handles the OnNodeDrop event of the rtwWidgets control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="Telerik.Web.UI.RadTreeNodeDragDropEventArgs"/> instance containing the event data.</param>
 protected void rtwWidgets_OnNodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     if (e.HtmlElementID == radDockZone1.ClientID)
     {
         ProceedDrop(radDockZone1, e);
     }
     if (e.HtmlElementID == radDockZone2.ClientID)
     {
         ProceedDrop(radDockZone2, e);
     }
     if (e.HtmlElementID == radDockZone3.ClientID)
     {
         ProceedDrop(radDockZone3, e);
     }
     if (e.HtmlElementID == radDockZone4.ClientID)
     {
         ProceedDrop(radDockZone4, e);
     }
 }
Example #17
0
        protected void rtv1_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            RadTreeNode             sourceNode   = e.SourceDragNode;
            RadTreeNode             destNode     = e.DestDragNode;
            RadTreeViewDropPosition dropPosition = e.DropPosition;

            if (sourceNode.TreeView.SelectedNodes.Count <= 1)
            {
                PerformDragAndDrop(dropPosition, sourceNode, destNode);
            }
            else if (sourceNode.TreeView.SelectedNodes.Count > 1)
            {
                foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                {
                    PerformDragAndDrop(dropPosition, node, destNode);
                }
            }
            ShowNodeEdit(e.SourceDragNode.Value, true);
            hidCurrentNodeValue.Value = e.SourceDragNode.Value;
        }
Example #18
0
    protected void treeRol_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
    {
        var valor = treeRol.SelectedValue;
        int rol   = int.Parse(rolID.Value);

        try
        {
            if (treeRol.SelectedNode.Level == 0)
            {
                int menu1 = int.Parse(valor);
                _rolManager.DeleteRol(rol, menu1, string.Empty);
            }
            else
            {
                int menu2 = int.Parse(treeRol.SelectedNode.ParentNode.Value);
                _rolManager.DeleteRol(rol, menu2, valor);
            }
            SetPerfil(rol);
        }
        catch (Exception) { }
    }
Example #19
0
 protected void RadTreeView1_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     e.SourceDragNode.Remove();
     if (e.DestDragNode.Level == 0)
     {
         e.DestDragNode.Nodes.Add(e.SourceDragNode);
     }
     else
     {
         e.DestDragNode.InsertAfter(e.SourceDragNode);
     }
     btn_Submit.Visible = true;
 }
Example #20
0
 protected void RadTreeView1_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     NodeDrop(sender, e);
 }
Example #21
0
    protected void RadTreeView1_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
    {
        RadTreeNode sourceNode = e.SourceDragNode;
        RadTreeNode destNode = e.DestDragNode;
        RadTreeViewDropPosition dropPosition = e.DropPosition;

        string result = "";

        if (destNode != null)//drag&drop is performed between trees
        {

            if (sourceNode.TreeView.SelectedNodes.Count <= 1)
            {
                result += "<b>" + sourceNode.Text + "</b>" + ";";
                PerformDragAndDrop(dropPosition, sourceNode, destNode);
            }
            else if (sourceNode.TreeView.SelectedNodes.Count > 1)
            {
                foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                {
                    result += "<b>" + node.Text + "</b>" + ";";
                    PerformDragAndDrop(dropPosition, node, destNode);
                }

            }
            else//dropped node will be a sibling of the destination node
            {
                if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                {

                    if (!sourceNode.IsAncestorOf(destNode))
                    {
                        result += "<b>" + sourceNode.Text + "</b>" + ";";
                        sourceNode.Owner.Nodes.Remove(sourceNode);
                        destNode.Nodes.Add(sourceNode);
                    }
                }
                else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                {
                    foreach (RadTreeNode node in RadTreeView1.SelectedNodes)
                    {
                        if (!node.IsAncestorOf(destNode))
                        {
                            result += "<b>" + node.Text + "</b>" + ";";
                            node.Owner.Nodes.Remove(node);
                            destNode.Nodes.Add(node);
                        }
                    }
                }
            }

            if (e.SourceDragNode.Category == "Files")
            {
                if (!System.IO.File.Exists(e.SourceDragNode.Value))
                {
                    System.IO.File.Move(e.SourceDragNode.Value, e.DestDragNode.Value + "\\" + e.SourceDragNode.Text);

                }
                else
                {
                    string fname = e.SourceDragNode.Text.Substring(0, e.SourceDragNode.Text.LastIndexOf("."));
                    string ext = e.SourceDragNode.Text.Substring(fname.Length);
                    int counter = 1;
                    string targetFileName = Path.Combine(e.DestDragNode.Value, fname + counter.ToString() + ext);

                    while (System.IO.File.Exists(targetFileName))
                    {
                        counter++;
                        targetFileName = Path.Combine(e.DestDragNode.Value, fname + counter.ToString() + ext);

                    }

                    System.IO.File.Move(e.SourceDragNode.Value, targetFileName);
                }
            }
            else
            {
                if (!System.IO.Directory.Exists(e.DestDragNode.Value + "\\" + e.SourceDragNode.Text))
                {
                    if (System.IO.Directory.Exists(e.SourceDragNode.Value))
                    {
                        System.IO.Directory.Move(e.SourceDragNode.Value, e.DestDragNode.Value + "\\" + e.SourceDragNode.Text);
                    }
                }
            }

            destNode.Expanded = true;
            System.IO.FileSystemWatcher mywatcher = new FileSystemWatcher(e.DestDragNode.Value);
            mywatcher.WaitForChanged(WatcherChangeTypes.All, 2000);
            sourceNode.TreeView.ClearSelectedNodes();
            createtree(e.DestDragNode.Value);
            // UpdatePanel1.Update();

        }
    }
Example #22
0
 protected void rtvRolesAsignados_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     GestionarRolDeUsuario(e.DraggedNodes[0], false);
 }
Example #23
0
        protected void Tree_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            if (e == null)
            {
                return;
            }

            if (e.SourceDragNode == null || e.DestDragNode == null)
            {
                return;
            }
            bool IsMerge = e.SourceDragNode.Level == e.DestDragNode.Level;

            if (e.SourceDragNode.Level - 1 != e.DestDragNode.Level && !IsMerge)
            {
                return;
            }
            if (e.SourceDragNode.Level < 1)
            {
                return;
            }

            object obj      = Support.ConvertStringToType(e.SourceDragNode.Value, typeof(Guid));
            Guid   sourceId = ((obj == null) ? Guid.Empty : (Guid)obj);

            obj = Support.ConvertStringToType(e.DestDragNode.Value, typeof(Guid));
            Guid        destId     = ((obj == null) ? Guid.Empty : (Guid)obj);
            RadTreeNode destNode   = Tree.FindNodeByValue(e.DestDragNode.Value);
            RadTreeNode sourceNode = Tree.FindNodeByValue(e.SourceDragNode.Value);

            if (IsMerge)
            {
                foreach (RadTreeNode rtn in sourceNode.Nodes)
                {
                    EntityNodeProvider.ChangeParentEntityNode(new Guid(rtn.Value), destId);
                }
                EntityNodeProvider.MergeEntityNode(sourceId, destId);
                RefreshTree();
                destNode = Tree.FindNodeByValue(destId.ToString());
                UpdateAllNodesPath(destNode);
            }
            else
            {
                bool isCopy = false;
                if (!String.IsNullOrEmpty(Request.Params["CtrlKeyField"]))
                {
                    isCopy = Convert.ToBoolean(Request.Params["CtrlKeyField"], CultureInfo.InvariantCulture);
                }

                if (isCopy)
                {
                    EntityNodeProvider.CopyEntityNode(UserContext.Current.OrganizationId, this.SelectedInstanceId, sourceId, destId, this.Entity.HierarchyStartLevel);
                    RadTreeNode rtn = new RadTreeNode();
                    rtn.Text          = sourceNode.Text;
                    rtn.Value         = sourceNode.Value;
                    rtn.Category      = sourceNode.Category;
                    rtn.ContextMenuID = sourceNode.ContextMenuID;
                    destNode.Nodes.Add(rtn);
                    Bll.Providers.EntityNodeProvider.UpdateEntityNodePath(new Guid(rtn.Value), rtn.GetFullPath(" > "));
                }
                else
                {
                    EntityNodeProvider.ChangeParentEntityNode(sourceId, destId);
                    destNode.Nodes.Add(sourceNode);
                    Bll.Providers.EntityNodeProvider.UpdateEntityNodePath(new Guid(sourceNode.Value), sourceNode.GetFullPath(" > "));
                }
            }
        }
Example #24
0
 protected void tree_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     if (CurrentRights.Contains(HomoryCoreConstant.RightMoveDepartment))
     {
         if (e.SourceDragNode == null || e.DestDragNode == null || e.SourceDragNode.ParentNode.Value == e.DestDragNode.Value) return;
         if (e.SourceDragNode.Level != 2 || e.DestDragNode.Level != 1) return;
         var id = Guid.Parse(e.SourceDragNode.Value);
         var parentId = Guid.Parse(e.DestDragNode.Value);
         var level = e.DestDragNode.Level + 1;
         HomoryContext.Value.Department.Where(o => o.Id == id).Update(o => new Homory.Model.Department
         {
             ParentId = parentId,
             Level = level
         });
         HomoryContext.Value.SaveChanges();
         LogOp(OperationType.编辑);
         RebindMove(e.SourceDragNode.ParentNode.Value, e.SourceDragNode.Value, e.DestDragNode.Value);
     }
     else
     {
         Notify(panel, "无权限调动班级", "warn");
     }
 }
        /// <summary>
        /// Handles the OnNodeDrop event of the rtvDestination control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="Telerik.Web.UI.RadTreeNodeDragDropEventArgs"/> instance containing the event data.</param>
        protected void rtvDestination_OnNodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            if ((!string.IsNullOrEmpty(e.HtmlElementID) && e.HtmlElementID == rtvDestination.ClientID) || e.DestDragNode != null)
            {
                foreach (RadTreeNode node in e.DraggedNodes)
                {
                    var toInsertNode = node.Clone();

                    if (IsExist(toInsertNode.Value))
                    {
                        continue;
                    }

                    if (toInsertNode.Attributes["GroupId"] != null)
                    {
                        toInsertNode.Text = string.Format("Справочник '{0}' из шаблона '{1}'", toInsertNode.Text, ucSiteTemplateComboBox.SelectedText);
                        toInsertNode.Attributes.Add("SiteId", ucSiteTemplateComboBox.SelectedValue.ToString());
                    }
                    else
                    {
                        foreach (RadTreeNode n in toInsertNode.Nodes)
                        {
                            n.Text = string.Format("Справочник '{0}' из шаблона '{1}'", n.Text, ucSiteTemplateComboBox.SelectedText);
                            n.Attributes.Add("SiteId", ucSiteTemplateComboBox.SelectedValue.ToString());
                        }
                    }

                    if (e.DestDragNode == null)
                    {
                        if (toInsertNode.Attributes["GroupId"] == null)
                        {
                            rtvDestination.Nodes.Add(toInsertNode);
                        }
                        else
                        {
                            if (rtvDestination.Nodes.FindNodeByValue(toInsertNode.Attributes["GroupId"]) == null)
                            {
                                var parentNode = node.ParentNode.Clone();
                                parentNode.Nodes.Clear();
                                parentNode.Nodes.Add(toInsertNode);
                                rtvDestination.Nodes.Add(parentNode);
                            }
                            else
                            {
                                rtvDestination.Nodes.FindNodeByValue(node.Attributes["GroupId"]).Nodes.Add(toInsertNode);
                            }
                        }
                    }
                    else if (toInsertNode.Attributes["IsGroup"] == null)
                    {
                        if (e.DestDragNode.Level > 0)
                        {
                            if (e.DestDragNode.ParentNode.Value == toInsertNode.Attributes["GroupId"])
                            {
                                e.DestDragNode.ParentNode.Nodes.Add(toInsertNode);
                            }
                        }
                        else if (e.DestDragNode.Value == toInsertNode.Attributes["GroupId"])
                        {
                            e.DestDragNode.Nodes.Add(toInsertNode);
                        }
                    }
                }
            }
        }
Example #26
0
    protected void Node_DraggedDropped <T>(object sender, RadTreeNodeDragDropEventArgs e)
    {
        string destNode = e.DestDragNode.Text;

        RadTreeView1.Nodes.FindNodeByText(destNode).ExpandParentNodes();
    }
		protected void treeCategories_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
		{
			FAQsController FAQsController = new FAQsController();
			RadTreeNode sourceNode = e.SourceDragNode;
			RadTreeNode destNode = e.DestDragNode;
			RadTreeViewDropPosition dropPosition = e.DropPosition;

			if (destNode == null || sourceNode == destNode || sourceNode.IsAncestorOf(destNode))
				return;
			
			int sourceFaqCategoryId = Convert.ToInt32(sourceNode.Value);
			CategoryInfo sourceCategory = FAQsController.GetCategory(sourceFaqCategoryId);

			int destFaqCategoryId = Convert.ToInt32(destNode.Value);
			CategoryInfo destCategory = FAQsController.GetCategory(destFaqCategoryId);

			switch (dropPosition)
			{
				case RadTreeViewDropPosition.Over: // child
					// Change Treeview
					sourceNode.Owner.Nodes.Remove(sourceNode);
					destNode.Nodes.Add(sourceNode);
						
					// Change the ParentId of Source in database
					sourceCategory.FaqCategoryParentId = destCategory.FaqCategoryId;
					sourceCategory.ViewOrder = 999;
					FAQsController.UpdateCategory(sourceCategory);
					break;
				
				case RadTreeViewDropPosition.Above: // sibling - above
					sourceNode.Owner.Nodes.Remove(sourceNode);
					destNode.InsertBefore(sourceNode);
					sourceCategory.FaqCategoryParentId = destCategory.FaqCategoryParentId;
					sourceCategory.ViewOrder = destCategory.ViewOrder - 1;
					FAQsController.UpdateCategory(sourceCategory);
					
					break;
				
				case RadTreeViewDropPosition.Below: // sibling - below
					sourceNode.Owner.Nodes.Remove(sourceNode);
					destNode.InsertAfter(sourceNode);
					sourceCategory.FaqCategoryParentId = destCategory.FaqCategoryParentId;
					sourceCategory.ViewOrder = destCategory.ViewOrder + 1;
					FAQsController.UpdateCategory(sourceCategory);
					break;
			}
			FAQsController.ReorderCategory(sourceCategory.FaqCategoryParentId, ModuleId);
			panelAddEdit.Visible = false;
		}
        protected void CtlPagesNodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            if (PortalSecurity.IsInRole(PortalSettings.AdministratorRoleName))
            {
                var sourceNode = e.SourceDragNode;
                var destNode = e.DestDragNode;
                var dropPosition = e.DropPosition;
                if (destNode != null)
                {
                    if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                    {
                        PerformDragAndDrop(dropPosition, sourceNode, destNode);
                    }
                    else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                    {
                        foreach (var node in sourceNode.TreeView.SelectedNodes)
                        {
                            PerformDragAndDrop(dropPosition, node, destNode);
                        }
                    }

                    destNode.Expanded = true;

                    foreach (var node in ctlPages.GetAllNodes())
                    {
                        node.Selected = node.Value == e.SourceDragNode.Value;
                    }
                }
            }
        }
 protected void rtvCtChung_OnNodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
 {
     PerformUpdateIndex(e.DropPosition, e.SourceDragNode, e.DestDragNode);
     PerformDragAndDrop(e.DropPosition, e.SourceDragNode, e.DestDragNode);
 }
Example #30
0
        protected void rtvMetricCategory_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            string ErrorMessage = String.Empty;

            if (e.SourceDragNode == null || e.DestDragNode == null)
            {
                return;
            }
            int    SourceLevel = e.SourceDragNode.Level;
            string SourceValue = e.SourceDragNode.Value;
            int    DestLevel   = e.DestDragNode.Level;
            string DestValue   = e.DestDragNode.Value;

            if (SourceLevel > 0 &&
                SourceValue != EmptyNodeID &&
                DestLevel > 0 &&
                DestLevel <= 3 &&
                DestValue != SourceValue)
            {
                if (SourceValue.Contains(MetricSuffix))
                {
                    if (!DestValue.Contains(MetricSuffix) || DestValue == EmptyNodeID)
                    {
                        string[] ComplexID = SourceValue.Split('|');
                        Guid     MetricID  = new Guid(ComplexID[0]);
                        Guid?    DestID    = null;
                        if (DestValue != EmptyNodeID)
                        {
                            DestID = new Guid(e.DestDragNode.Value);
                        }
                        Bll.Metric.ChangeMetricCategory(MetricID, DestID);
                    }
                }
                else
                {
                    if (SourceLevel <= 3 && !DestValue.Contains(MetricSuffix) && DestValue != EmptyNodeID && (DestLevel == SourceLevel - 1 || DestLevel == SourceLevel))
                    {
                        bool IsMerge  = SourceLevel == DestLevel;
                        Guid SourceID = new Guid(SourceValue);
                        Guid DestID   = new Guid(DestValue);
                        if (IsMerge)
                        {
                            Bll.MetricCategory.Merge(SourceID, DestID);
                        }
                        else
                        {
                            bool isCopy = Request.Params["CtrlKeyField"] == "True";
                            if (isCopy)
                            {
                                Bll.MetricCategory.Copy(SourceID, DestID);
                            }
                            else
                            {
                                Bll.MetricCategory.Move(SourceID, DestID);
                            }
                        }
                    }
                }
            }
            if (!String.IsNullOrEmpty(ErrorMessage))
            {
                rapTreeView.ResponseScripts.Add("alert('" + ErrorMessage.Replace("'", "\\'") + "');");
            }
            GenerateTreeView();
        }
Example #31
0
    protected void RadTreeView1_HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
    {
        RadTreeNode             sourceNode   = e.SourceDragNode;
        RadTreeNode             destNode     = e.DestDragNode;
        RadTreeViewDropPosition dropPosition = e.DropPosition;

        string result = "";

        if (destNode != null)//drag&drop is performed between trees
        {
            if (sourceNode.TreeView.SelectedNodes.Count <= 1)
            {
                result += "<b>" + sourceNode.Text + "</b>" + ";";
                PerformDragAndDrop(dropPosition, sourceNode, destNode);
            }
            else if (sourceNode.TreeView.SelectedNodes.Count > 1)
            {
                foreach (RadTreeNode node in sourceNode.TreeView.SelectedNodes)
                {
                    result += "<b>" + node.Text + "</b>" + ";";
                    PerformDragAndDrop(dropPosition, node, destNode);
                }
            }
            else//dropped node will be a sibling of the destination node
            {
                if (sourceNode.TreeView.SelectedNodes.Count <= 1)
                {
                    if (!sourceNode.IsAncestorOf(destNode))
                    {
                        result += "<b>" + sourceNode.Text + "</b>" + ";";
                        sourceNode.Owner.Nodes.Remove(sourceNode);
                        destNode.Nodes.Add(sourceNode);
                    }
                }
                else if (sourceNode.TreeView.SelectedNodes.Count > 1)
                {
                    foreach (RadTreeNode node in RadTreeView1.SelectedNodes)
                    {
                        if (!node.IsAncestorOf(destNode))
                        {
                            result += "<b>" + node.Text + "</b>" + ";";
                            node.Owner.Nodes.Remove(node);
                            destNode.Nodes.Add(node);
                        }
                    }
                }
            }


            if (e.SourceDragNode.Category == "Files")
            {
                if (!System.IO.File.Exists(e.SourceDragNode.Value))
                {
                    System.IO.File.Move(e.SourceDragNode.Value, e.DestDragNode.Value + "\\" + e.SourceDragNode.Text);
                }
                else
                {
                    string fname          = e.SourceDragNode.Text.Substring(0, e.SourceDragNode.Text.LastIndexOf("."));
                    string ext            = e.SourceDragNode.Text.Substring(fname.Length);
                    int    counter        = 1;
                    string targetFileName = Path.Combine(e.DestDragNode.Value, fname + counter.ToString() + ext);

                    while (System.IO.File.Exists(targetFileName))
                    {
                        counter++;
                        targetFileName = Path.Combine(e.DestDragNode.Value, fname + counter.ToString() + ext);
                    }

                    System.IO.File.Move(e.SourceDragNode.Value, targetFileName);
                }
            }
            else
            {
                if (!System.IO.Directory.Exists(e.DestDragNode.Value + "\\" + e.SourceDragNode.Text))
                {
                    if (System.IO.Directory.Exists(e.SourceDragNode.Value))
                    {
                        System.IO.Directory.Move(e.SourceDragNode.Value, e.DestDragNode.Value + "\\" + e.SourceDragNode.Text);
                    }
                }
            }

            destNode.Expanded = true;
            System.IO.FileSystemWatcher mywatcher = new FileSystemWatcher(e.DestDragNode.Value);
            mywatcher.WaitForChanged(WatcherChangeTypes.All, 2000);
            sourceNode.TreeView.ClearSelectedNodes();
            createtree(e.DestDragNode.Value);
            // UpdatePanel1.Update();
        }
    }