Ejemplo n.º 1
0
        public static void setInstanceAccessInSession(DocsPaWR.InstanceAccess instanceAccess)
        {
            try
            {
                HttpContext.Current.Session["Instance"] = instanceAccess;
            }
            catch (System.Exception ex)
            {
                UIManager.AdministrationManager.DiagnosticError(ex);

            }
        }
Ejemplo n.º 2
0
 public static DocsPaWR.InstanceAccess CreateDeclarationDocument()
 {
     DocsPaWR.InstanceAccess instance = null;
     try
     {
         instance = docsPaWS.CreateDeclarationDocument(getInstanceAccessInSession(), UserManager.GetInfoUser(), RoleManager.GetRoleInSession());
     }
     catch (System.Exception ex)
     {
         UIManager.AdministrationManager.DiagnosticError(ex);
     }
     return instance;
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Aggiorna l'istanza d'accesso
 /// </summary>
 /// <param name="instanceAccess"></param>
 /// <returns></returns>
 public static DocsPaWR.InstanceAccess UpdateInstanceAccess(InstanceAccess instanceAccess)
 {
     DocsPaWR.InstanceAccess instance = null;
     try
     {
         instance = docsPaWS.UpdateInstanceAccess(instanceAccess, UserManager.GetInfoUser());
     }
     catch (System.Exception ex)
     {
         UIManager.AdministrationManager.DiagnosticError(ex);
     }
     return instance;
 }
Ejemplo n.º 4
0
 public static SchedaDocumento ForwardsInstanceAccess(DocsPaWR.InstanceAccess instance, out int totalFileSizeInstance)
 {
     SchedaDocumento documento = null;
     totalFileSizeInstance = 0;
     try
     {
         documento = docsPaWS.ForwardsInstanceAccess(instance, UserManager.GetInfoUser(), RoleManager.GetRoleInSession(), out totalFileSizeInstance);
     }
     catch (Exception ex)
     {
         UIManager.AdministrationManager.DiagnosticError(ex);
     }
     return documento;
 }
Ejemplo n.º 5
0
 protected void InitializePage()
 {
     this.InitializeLabel();
     this.InitInitiallyOpenTree();
     DocsPaWR.InstanceAccess instance = InstanceAccessManager.getInstanceAccessInSession();
     if (instance != null)
     {
         this.projectLblCodiceGenerato.Text = instance.ID_INSTANCE_ACCESS;
     }
     if (this.EsisteDichiarazioneConformita)
     {
         this.InstanceDetailsDelete.Enabled = false;
     }
 }
Ejemplo n.º 6
0
        public void RefreshTabs()
        {
            if (!string.IsNullOrEmpty(this.PageCaller))
            {
                DocsPaWR.InstanceAccess instance = InstanceAccessManager.getInstanceAccessInSession();

                switch (this.PageCaller.ToUpper())
                {
                case "CONTENT":
                    this.LinkInstance.Enabled = true;
                    this.LiInstance.Attributes.Remove("class");
                    this.LiInstance.Attributes.Add("class", "prjIAmProfile");

                    this.LinkInstance.Attributes["onclick"] = "disallowOp('IdMasterBody')";

                    if (instance != null)
                    {
                        this.LinkInstanceStructure.Enabled = true;
                        this.LiInstanceStructure.Attributes.Remove("class");
                        this.LiInstanceStructure.Attributes.Add("class", "prjOther");
                        this.LinkInstance.Attributes["onclick"]        = "disallowOp('IdMasterBody')";
                        this.LiInstanceStructure.Attributes["onclick"] = "disallowOp('IdMasterBody')";
                    }
                    else
                    {
                        this.LinkInstance.Enabled          = true;
                        this.LinkInstanceStructure.Enabled = false;
                    }

                    break;

                case "STRUCTURE":
                    this.LinkInstance.Enabled = true;
                    this.LiInstance.Attributes.Remove("class");
                    this.LiInstance.Attributes.Add("class", "prjOther");
                    this.LinkInstance.Attributes["onclick"] = "disallowOp('IdMasterBody')";

                    this.LinkInstanceStructure.Enabled = true;
                    this.LinkInstanceStructure.Attributes.Remove("class");
                    this.LiInstanceStructure.Attributes.Add("class", "prjIAmProfile");
                    this.LinkInstanceStructure.Attributes["onclick"] = "disallowOp('IdMasterBody')";
                    break;
                }

                this.UpProjectTabs.Update();
            }
        }
Ejemplo n.º 7
0
        /*
         * protected void BtnCheckedDocuments_Click()
         * {
         *  string value = this.treenode_checked.Value;
         *  string idObject = string.Empty;
         *  List<InstanceAccessDocument> listDoc = new List<InstanceAccessDocument>();
         *
         *  List<InstanceAccessAttachments> listAtt = new List<InstanceAccessAttachments>();
         *  InstanceAccessDocument acc = new InstanceAccessDocument();
         *  if (!string.IsNullOrEmpty(value))
         *  {
         *      string[] values = value.Split(',');
         *      if (values != null && values.Length > 0)
         *      {
         *
         *
         *          foreach (string val in values)
         *          {
         *
         *              acc = (this.InstanceDocuments.Where(x => x.ID_INSTANCE_ACCESS_DOCUMENT == val.Split('_')[1])).FirstOrDefault();
         *              switch (val.Split('_')[0])
         *              {
         *
         *                  case "root":
         *                      if (acc != null)
         *                      {
         *                          idObject = acc.INFO_PROJECT.ID_PROJECT;
         *                          listDoc = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList<InstanceAccessDocument>();
         *                          UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
         *                          this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
         *                      }
         *                      break;
         *                  case "node":
         *                      if (acc != null)
         *                      {
         *                          idObject = acc.INFO_PROJECT.ID_PROJECT;
         *                          listDoc = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList<InstanceAccessDocument>();
         *                          UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
         *                          this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
         *                      }
         *                      break;
         *
         *                  case "doc":
         *                      if (acc != null)
         *                      {
         *                          idObject = acc.ID_INSTANCE_ACCESS_DOCUMENT;
         *                          List<InstanceAccessDocument> listInstanceAccessDocument = new List<InstanceAccessDocument>();
         *                          listDoc = this.InstanceDocuments.Where(x => x.ID_INSTANCE_ACCESS_DOCUMENT == idObject).ToList<InstanceAccessDocument>();
         *                          //se ci sono allegati li prendo e li inserisco come documenti singoli
         *                          foreach (InstanceAccessDocument instanceDoc in listDoc)
         *                          {
         *                              if (instanceDoc.ATTACHMENTS != null && instanceDoc.ATTACHMENTS.Length > 0)
         *                              {
         *
         *                                  foreach (InstanceAccessAttachments att in instanceDoc.ATTACHMENTS)
         *                                  {
         *                                      InstanceAccessDocument instInset = new InstanceAccessDocument();
         *                                      instInset.ID_INSTANCE_ACCESS = InstanceAccessManager.getInstanceAccessInSession().ID_INSTANCE_ACCESS;
         *                                      instInset.DOCNUMBER = att.ID_ATTACH;
         *                                      instInset.ATTACHMENTS = new InstanceAccessAttachments[0];
         *                                      instInset.INFO_DOCUMENT = new InfoDocument() { DOCNUMBER = att.ID_ATTACH };
         *                                      listInstanceAccessDocument.Add(instInset);
         *                                  }
         *
         *
         *
         *                              }
         *                          }
         *
         *                          if (listInstanceAccessDocument != null && listInstanceAccessDocument.Count > 0 && InstanceAccessManager.InsertInstanceAccessDocuments(listInstanceAccessDocument))
         *                          {
         *                              DocsPaWR.InstanceAccess instanceAccess = InstanceAccessManager.GetInstanceAccessById(InstanceAccessManager.getInstanceAccessInSession().ID_INSTANCE_ACCESS);
         *                              InstanceAccessManager.setInstanceAccessInSession(instanceAccess);
         *                              this.InstanceDocuments = instanceAccess.DOCUMENTS.ToList<InstanceAccessDocument>();
         *                          }
         *                          UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
         *                          this.InstanceDocuments.RemoveAll(x => x.ID_INSTANCE_ACCESS_DOCUMENT == idObject);
         *                      }
         *                      break;
         *                  case "attach":
         *
         *                      foreach (InstanceAccessDocument instanceDoc in this.InstanceDocuments)
         *                      {
         *                          if (instanceDoc.ATTACHMENTS != null && instanceDoc.ATTACHMENTS.Length > 0)
         *                          {
         *                              //listAtt = instanceDoc.ATTACHMENTS.ToList<InstanceAccessAttachments>().Where(p => p.ID_ATTACH.Equals(idObject)).ToList<InstanceAccessAttachments>();
         *                              //instanceDoc.ATTACHMENTS.ToList<InstanceAccessAttachments>().RemoveAll(p => p.ID_ATTACH.Equals(idObject));
         *
         *                              listAtt = instanceDoc.ATTACHMENTS.ToList<InstanceAccessAttachments>().Where(p => p.SYSTEM_ID.Equals(val.Split('_')[1])).ToList<InstanceAccessAttachments>();
         *                              instanceDoc.ATTACHMENTS.ToList<InstanceAccessAttachments>().RemoveAll(p => p.SYSTEM_ID.Equals(val.Split('_')[1]));
         *
         *
         *
         *                              if (listAtt != null && listAtt.Count > 0)
         *                              {
         *
         *                                  break;
         *                              }
         *                          }
         *
         *                      }
         *
         *                      UIManager.InstanceAccessManager.RemoveInstanceAccessAttachments(listAtt);
         *
         *                      break;
         *                  case "rootNo":
         *                      idObject = this.treenode_deleted.Value.Split('_')[1];
         *                      listDoc = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList<InstanceAccessDocument>();
         *                      UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
         *                      this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
         *                      break;
         *                  case "nodeNo":
         *                      idObject = this.treenode_deleted.Value.Split('_')[1];
         *                      listDoc = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList<InstanceAccessDocument>();
         *                      UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
         *                      this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
         *                      break;
         *              }
         *          }
         *          DocsPaWR.InstanceAccess inst = UIManager.InstanceAccessManager.getInstanceAccessInSession();
         *          inst.DOCUMENTS = this.InstanceDocuments.ToArray<InstanceAccessDocument>();
         *          UIManager.InstanceAccessManager.setInstanceAccessInSession(inst);
         *
         *          ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "RefreshJsTree", "JsTree();", true);
         *
         *          this.treenode_deleted.Value = string.Empty;
         *          this.upPnlButtons.Update();
         *      }
         *  }
         * }
         *
         * */

        protected void BtnContextMenu_Click()
        {
            List <InstanceAccessDocument>    listDoc = new List <InstanceAccessDocument>();
            List <InstanceAccessAttachments> listAtt = new List <InstanceAccessAttachments>();
            InstanceAccessDocument           acc     = new InstanceAccessDocument();
            string idObject = string.Empty;

            if (!string.IsNullOrEmpty(this.treenode_deleted.Value))
            {
                acc = (this.InstanceDocuments.Where(x => x.ID_INSTANCE_ACCESS_DOCUMENT == this.treenode_deleted.Value.Split('_')[1])).FirstOrDefault();
                switch (this.treenode_deleted.Value.Split('_')[0])
                {
                case "root":
                    idObject = acc.INFO_PROJECT.ID_PROJECT;
                    listDoc  = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList <InstanceAccessDocument>();
                    UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                    this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
                    break;

                case "node":
                    idObject = acc.INFO_PROJECT.ID_PROJECT;
                    listDoc  = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList <InstanceAccessDocument>();
                    UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                    this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
                    break;

                case "doc":
                    idObject = acc.ID_INSTANCE_ACCESS_DOCUMENT;
                    List <InstanceAccessDocument> listInstanceAccessDocument = new List <InstanceAccessDocument>();
                    listDoc = this.InstanceDocuments.Where(x => x.ID_INSTANCE_ACCESS_DOCUMENT == idObject).ToList <InstanceAccessDocument>();
                    //se ci sono allegati li prendo e li inserisco come documenti singoli
                    foreach (InstanceAccessDocument instanceDoc in listDoc)
                    {
                        if (instanceDoc.ATTACHMENTS != null && instanceDoc.ATTACHMENTS.Length > 0)
                        {
                            foreach (InstanceAccessAttachments att in instanceDoc.ATTACHMENTS)
                            {
                                InstanceAccessDocument instInset = new InstanceAccessDocument();
                                instInset.ID_INSTANCE_ACCESS = InstanceAccessManager.getInstanceAccessInSession().ID_INSTANCE_ACCESS;
                                instInset.DOCNUMBER          = att.ID_ATTACH;
                                instInset.ATTACHMENTS        = new InstanceAccessAttachments[0];
                                instInset.INFO_DOCUMENT      = new InfoDocument()
                                {
                                    DOCNUMBER = att.ID_ATTACH
                                };
                                listInstanceAccessDocument.Add(instInset);
                            }
                        }
                    }

                    if (listInstanceAccessDocument != null && listInstanceAccessDocument.Count > 0 && InstanceAccessManager.InsertInstanceAccessDocuments(listInstanceAccessDocument))
                    {
                        DocsPaWR.InstanceAccess instanceAccess = InstanceAccessManager.GetInstanceAccessById(InstanceAccessManager.getInstanceAccessInSession().ID_INSTANCE_ACCESS);
                        InstanceAccessManager.setInstanceAccessInSession(instanceAccess);
                        this.InstanceDocuments = instanceAccess.DOCUMENTS.ToList <InstanceAccessDocument>();
                        ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "RefreshJsTree", "JsTree();", true);
                    }
                    UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                    this.InstanceDocuments.RemoveAll(x => x.ID_INSTANCE_ACCESS_DOCUMENT == idObject);
                    break;

                case "attach":
                    foreach (InstanceAccessDocument instanceDoc in this.InstanceDocuments)
                    {
                        if (instanceDoc.ATTACHMENTS != null && instanceDoc.ATTACHMENTS.Length > 0)
                        {
                            //listAtt = instanceDoc.ATTACHMENTS.ToList<InstanceAccessAttachments>().Where(p => p.ID_ATTACH.Equals(idObject)).ToList<InstanceAccessAttachments>();
                            //instanceDoc.ATTACHMENTS.ToList<InstanceAccessAttachments>().RemoveAll(p => p.ID_ATTACH.Equals(idObject));

                            listAtt = instanceDoc.ATTACHMENTS.ToList <InstanceAccessAttachments>().Where(p => p.SYSTEM_ID.Equals(this.treenode_deleted.Value.Split('_')[1])).ToList <InstanceAccessAttachments>();
                            instanceDoc.ATTACHMENTS.ToList <InstanceAccessAttachments>().RemoveAll(p => p.SYSTEM_ID.Equals(this.treenode_deleted.Value.Split('_')[1]));


                            if (listAtt != null && listAtt.Count > 0)
                            {
                                break;
                            }
                        }
                        // instanceDoc.ATTACHMENTS.ToList().RemoveAll(p => p.ID_ATTACH.Equals(this.treenode_deleted.Value.Split('_')[1]));
                    }

                    UIManager.InstanceAccessManager.RemoveInstanceAccessAttachments(listAtt);

                    /*
                     *                  InstanceAccessDocument doc = (from d in listInstanceAccessDocumentTemp
                     *                                                where ((from a in d.ATTACHMENTS where a.ID_ATTACH.Equals("id") select a).Count() > 0)
                     *                                                select d).FirstOrDefault();
                     *                  (listInstanceAccessDocumentTemp.Find(d => d.ID_INSTANCE_ACCESS_DOCUMENT.Equals(doc.ID_INSTANCE_ACCESS_DOCUMENT))).ATTACHMENTS.ToList().RemoveAll(a => a.ID_ATTACH.Equals("id"));
                     */
                    break;

                case "rootNo":
                    idObject = this.treenode_deleted.Value.Split('_')[1];
                    listDoc  = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList <InstanceAccessDocument>();
                    UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                    this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
                    break;

                case "nodeNo":
                    idObject = this.treenode_deleted.Value.Split('_')[1];
                    listDoc  = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList <InstanceAccessDocument>();
                    UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                    this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
                    break;
                }
            }
            DocsPaWR.InstanceAccess inst = UIManager.InstanceAccessManager.getInstanceAccessInSession();
            inst.DOCUMENTS = this.InstanceDocuments.ToArray <InstanceAccessDocument>();
            UIManager.InstanceAccessManager.setInstanceAccessInSession(inst);

            //ScriptManager.RegisterStartupScript(this, this.GetType(), "jsTree", "JsTree();", true);
            //this.upnlStruttura.Update();

            this.treenode_deleted.Value = string.Empty;
            this.upPnlButtons.Update();
        }
Ejemplo n.º 8
0
        protected void BtnCheckedDocuments_Click()
        {
            string value    = this.treenode_checked.Value;
            string idObject = string.Empty;
            List <InstanceAccessDocument>    listDoc    = new List <InstanceAccessDocument>();
            List <InstanceAccessDocument>    listDocApp = new List <InstanceAccessDocument>();
            List <InstanceAccessAttachments> listAtt    = new List <InstanceAccessAttachments>();
            List <InstanceAccessAttachments> listAttApp = new List <InstanceAccessAttachments>();
            //listDoc = (from d in this.InstanceDocuments select new{instance=d,}).up
            InstanceAccessDocument acc = new InstanceAccessDocument();

            //Inizialmente imposto tutti gli ENABLED dei documenti, e relativi allegati, a false
            for (int i = 0; i < this.InstanceDocuments.Count(); i++)
            {
                this.InstanceDocuments[i].ENABLE = false;
                listDoc.Add(this.InstanceDocuments[i]);
                if (InstanceDocuments[i].ATTACHMENTS != null && InstanceDocuments[i].ATTACHMENTS.Length > 0)
                {
                    for (int j = 0; j < InstanceDocuments[i].ATTACHMENTS.Count(); j++)
                    {
                        InstanceDocuments[i].ATTACHMENTS[j].ENABLE = false;
                        listAtt.Add(InstanceDocuments[i].ATTACHMENTS[j]);
                    }
                }
            }
            if (!string.IsNullOrEmpty(value))
            {
                string[] values = value.Split(',');
                if (values != null && values.Length > 0)
                {
                    foreach (string val in values)
                    {
                        acc = (this.InstanceDocuments.Where(x => x.ID_INSTANCE_ACCESS_DOCUMENT == val.Split('_')[1])).FirstOrDefault();
                        switch (val.Split('_')[0])
                        {
                        /*
                         * case "root":
                         * if (acc != null)
                         * {
                         *  idObject = acc.INFO_PROJECT.ID_PROJECT;
                         *  listDocApp = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList<InstanceAccessDocument>();
                         *  if (listDocApp != null && listDocApp.Count() > 0)
                         *  {
                         *      foreach (InstanceAccessDocument d in listDocApp)
                         *      {
                         *          int index = listDoc.Select((item, i) => new { obj = item, index = i }).First(item => item.obj.ID_INSTANCE_ACCESS_DOCUMENT.Equals(d.ID_INSTANCE_ACCESS_DOCUMENT)).index;
                         *          listDoc[index].ENABLE = true;
                         *      }
                         *  }
                         *  this.InstanceDocuments.Clear();
                         *  this.InstanceDocuments.AddRange(listDoc);
                         * }
                         * break;
                         * case "node":
                         * if (acc != null)
                         * {
                         *  idObject = acc.INFO_PROJECT.ID_PROJECT;
                         *  listDocApp = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList<InstanceAccessDocument>();
                         *  if (listDocApp != null && listDocApp.Count() > 0)
                         *  {
                         *      foreach (InstanceAccessDocument d in listDocApp)
                         *      {
                         *          int index = listDoc.Select((item, i) => new { obj = item, index = i }).First(item => item.obj.ID_INSTANCE_ACCESS_DOCUMENT.Equals(d.ID_INSTANCE_ACCESS_DOCUMENT)).index;
                         *          listDoc[index].ENABLE = true;
                         *      }
                         *  }
                         *  this.InstanceDocuments.Clear();
                         *  this.InstanceDocuments.AddRange(listDoc);
                         * }
                         * break;
                         * */
                        case "doc":
                            if (acc != null)
                            {
                                idObject = acc.ID_INSTANCE_ACCESS_DOCUMENT;
                                List <InstanceAccessDocument> listInstanceAccessDocument = new List <InstanceAccessDocument>();
                                listDocApp = this.InstanceDocuments.Where(x => x.ID_INSTANCE_ACCESS_DOCUMENT == idObject).ToList <InstanceAccessDocument>();
                                if (listDocApp != null && listDocApp.Count() > 0)
                                {
                                    foreach (InstanceAccessDocument d in listDocApp)
                                    {
                                        int index = listDoc.Select((item, i) => new { obj = item, index = i }).First(item => item.obj.ID_INSTANCE_ACCESS_DOCUMENT.Equals(d.ID_INSTANCE_ACCESS_DOCUMENT)).index;
                                        listDoc[index].ENABLE = true;
                                    }
                                }
                                this.InstanceDocuments.Clear();
                                this.InstanceDocuments.AddRange(listDoc);
                            }
                            break;

                        case "attach":

                            foreach (InstanceAccessDocument instanceDoc in this.InstanceDocuments)
                            {
                                if (instanceDoc.ATTACHMENTS != null && instanceDoc.ATTACHMENTS.Length > 0)
                                {
                                    listAttApp = instanceDoc.ATTACHMENTS.ToList <InstanceAccessAttachments>().Where(p => p.SYSTEM_ID.Equals(val.Split('_')[1])).ToList <InstanceAccessAttachments>();
                                    if (listAttApp != null && listAttApp.Count() > 0)
                                    {
                                        foreach (InstanceAccessAttachments a in listAttApp)
                                        {
                                            int index = listAtt.Select((item, i) => new { obj = item, index = i }).First(item => item.obj.SYSTEM_ID.Equals(a.SYSTEM_ID)).index;
                                            listAtt[index].ENABLE = true;

                                            int indexListAttInSession = instanceDoc.ATTACHMENTS.Select((item, i) => new { obj = item, index = i }).First(item => item.obj.SYSTEM_ID.Equals(a.SYSTEM_ID)).index;
                                            instanceDoc.ATTACHMENTS[indexListAttInSession].ENABLE = true;
                                        }
                                        break;
                                    }
                                }
                            }

                            break;

                        case "rootNo":
                            idObject = this.treenode_deleted.Value.Split('_')[1];
                            listDoc  = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList <InstanceAccessDocument>();
                            UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                            this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
                            break;

                        case "nodeNo":
                            idObject = this.treenode_deleted.Value.Split('_')[1];
                            listDoc  = this.InstanceDocuments.Where(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject)).ToList <InstanceAccessDocument>();
                            UIManager.InstanceAccessManager.RemoveInstanceAccessDocuments(listDoc);
                            this.InstanceDocuments.RemoveAll(x => x.INFO_PROJECT != null && (x.INFO_PROJECT.ID_PROJECT == idObject || x.INFO_PROJECT.ID_FASCICOLO == idObject));
                            break;
                        }
                    }
                }
            }
            UIManager.InstanceAccessManager.UpdateInstanceAccessDocumentEnable(listDoc);
            if (listAtt != null && listAtt.Count() > 0)
            {
                UIManager.InstanceAccessManager.UpdateInstanceAccessAttachmentsEnable(listAtt);
            }
            DocsPaWR.InstanceAccess inst = UIManager.InstanceAccessManager.getInstanceAccessInSession();
            inst.DOCUMENTS = this.InstanceDocuments.ToArray <InstanceAccessDocument>();
            UIManager.InstanceAccessManager.setInstanceAccessInSession(inst);

            //ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "RefreshJsTree", "JsTree();", true);

            this.treenode_deleted.Value = string.Empty;
            this.upPnlButtons.Update();
        }