Esempio n. 1
0
                public int Compare(object a, object b)
                {
                    if (!(a is Contributer) || !(b is Contributer))
                    {
                        return(0);
                    }
                    Contributer contributera = (Contributer)a;
                    Contributer contributerb = (Contributer)b;

                    if (contributera.Amount > contributerb.Amount)
                    {
                        return(-1);
                    }
                    else if (contributera.Amount < contributerb.Amount)
                    {
                        return(1);
                    }
                    else if (contributera.Date > contributerb.Date)
                    {
                        return(-1);
                    }
                    else if (contributera.Date < contributerb.Date)
                    {
                        return(1);
                    }
                    else
                    {
                        return(0);
                    }
                }
Esempio n. 2
0
            public ContributersGump(FundRaiser raiser, Mobile from) : base(30, 30)
            {
                m_FundRaiser = raiser;
                m_Mobile     = from;

                AddPage(0);
                AddBackground(0, 0, 250, 360, 9270);
                AddAlphaRegion(0, 0, 250, 360);

                m_FundRaiser.Contributers.Sort(new ContributionComparer());

                AddLabel(50, 10, 2401, String.Format("Top {0} Contributors", m_FundRaiser.Contributers.Count > 20 ? 20 : m_FundRaiser.Contributers.Count));

                for (int i = 0; i < m_FundRaiser.Contributers.Count && i < 20; i++)
                {
                    Contributer contributer = (Contributer)m_FundRaiser.Contributers[i];
                    AddLabel(30, 30 + i * 15, 2401, (i + 1).ToString());
                    AddLabel(50, 30 + i * 15, 2401, contributer.Mobile.Name);
                    AddLabel(170, 30 + i * 15, 2401, contributer.Amount.ToString());
                }

                if (m_Mobile.AccessLevel >= AccessLevel.GameMaster)
                {
                    AddLabel(280, 10, 2401, "Clear");
                    AddButton(250, 10, 4023, 4024, 1, GumpButtonType.Reply, 0);
                    AddLabel(280, 30, 2401, "Full List");
                    AddButton(250, 30, 4023, 4024, 2, GumpButtonType.Reply, 0);
                }
            }
Esempio n. 3
0
        /**
         * Select contributers for update json or insert json whether change is true
         *
         **/
        public void selectContribs()
        {
            if (change == "true")
            {
                select = new SqlCommand(" SELECT * FROM Contributers WHERE changeTime > @lastUpdated", con);
            }
            else
            {
                select = new SqlCommand(" SELECT * FROM Contributers WHERE updateTime > @lastUpdated", con);
            }

            select.Parameters.AddWithValue("@lastUpdated", lastUpdated);
            con.Open();
            Contributers contributers = new Contributers();

            contributers.Contributer = new List <Contributer>();
            var reader = select.ExecuteReader();

            //Gets contributer info to place in a json
            while (reader.Read())
            {
                Contributer contrib = new Contributer();
                contrib.email    = (string)reader["usersId"];
                contrib.progress = (string)reader["progress"];
                selectContribBook(reader, contrib, contributers.Contributer);
            }
            con.Close();

            //Creates json of contributers, serializes and writes
            string json = js.Serialize(contributers);

            Response.Write(json);
        }
Esempio n. 4
0
            public ContributersStaffGump(ArrayList contributers, int page)
                : base(500, 30)
            {
                m_Page         = page;
                m_Contributers = contributers;

                AddImageTiled(0, 0, 300, 425, 0xA40);
                AddAlphaRegion(1, 1, 298, 423);

                AddHtml(10, 10, 280, 20, "<basefont color=#A0A0FF><center>Fund Raiser [Staff View]</center></basefont>", false, false);

                int lastPage = (m_Contributers.Count - 1) / MaxEntriesPerPage;

                string sLog;

                if (page < 0 || page > lastPage)
                {
                    sLog = "";
                }
                else
                {
                    int max = m_Contributers.Count - (lastPage - page) * MaxEntriesPerPage;
                    int min = Math.Max(max - MaxEntriesPerPage, 0);

                    StringBuilder builder = new StringBuilder();

                    for (int i = min; i < max; i++)
                    {
                        Contributer contributer = contributers[i] as Contributer;

                        if (contributer != null && contributer.Mobile != null && contributer.Mobile.Account != null)
                        {
                            if (i != min)
                            {
                                builder.Append("<br>");
                            }
                            builder.AppendFormat("{0} (<i>{1}</i>): {2}", contributer.Mobile.Name, contributer.Mobile.Account, contributer.Amount);
                        }
                    }

                    sLog = builder.ToString();
                }

                AddHtml(10, 40, 280, 350, sLog, false, true);

                if (page > 0)
                {
                    AddButton(10, 395, 0xFAE, 0xFB0, 1, GumpButtonType.Reply, 0); // Previous page
                }
                AddLabel(45, 395, 0x481, String.Format("Current page: {0}/{1}", page + 1, lastPage + 1));

                if (page < lastPage)
                {
                    AddButton(261, 395, 0xFA5, 0xFA7, 2, GumpButtonType.Reply, 0); // Next page
                }
            }
        public async Task <IActionResult> Save([FromBody] Contributer contributer)
        {
            var t1 = Task.Run(() =>
            {
                return(_repository.Save(contributer));
            });
            await t1;

            return(Ok(t1.Result));
        }
Esempio n. 6
0
        /**
         * Selects cookbook unique id which is associated with contributer
         *
         **/
        public void selectContribBook(SqlDataReader reader, Contributer contrib, List <Contributer> contribs)
        {
            SqlCommand selectbook = new SqlCommand(" SELECT uniqueid FROM Cookbook WHERE id=@id", con);

            selectbook.Parameters.AddWithValue("@id", (Int32)reader["Cookbookid"]);
            var reader2 = selectbook.ExecuteReader();

            while (reader2.Read())
            {
                contrib.bookid = (string)reader2["uniqueid"];
            }
            contribs.Add(contrib);
        }
Esempio n. 7
0
        public IActionResult History(int contributerId)
        {
            HistoryViewModel   vm = new HistoryViewModel();
            DbManager          db = new DbManager(_connectionString);
            List <Contributer> contributerList    = db.GetContributers();
            Contributer        currentContributer = contributerList.FirstOrDefault(c => c.Id == contributerId);

            vm.Contributer = currentContributer;
            List <Transaction> contribs = db.GetContributions();

            List <Transaction> currents = contribs.Where(c => c.ContributerId == contributerId).ToList();

            vm.Simcha = db.GetAllSimchos();

            vm.Contributions = currents;
            return(View(vm));
        }
Esempio n. 8
0
        /// <summary>
        /// Loads the tag from the GitObjectReader
        /// </summary>
        /// <param name="input">A reader with inflated tag contents</param>
        public void Deserialize(GitObjectReader input)
        {
            string sha;

            if (Utility.IsValidSHA(input.GetString(20), out sha))
            {             // Tag contains a regular SHA so we can assume it's an IStorableObject
                Object = Repo.Storage.GetObject(sha);
                return;
            }
            else
            {
                input.Rewind();

                // Skip header
                input.ReadToNull();

                // Skip object keyword
                input.ReadWord();

                TaggedObjectSHA = input.ReadLine().GetString().Trim();
                if (!Utility.IsValidSHA(TaggedObjectSHA))
                {
                    throw new ParseException("Invalid sha from tag content");
                }

                // Load object; a ParseException will be thrown for unknown types
                Object = Repo.Storage.GetObject(TaggedObjectSHA);

                // Skip type and tag
                input.ReadLine(); input.ReadLine();

                // Tagger
                input.ReadWord();
                string taggerLine = input.ReadLine().GetString();
                TagDate = Utility.StripDate(taggerLine, out taggerLine);
                Tagger  = Contributer.Parse(taggerLine);

                //Skip extra '\n' and read message
                input.ReadBytes(1);
                Message = input.ReadToEnd().GetString().TrimEnd();
            }
        }
Esempio n. 9
0
        /// <summary>
        /// Loads the commit from the GitObjectReader
        /// </summary>
        /// <param name="input">A reader with inflated commit contents</param>
        public override void Deserialize(GitObjectReader input)
        {
            //Skip 'tree' at beginning of line and read tree sha
            input.ReadWord();
            _treeSha = input.ReadLine().GetString();


            // Check for 'parent' at beginning of line
            _parentShas = new List <string>();
            string parentOrAuthor = input.ReadWord().GetString();

            // TODO: Make recursive
            while (parentOrAuthor == "parent")
            {
                _parentShas.Add(input.GetString(40));
                input.Position++;

                // Skip 'author'
                parentOrAuthor = input.ReadWord().GetString();
            }

            // Author
            string authorLine = input.ReadLine().GetString();

            AuthoredDate = Utility.StripDate(authorLine, out authorLine);
            Author       = Contributer.Parse(authorLine);

            // Committer
            input.ReadWord();
            string committerLine = input.ReadLine().GetString();

            CommittedDate = Utility.StripDate(committerLine, out committerLine);
            Committer     = Contributer.Parse(committerLine);

            //Skip extra '\n'
            input.Position++;
            Message = input.ReadToEnd().GetString().TrimEnd();
        }
Esempio n. 10
0
        private void LoadEpubMetaDataFromOpfFile(string opfFilePath)
        {
            ZipEntry zipEntry = _EpubFile.GetEntry(opfFilePath);

            if (zipEntry == null)
            {
                throw new Exception("Invalid epub file.");
            }

            XElement contentOpf;

            using (Stream zipStream = _EpubFile.GetInputStream(zipEntry))
            {
                using (MemoryStream memoryStream = new MemoryStream())
                {
                    byte[] buffer = new byte[4096]; // 4K is optimum
                    StreamUtils.Copy(zipStream, memoryStream, buffer);
                    memoryStream.Position = 0;
                    contentOpf            = XElement.Load(memoryStream);
                }
            }

            XNamespace xNamespace = contentOpf.Attribute("xmlns") != null
                ? contentOpf.Attribute("xmlns").Value
                : XNamespace.None;

            string uniqueIdentifier = contentOpf.Attribute("unique-identifier").Value;

            UUID = contentOpf.Elements(xNamespace + "metadata").Elements()
                   .FirstOrDefault(e =>
                                   e.Name.LocalName == "identifier" &&
                                   e.HasAttributes &&
                                   e.Attribute("id") != null &&
                                   e.Attribute("id").Value == uniqueIdentifier
                                   ).Value;
            foreach (
                var metadataElement in
                contentOpf.Element(xNamespace + "metadata").Elements().Where(e => e.Value.Trim() != string.Empty))
            {
                switch (metadataElement.Name.LocalName)
                {
                case "title":
                    Title.Add(metadataElement.Value);
                    break;

                case "creator":
                    Creator.Add(metadataElement.Value);
                    break;

                case "date":
                    var attribute = metadataElement.Attributes().FirstOrDefault(a => a.Name.LocalName == "event");
                    if (attribute != null)
                    {
                        Date.Add(new DateData(attribute.Value, metadataElement.Value));
                    }
                    break;

                case "publisher":
                    Publisher.Add(metadataElement.Value);
                    break;

                case "subject":
                    Subject.Add(metadataElement.Value);
                    break;

                case "source":
                    Source.Add(metadataElement.Value);
                    break;

                case "rights":
                    Rights.Add(metadataElement.Value);
                    break;

                case "description":
                    Description.Add(metadataElement.Value);
                    break;

                case "contributor":
                    Contributer.Add(metadataElement.Value);
                    break;

                case "type":
                    Type.Add(metadataElement.Value);
                    break;

                case "format":
                    Format.Add(metadataElement.Value);
                    break;

                case "identifier":
                    ID.Add(metadataElement.Value);
                    break;

                case "language":
                    Language.Add(metadataElement.Value);
                    break;

                case "relation":
                    Relation.Add(metadataElement.Value);
                    break;

                case "coverage":
                    Coverage.Add(metadataElement.Value);
                    break;
                }
            }

            LoadManifestSectionFromOpfFile(contentOpf, xNamespace);
        }
Esempio n. 11
0
        /// <summary>
        /// Loads the tag from the GitObjectReader
        /// </summary>
        /// <param name="input">A reader with inflated tag contents</param>
        public void Deserialize(GitObjectReader input)
        {
            string sha;
              if (Utility.IsValidSHA(input.GetString(20), out sha))
              { // Tag contains a regular SHA so we can assume it's an IStorableObject
            Object = Repo.Storage.GetObject(sha);
            return;
              }
              else
              {
            input.Rewind();

            // Skip object keyword
            input.ReadWord();

            TaggedObjectSHA = input.ReadLine().Trim();
            if (!Utility.IsValidSHA(TaggedObjectSHA))
              throw new ParseException("Invalid sha from tag content");

            // Load object; a ParseException will be thrown for unknown types
            Object = Repo.Storage.GetObject(TaggedObjectSHA);

            // Skip type and tag
            input.ReadLine(); input.ReadLine();

            // Tagger
            input.ReadWord();
            string taggerLine = input.ReadLine();
            TagDate = Utility.StripDate(taggerLine, out taggerLine);
            Tagger = Contributer.Parse(taggerLine);

            //Skip extra '\n' and read message
            input.ReadBytes(1);
            Message = input.ReadToEnd().GetString().TrimEnd();

              }
        }
Esempio n. 12
0
        private void LoadEpubMetaDataFromOpfFile(string opfFilePath)
        {
            ZipEntry zipEntry = _EpubFile.Entries.FirstOrDefault(e => e.FileName.Equals(opfFilePath, StringComparison.InvariantCultureIgnoreCase));

            if (zipEntry == null)
            {
                throw new Exception("Invalid epub file.");
            }

            XElement contentOpf;

            using (MemoryStream memoryStream = new MemoryStream())
            {
                zipEntry.Extract(memoryStream);
                // Fix buggy "<?xml verison="1.1"?>
                // See http://stackoverflow.com/questions/912440/xdocument-cant-load-xml-with-version-1-1-in-c-sharp-linq
                byte[] b = memoryStream.ToArray();
                for (int i = 0; i < 50; i++)
                {
                    // Check for version="1.1" and replace if found
                    if (b[i] == 0x76 && b[i + 1] == 0x65 && b[i + 2] == 0x72 && b[i + 3] == 0x73 && b[i + 4] == 0x69 && b[i + 5] == 0x6F && b[i + 6] == 0x6E &&
                        b[i + 7] == 0x3D && b[i + 8] == 0x22 && b[i + 9] == 0x31 && b[i + 10] == 0x2E && b[i + 11] == 0x31)
                    {
                        b[i + 11] = 0x30;
                    }
                }
                using (MemoryStream fixedStream = new MemoryStream(b))
                {
                    contentOpf = XElement.Load(fixedStream);
                }
                b = null;
            }

            XNamespace xNamespace = contentOpf.Attribute("xmlns") != null?contentOpf.Attribute("xmlns").Value : XNamespace.None;

            string uniqueIdentifier = contentOpf.Attribute("unique-identifier").Value;

            try { UUID = contentOpf.Elements(xNamespace + "metadata").Elements().FirstOrDefault(e => e.Name.LocalName == "identifier" && e.Attributes("id").FirstOrDefault() != null && e.Attribute("id").Value == uniqueIdentifier).Value; }
            catch { }
            foreach (var metadataElement in contentOpf.Elements(xNamespace + "metadata").Elements().Where(e => e.Value.Trim() != string.Empty))
            {
                switch (metadataElement.Name.LocalName)
                {
                case "title": Title.Add(metadataElement.Value); break;

                case "creator": Creator.Add(metadataElement.Value); break;

                case "date":
                    var attribute = metadataElement.Attributes().FirstOrDefault(a => a.Name.LocalName == "event");
                    if (attribute != null)
                    {
                        Date.Add(new DateData(attribute.Value, metadataElement.Value));
                    }
                    break;

                case "publisher": Publisher.Add(metadataElement.Value); break;

                case "subject": Subject.Add(metadataElement.Value); break;

                case "source": Source.Add(metadataElement.Value); break;

                case "rights": Rights.Add(metadataElement.Value); break;

                case "description": Description.Add(metadataElement.Value); break;

                case "contributor": Contributer.Add(metadataElement.Value); break;

                case "type": Type.Add(metadataElement.Value); break;

                case "format": Format.Add(metadataElement.Value); break;

                case "identifier": ID.Add(metadataElement.Value); break;

                case "language": Language.Add(metadataElement.Value); break;

                case "relation": Relation.Add(metadataElement.Value); break;

                case "coverage": Coverage.Add(metadataElement.Value); break;
                }
            }

            LoadManifestSectionFromOpfFile(contentOpf, xNamespace);
        }
Esempio n. 13
0
        private void LoadEpubMetaDataFromOpfFile(string opfFilePath)
        {
            ZipEntry zipEntry = _EpubFile.Entries.FirstOrDefault(e => e.FileName.Equals(opfFilePath, StringComparison.InvariantCultureIgnoreCase));

            if (zipEntry == null)
            {
                throw new Exception("Invalid epub file.");
            }

            XElement contentOpf;

            using (MemoryStream memoryStream = new MemoryStream()) {
                zipEntry.Extract(memoryStream);
                memoryStream.Position = 0;
                contentOpf            = XElement.Load(memoryStream);
            }

            XNamespace xNamespace = contentOpf.Attribute("xmlns") != null?contentOpf.Attribute("xmlns").Value : XNamespace.None;

            string uniqueIdentifier = contentOpf.Attribute("unique-identifier").Value;

            try
            {
                UUID = contentOpf.Elements(xNamespace + "metadata").Elements().FirstOrDefault(e => e.Name.LocalName == "identifier" && e.Attribute("id").Value == uniqueIdentifier).Value;
            }
            catch { }
            foreach (var metadataElement in contentOpf.Elements(xNamespace + "metadata").Elements().Where(e => e.Value.Trim() != string.Empty))
            {
                switch (metadataElement.Name.LocalName)
                {
                case "title": Title.Add(metadataElement.Value); break;

                case "creator": Creator.Add(metadataElement.Value); break;

                case "date":
                    var attribute = metadataElement.Attributes().FirstOrDefault(a => a.Name.LocalName == "event");
                    if (attribute != null)
                    {
                        Date.Add(new DateData(attribute.Value, metadataElement.Value));
                    }
                    break;

                case "publisher": Publisher.Add(metadataElement.Value); break;

                case "subject": Subject.Add(metadataElement.Value); break;

                case "source": Source.Add(metadataElement.Value); break;

                case "rights": Rights.Add(metadataElement.Value); break;

                case "description": Description.Add(metadataElement.Value); break;

                case "contributor": Contributer.Add(metadataElement.Value); break;

                case "type": Type.Add(metadataElement.Value); break;

                case "format": Format.Add(metadataElement.Value); break;

                case "identifier": ID.Add(metadataElement.Value); break;

                case "language": Language.Add(metadataElement.Value); break;

                case "relation": Relation.Add(metadataElement.Value); break;

                case "coverage": Coverage.Add(metadataElement.Value); break;
                }
            }

            LoadManifestSectionFromOpfFile(contentOpf, xNamespace);
        }