Ejemplo n.º 1
0
        protected void LogConsulterArchive(object sender, EventArgs e)
        {
            bool           connError             = false;
            string         identifier            = arrayDropZoneHidden.Value;
            Array          identifierArr         = identifier.Split(',');
            List <LogsPal> arrLogsPal            = new List <LogsPal>();
            List <string>  alreadyRequestedCotes = new List <string>();
            bool           firstCycle            = true;

            foreach (string id in identifierArr)
            {
                if (firstCycle)
                {
                    _idGroup   = id;
                    firstCycle = false;
                }
                if (DataSql.CheckIfCoteHasAlreadyBeenRequested(id).IsNullOrWhiteSpace())
                {
                    arrLogsPal.Add(DataSql.GetIndividualArchive(id, _idGroup));
                }
                else
                {
                    alreadyRequestedCotes.Add(id);
                    _requestStatus = false;
                }
            }

            foreach (LogsPal itemLogsPal in arrLogsPal)
            {
                LogsPal.RequestArchive(itemLogsPal);
            }

            // Connect to the Database

            /* LogsPal individualRow = DataSql.GetIndividualArchive(identifier);
             * bool requestSuccessful = LogsPal.RequestArchive(individualRow);
             */
            if (_requestStatus)
            {
                _requestStatusText            = "La demande de retrait de l'archive s'est déroulée avec succès, l'archiviste vous tiendra au courant des prochaines étapes.";
                alertRequestSuccess.Visible   = true;
                alertAlreadyRequested.Visible = false;
                alertSuccessText.InnerHtml    = _requestStatusText;
            }
            // Legacy code, should be deleted when done.
            else if (connError)
            {
                _requestStatusText            = "Merci de vous connecter";
                alertRequestSuccess.Visible   = false;
                alertAlreadyRequested.Visible = true;
                alertRequestedText.InnerText  = _requestStatusText;
            }
            else
            {
                // Throw an error if a request for an Archive already exists
                _requestStatusText =
                    "Une ou plusieurs références demandées n'existent plus dans l'archive, <br />" +
                    "ou une personne a déjà demandé son retrait de l'archive. <br/>" +
                    "<p class=\"text-danger\" >Ces côtes n'ont pas été ajoutées : " + string.Join(" / ", alreadyRequestedCotes) + "</p>";
                alertRequestSuccess.Visible   = false;
                alertAlreadyRequested.Visible = true;
                alertRequestedText.InnerHtml  = _requestStatusText;
            }
            // If request is allowed (not yet requested), we target Table and insert elements to it.
        }