| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Currently a work in progress. The queries used to display the Pokémon for each species are very inefficient. The text at the top of the page is also very specific to the author.
|
|
|
|
|
|
|
|
| |
This removes the need to use a GROUP or DISTINCT in eager-loading Pokémon on the front page. It duplicates data, but provisions are in place to keep the cache up-to-date. When a Pokémon record is updated, it is required that its cache points to the current revision. When a revision is created, it updates the Pokémon's cache to point to it, because a new revision will always be the most recent one, and it is impossible to reorder revisions.
This does not affect the number of queries used on the front page (see #1).
refs #4
|
|
|
|
| |
Apparently the choice of row to be returned with a GROUP that uses fields outside of ones that are functionally dependent on the GROUP fields is arbitrary, as per https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.html
|
|
|
|
| |
A bug was causing a Vigoroth which had evolved into a Slaking to still show up as a Vigoroth on the front page of the engine, even though it showed up properly on its show page. This was deemed to be caused by eager loading.
|
|
|
|
|
|
|
|
| |
The migration will set all of the revisions of each Pokémon to have the species that that Pokémon was set to. If reversed, the migration sets the Pokémon's species to the first revision's species, which mimics the behavior of the engine from before this change, but do note that running the migration backwards like this can lose data.
This change slightly affects the loading time of the front page. See #2.
refs #3
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
MySQL seems to choke on the previous way that the hold_item column
became the item_id column; since this is an old migration and would only
be run retroactively anyway, we can change this to just dropping the
hold_item column and adding the item_id column.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Pokeviewer now expects the main app's ApplicationController to contain a
method called "authenticate_pokeviewer" which will return true iff the
username and token passed to it are valid. An example stub is present in
the test dummy ApplicationController.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new design is heavily inspired by the status screen from Diamond &
Pearl. It's not entirely done yet, with notable missing features
including sheen and gender. However, it would also be nice to show a
star for shiny Pokémon, Pokérus status, possibly a mention as to what
game the Pokémon is currently in, and descriptive hover bubbles for
moves. It is also notable that currently, as ribbons are located all the
way to the right, their hover bubbles usually go off screen.
The list of Pokémon page has not been redesigned, and the main layout is
still bare.
|
|
|
|
|
|
|
| |
The data that was used to generate the database seed was accurate to
generation VII, and thus listed Gengar as having the ability Cursed
Body, since it was changed to have that ability in gen VII. This caused
a validation to fail, and Gengar would not be added to the database.
|
| |
|
|
|
|
|
|
| |
Some moves have changed names in later gens, and those changed names
were present in the database seeds, so they were changed to be accurate
to gen 3.
|
|
|
|
| |
Also fixed a bug with viewing Pokémon that aren't in any game.
|
|
|
|
|
|
| |
Pokémon from Orre now display "Met in a trade" instead of an entirely
incorrect met location, because we're not currently equipped to display
the proper met data for them (see hatkirby/gen3uploader#6).
|
|
|
|
|
|
|
|
|
|
|
| |
Reduced the number of queries that the front page runs to 2 queries
total: one to get trainer data, and one to get the Pokémon. The latter
query selects only the necessary columns, notably ignoring basically
everything from the revisions join other than the nickname of the most
recent revision. The controller then does the work of chunking the
Pokémon into party/boxes, and then into trainers/unaccounted.
refs #2
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seemed kind of strange to have a model that there should always be
exactly 14 of for each of the parent (Trainer) model instances, so the
box names were moved into the Trainer model, and the Box model was
removed.
This commit also adds some eager loading to speed up page loading times.
Also made a small change to the way the gift ribbons are extracted.
refs #2
|
| |
|
|
|
|
|
|
|
| |
It was a little annoying that the animated sprites for Pokémon in
Emerald would infinitely loop without much delay between the loops, so
the GIFs were edited such that they only play once, and some JavaScript
was added such that mousing over the sprite makes it play again.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
An items model was created, but the seed only contains items that can be
held, which excludes key items and HMs. Berry Juice, while unobtainable,
is still included. The item model contains three description fields: one
for Ruby/Sapphire, one for FireRed/LeafGreen, and one for Emerald. This
is because the descriptions for items are different between the games.
In a lot of cases, the Emerald description is the same as the
Ruby/Sapphire one, so in those cases, the Emerald description is nil.
The purpose of having the different descriptions is so that when a
Pokémon holds an item, the website can display the description that is
accurate to the game that that Pokémon is currently in.
In order to fully support TMs, the move model was improved to
additionally contain type and also the three description fields which
operate similarly to those of the item model. For TMs, the description
fields on the item are usually nil. However, some TMs in Ruby/Sapphire,
as well as Emerald, have different descriptions than the moves that
they correspond with. In these cases, those descriptions are in the item
model, and override the move descriptions when the move is looked at as
a TM.
|
|
|
|
|
|
| |
This is basically just for completeness because it is unknown whether
gift ribbons other than the National Ribbon and Earth Ribbon from
Pokémon Colosseum were ever distributed.
|
|
|
|
|
|
| |
Gift ribbons currently partially work: the correct ribbon image and name
is shown, but the ribbon description is not yet extracted from the game
and thus is just blank.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Still a very early design
Also, for Pokémon that have Natures that don't benefit and hinder the
same stat, there is now a + next to the stat that the Nature benefits,
and a - next to the stat it hinders.
|
| |
|
|
|
|
|
| |
Note that the met location for Pokémon from Orre is completely
incorrect.
|
| |
|
| |
|
| |
|
| |
|
| |
|