Inheritance: ExtObject
        public void ProcessRequest(HttpContext context)
        {
            xSubmitHandler submitData = new xSubmitHandler(context);
            Response response = new Response(true);

            try
            {
                string json = submitData.Json;
                XmlNode xml = submitData.Xml;
                List<Country> objects = submitData.Object<Country>();
                //process data
            }
            catch (Exception e)
            {
                response.Success = false;
                response.Message = e.Message;
            }

            response.Write();
        }
 public AfterDirectEventArgs(Response ajaxResponse)
 {
     this.ajaxResponse = ajaxResponse;
 }
        public void RaiseAjaxPostBackEvent(string eventArgument, ParameterCollection extraParams)
        {
            bool success = true;
            string msg = null;

            Response response = new Response();

            try
            {
                ToolbarItemCreateEventArgs e = new ToolbarItemCreateEventArgs(extraParams);
                this.OnItemCreate(e);
                
                success = e.Success;
                msg = e.ErrorMessage;                
            }
            catch (Exception ex)
            {
                success = false;
                msg = this.IsDebugging ? ex.ToString() : ex.Message;
                if (this.ResourceManager.RethrowAjaxExceptions)
                {
                    throw;
                }
            }

            response.Success = success;
            response.Message = msg;

            ResourceManager.ServiceResponse = response;
        }
Beispiel #4
0
        private void RaiseCallBackEvent(string eventArgument)
        {
            Response response = new Response(true, null);

            try
            {
                if (eventArgument.IsEmpty())
                {
                    throw new ArgumentNullException("eventArgument");
                }

                XmlNode xmlData = this.SubmitConfig;

                if (xmlData == null)
                {
                    return; 
                }

                XmlNode parametersNode = xmlData.SelectSingleNode("config/extraParams");

                string data = null;
                XmlNode serviceNode = xmlData.SelectSingleNode("config/serviceParams");

                if (serviceNode != null)
                {
                    data = serviceNode.InnerText;
                }

                string action = eventArgument;

                switch (action)
                {
                    case "update":
                        if (data == null)
                        {
                            throw new InvalidOperationException("No data in request");
                        }

                        this.BuildSource(data);

                        if (raiseChanged)
                        {
                            this.OnDataChanged(EventArgs.Empty);
                            raiseChanged = false;
                        }

                        break;
                }
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Message = this.IsDebugging ? ex.ToString() : ex.Message;
            }

            ResourceManager.ServiceResponse = response;
        }
Beispiel #5
0
        protected virtual void GenerateAjaxResponseScript()
        {
            StoreResponseData dataResponse = new StoreResponseData();
            dataResponse.Data = this.GetAjaxDataJson();
            PageProxy dsp = this.Proxy.Proxy as PageProxy;

            if (dsp == null && this.Proxy.Proxy != null)
            {
                return;
            }

            dataResponse.Total = dsp != null ? dsp.Total : 0;

            Response response = new Response(true);
            response.Data = dataResponse.ToString();

            this.AddScript(this.ClientID.ConcatWith(".callbackRefreshHandler(response, {serviceResponse: ", new ClientConfig().Serialize(response), "}, ", this.ClientID, ", o.eventType, o.action, o.extraParams);"));
            this.ajaxDataBindingRequired = false;
        }
Beispiel #6
0
        public void RaiseAjaxPostBackEvent(string eventArgument, ParameterCollection extraParams)
        {
            bool success = true;
            string msg = null;

            Response response = new Response();

            try
            {
                if (eventArgument.IsEmpty())
                {
                    throw new ArgumentNullException("eventArgument");
                }

                string data = null;

                if (this.DirectConfig != null)
                {
                    JToken serviceToken = this.DirectConfig.SelectToken("config.serviceParams", false);

                    if (serviceToken != null)
                    {
                        data = JSON.ToString(serviceToken);
                    }
                }

                switch(eventArgument)
                {
                    case "submit":
                        SubmitEventArgs se = new SubmitEventArgs(extraParams, JSON.Deserialize<SubmittedNode>(data, new CamelCasePropertyNamesContractResolver()));
                        this.OnSubmit(se);
                        break;
                    case "raEdit":
                        RemoteEditEventArgs rr = new RemoteEditEventArgs(data,extraParams);
                        this.OnRemoteEdit(rr);
                        success = rr.Accept;
                        msg = rr.RefusalMessage;
                        break;
                    case "raRemove":
                        RemoteRemoveEventArgs rrm = new RemoteRemoveEventArgs(data, extraParams);
                        this.OnRemoteRemove(rrm);
                        success = rrm.Accept;
                        msg = rrm.RefusalMessage;
                        break;
                    case "raInsert":
                    case "raAppend":
                        RemoteAppendEventArgs ra = new RemoteAppendEventArgs(eventArgument == "raInsert", data, extraParams);
                        this.OnRemoteAppend(ra);
                        success = ra.Accept;
                        msg = ra.RefusalMessage;
                        break;
                    case "raMove":
                        RemoteMoveEventArgs rm = new RemoteMoveEventArgs(data, extraParams);
                        this.OnRemoteMove(rm);
                        success = rm.Accept;
                        msg = rm.RefusalMessage;
                        break;
                }
            }
            catch (Exception ex)
            {
                success = false;
                msg = this.IsDebugging ? ex.ToString() : ex.Message;

                if (this.ResourceManager.RethrowAjaxExceptions)
                {
                    throw;
                }
            }

            response.Success = success;
            response.Message = msg;

            ResourceManager.ServiceResponse = response;
        }
Beispiel #7
0
        public void RaiseAjaxPostBackEvent(string eventArgument, ParameterCollection extraParams)
        {
            bool success = true;
            string msg = null;

            Response response = new Response();

            try
            {
                if (eventArgument.IsEmpty())
                {
                    throw new ArgumentNullException("eventArgument");
                }

                XmlNode xmlData = this.SubmitConfig;
                string data = null;

                if (xmlData != null)
                {
                    XmlNode serviceNode = xmlData.SelectSingleNode("config/serviceParams");

                    if (serviceNode != null)
                    {
                        data = serviceNode.InnerText;
                    }
                }

                switch(eventArgument)
                {
                    case "nodeload":
                        NodeLoadEventArgs e = new NodeLoadEventArgs(extraParams);
                        PageTreeLoader loader = (PageTreeLoader) this.Loader.Primary;
                        loader.OnNodeLoad(e);
                        TreeNodeCollection nodes = e.Nodes;
                        success = e.Success;
                        msg = e.ErrorMessage;
                        response.Data = nodes != null ? nodes.ToJson() : null;
                        break;
                    case "submit":
                        SubmitEventArgs se = new SubmitEventArgs(extraParams, JSON.Deserialize<SubmittedNode>(data, new CamelCasePropertyNamesContractResolver()));
                        this.OnSubmit(se);
                        break;
                    case "raRename":
                        RemoteRenameEventArgs rr = new RemoteRenameEventArgs(data,extraParams);
                        this.OnRemoteRename(rr);
                        success = rr.Accept;
                        msg = rr.RefusalMessage;
                        break;
                    case "raRemove":
                        RemoteActionEventArgs rrm = new RemoteActionEventArgs(data, extraParams);
                        this.OnRemoteRemove(rrm);
                        success = rrm.Accept;
                        msg = rrm.RefusalMessage;
                        break;
                    case "raInsert":
                    case "raAppend":
                        RemoteAppendEventArgs ra = new RemoteAppendEventArgs(eventArgument == "raInsert", data, extraParams);
                        this.OnRemoteAppend(ra);
                        success = ra.Accept;
                        msg = ra.RefusalMessage;
                        break;
                    case "raMove":
                        RemoteMoveEventArgs rm = new RemoteMoveEventArgs(data, extraParams);
                        this.OnRemoteMove(rm);
                        success = rm.Accept;
                        msg = rm.RefusalMessage;
                        break;
                }
            }
            catch (Exception ex)
            {
                success = false;
                msg = this.IsDebugging ? ex.ToString() : ex.Message;

                if (this.ResourceManager.RethrowAjaxExceptions)
                {
                    throw;
                }
            }

            response.Success = success;
            response.Message = msg;

            ResourceManager.ServiceResponse = response;
        }