[CLOSED] Errors regarding TreePanel

  1. #1

    [CLOSED] Errors regarding TreePanel

    Dear Support Members,


    I m facing following problems using treepanel
    1. on remote nodemove i update DB which is succeeded as required but on client side in case of point="below" view node removed but not moved to new location.


    2. on appending a new node how can i myself set id of that node by default it is auto generated.


    3. how can i insert extra params to remoteinsert,remoteRemove etc


    4. on 'RemoteActionSuccess' listner, e.message does not work rather it works with RemoteActionRefusal.


    this is my view
    <ext:Menu ID="TreeContextMenu" runat="server" EnableScrolling="false">
    <Items>
    <ext:MenuTextItem ID="NodeName" runat="server" Cls="bold-text" />
    <ext:MenuSeparator />
    <ext:MenuItem ID="MenuItem4" runat="server" Text="Insert child" Icon="ArrowRight">
    <Listeners>
    <Click Handler="#{TreePanel1}.appendChild(#{TreePanel1}.m enuNode, 'New', true);" />
    </Listeners>
    </ext:MenuItem>
    <ext:MenuItem ID="MenuItem1" runat="server" Text="Rename" Icon="Pencil">
    <Listeners>
    <Click Handler="#{TreePanel1}.startEdit(#{TreePanel1}.men uNode, 10);" />
    </Listeners>
    </ext:MenuItem>
    <ext:MenuItem ID="MenuItem2" runat="server" Text="Remove" Icon="Delete">
    <Listeners>
    <Click Handler="#{TreePanel1}.removeNode(#{TreePanel1}.me nuNode);" />
    </Listeners>
    </ext:MenuItem>
    </Items>
    <Listeners>
    <Show Handler="#{NodeName}.el.update(this.nodeName);" />
    </Listeners>
    </ext:Menu>
    <script type="text/javascript" src="../../Scripts/AppScripts/Location.js"></script>
    <script type="text/javascript">
    var isAdmin='<%=HelpDeskWebApp.Models.User.IsLoggedinU serAdministrator()?"true":"false"%>';
    $(document).ready(function() { 
    Location.setIsAdmin(isAdmin);
    });
    function showMenu(node, e) { 
    if(Location.getIsAdmin()=='true')
    {
    var menu = <%=this.TreeContextMenu.ClientID.ToString()%>;
    if (node.browserEvent) {
    this.menuNode = this.getRootNode();
    menu.nodeName = "";
    this.getSelectionModel().clearSelections();
    e = node;
    }
    else {
    this.menuNode = node;
    menu.nodeName = node.text;
    node.select();
    }
    
    
    menu.showAt([e.getXY()[0], e.getXY()[1] + 18]);
    e.stopEvent();
    }
    }
    </script>
    <ext:Panel ID="PanelContent" runat="server" Layout="Fit" Region="Center">
    <Items>
    <ext:TreePanel ID="TreePanel1" runat="server" UseArrows="true" AutoScroll="true"
    Animate="true" EnableDD="false" Mode="Remote" RootVisible="true" AllowLeafDrop="true"
    ContainerScroll="true" Title="Tree" Border="false" RemoteJson="true" RemoteInsertUrl="/Locations/RemoteInsert"
    RemoteRemoveUrl="/Locations/RemoteRemove" RemoteRenameUrl="/Locations/RemoteRename"
    RemoteMoveUrl="/Locations/RemoteMove" RemoteAppendUrl="/Locations/RemoteInsert"
    AutoHeight="true">
    <Loader>
    <ext:TreeLoader DataUrl="/Locations/getNodes">
    </ext:TreeLoader>
    </Loader>
    <Editors>
    <ext:TreeEditor runat="server" Disabled="true"> 
    </ext:TreeEditor>
    </Editors>
    <SelectionSubmitConfig Encode="true" />
    <Root>
    <ext:AsyncTreeNode NodeID="1" Text="Location" />
    </Root>
    <Listeners> 
    <ContextMenu Fn="showMenu" StopEvent="true" />
    <RemoteActionRefusal Handler="Ext.Msg.alert('Error', e.message);" /> 
    <RemoteActionSuccess Handler="Ext.net.Notification.show({
    title:'Success',
    html:e.message
    });" />
    </Listeners>
    </ext:TreePanel>
    </Items>
    </ext:Panel>

    this is my Controller action 'RemoteMove'

    public JsonResult RemoteMove(string id, string targetId, string point)
    {
    int loc_Id = Convert.ToInt32(id);
    int loc_targerId = Convert.ToInt32(targetId);
    JsonResult result = new JsonResult();
    result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
    int? userId = HelpDeskWebApp.Models.User.getLoggedinUserId();
    if (userId != null)
    {
    if (HelpDeskWebApp.Models.User.IsLoggedinUserAdminist rator())
    {
    if (point == "append")
    {
    Location location = db.Locations.First<Location>(l => l.Id == loc_Id);
    location.IRoot = Convert.ToInt32(targetId);
    }
    else if (point == "below")
    {
    Location location = db.Locations.First<Location>(l => l.Id == loc_Id);
    location.IRoot = db.Locations.First<Location>(l => l.Id == loc_targerId).IRoot;
    }
    db.SaveChanges();
    result.Data = new
    {
    d = new
    {
    success = true,
    message = "Operation Succeeded"
    }
    };
    }
    else
    {
    result.Data = new
    {
    d = new
    {
    success = false,
    message = "You do not have right to Add New Location"
    }
    };
    }
    }
    else
    {
    result.Data = new
    {
    d = new
    {
    success = false,
    message = "Failure! Session Timed Out"
    }
    };
    }
    
    
    return result; 
    }
    Last edited by Daniil; Nov 16, 2011 at 8:31 AM. Reason: Please use [CODE] tags, [CLOSED]
  2. #2
    Hi,

    Please start a new thread for each issue (i.e. four new threads), posting only related to an issue code.

    Closing the thread.

Similar Threads

  1. [CLOSED] Compilation with errors.
    By majunior in forum 1.x Legacy Premium Help
    Replies: 8
    Last Post: Dec 28, 2011, 4:42 PM
  2. [CLOSED] Errors in extnet css
    By acrossdev in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Oct 07, 2010, 9:00 AM
  3. [CLOSED] [1.0] DateField errors
    By danielg in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Oct 21, 2009, 11:55 AM
  4. [CLOSED] ScriptManager errors
    By Justin_Wignall in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Feb 25, 2009, 12:55 AM
  5. [CLOSED] Errors in last build
    By Jurke in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Nov 07, 2008, 9:45 AM

Posting Permissions