New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update required info field so it can capture required and optional information #725

Closed
buergermeister75 opened this Issue Jan 18, 2017 · 7 comments

Comments

Projects
None yet
4 participants
@buergermeister75

buergermeister75 commented Jan 18, 2017

Before the v2.x update the required info field captured both required and optional information for entries per the BJCP guidelines. We'd like to see a return to this functionality because having to turn on the brewer specifics functionality is causing a lot of issues for our competitions, especially our larger 800 entry one.

I realize that the current recommendation is to use the brewer specifics field to capture optional information but we're experiencing increased emails from confused entrants, as well as large volumes of useless information in the field from other entrants. Also for our competitions we don't share the brewer specifics information with the judges as it tends to slow down judging.

@geoffhumphrey

This comment has been minimized.

Show comment
Hide comment
@geoffhumphrey

geoffhumphrey Jan 19, 2017

Owner

Bruce (this is Bruce, right?), I wish I had a solid solution for both camps on this issue, but I've yet to come up with one. On one side we have organizers that don't wish to have any extraneous information input by users for any entry. They only want the essential, required information for those subcategories that require them. Then we have others that actively solicit this extra information, and wanted a venue to do that, but did not want it to be input in the same field as the required information.

The Brewer's Specifics field (an original feature of the codebase since it was part of the BJCP's Entry Recipe Form) seemed like the appropriate and logical method to capture this information, and it was "promoted" from way down in the recipe input section to its present location a few releases back and the entered information was added to pullsheet reports.

The Required Info field is a free-form text field on the front-end and a TEXT type field in the DB, so it is capable of storing up to 65,535 characters. More than enough for the purposes of capturing essential entry information for any subcategory that requires it. Pullsheets will reflect all the information entrants input into the field. The rub is bottle labels, which have a finite amount of space. Labels are why the field's character limit was implemented.

There a couple of ways I can think of to mitigate this using the currently available configuration settings and codebase...

  1. Allow more characters to be entered into the Required Info field via Admin > Preferences > Website Preferences. Again, the drawback is that the info input will be truncated to around 50 characters so it can fit on the Avery 5160 Required Info Bottle Labels.
  2. Customize the Brewer's Specifics label and accompanying information on the data entry form. This requires changing the $label_brewer_specifics and $brew_text_012 variables in the /lang/en/en-US.lang.php file to something more custom for your competition.

Otherwise, I'm kind of stumped as to how to address this in a programmatic way. I'm open to suggestions!

Owner

geoffhumphrey commented Jan 19, 2017

Bruce (this is Bruce, right?), I wish I had a solid solution for both camps on this issue, but I've yet to come up with one. On one side we have organizers that don't wish to have any extraneous information input by users for any entry. They only want the essential, required information for those subcategories that require them. Then we have others that actively solicit this extra information, and wanted a venue to do that, but did not want it to be input in the same field as the required information.

The Brewer's Specifics field (an original feature of the codebase since it was part of the BJCP's Entry Recipe Form) seemed like the appropriate and logical method to capture this information, and it was "promoted" from way down in the recipe input section to its present location a few releases back and the entered information was added to pullsheet reports.

The Required Info field is a free-form text field on the front-end and a TEXT type field in the DB, so it is capable of storing up to 65,535 characters. More than enough for the purposes of capturing essential entry information for any subcategory that requires it. Pullsheets will reflect all the information entrants input into the field. The rub is bottle labels, which have a finite amount of space. Labels are why the field's character limit was implemented.

There a couple of ways I can think of to mitigate this using the currently available configuration settings and codebase...

  1. Allow more characters to be entered into the Required Info field via Admin > Preferences > Website Preferences. Again, the drawback is that the info input will be truncated to around 50 characters so it can fit on the Avery 5160 Required Info Bottle Labels.
  2. Customize the Brewer's Specifics label and accompanying information on the data entry form. This requires changing the $label_brewer_specifics and $brew_text_012 variables in the /lang/en/en-US.lang.php file to something more custom for your competition.

Otherwise, I'm kind of stumped as to how to address this in a programmatic way. I'm open to suggestions!

@buergermeister75

This comment has been minimized.

Show comment
Hide comment
@buergermeister75

buergermeister75 Jan 19, 2017

Hi Geoff,

Yep it's Bruce. So are the folks that only want required info just want items stated as required in the BJCP guidelines or are they willing to accept items stated as optional in the guidelines as well in that field? I would think this camp would allow in that field what is stipulated by the guidelines so it can be applied to the label.

My suggestion would be for an enhancement going forward so the Required Info field is displayed and required for BJCP sub categories that state an entrant must declare something. Also the field is displayed but is optional for sub categories that state an entrant may declare something. Brewers Specifics can remain for those comps that would like to use it and the existing on / off functionality should remain.

Possible change would require the brewStyleReqSpec field on the Styles table to contain a 2 for subcategories where a brewer may declare something (i.e. rye in American Wheat, honey variety, apple variety, etc). If the brewer has selected a style with a 1 or 2 in brewStyleReqSpec then display the Required Info field. If brewStyleReqSpec = 1 the field is required, ifelse brewStyleReqSpec = 2 the field is optional. Also rename Required Info to Special Ingredients on the screen so it aligns with what's on the BJCP score sheet.

Granted website prefs > character limits for special ingredients would need to be set at 50 characters in order to get all the text on the label, but those comps who want to be able to capture more optional information can turn on the Brewer Specifics functionality or export the entries to a CSV file and make a dedicated label to special ingredients using a mail merge.

Sound good?

buergermeister75 commented Jan 19, 2017

Hi Geoff,

Yep it's Bruce. So are the folks that only want required info just want items stated as required in the BJCP guidelines or are they willing to accept items stated as optional in the guidelines as well in that field? I would think this camp would allow in that field what is stipulated by the guidelines so it can be applied to the label.

My suggestion would be for an enhancement going forward so the Required Info field is displayed and required for BJCP sub categories that state an entrant must declare something. Also the field is displayed but is optional for sub categories that state an entrant may declare something. Brewers Specifics can remain for those comps that would like to use it and the existing on / off functionality should remain.

Possible change would require the brewStyleReqSpec field on the Styles table to contain a 2 for subcategories where a brewer may declare something (i.e. rye in American Wheat, honey variety, apple variety, etc). If the brewer has selected a style with a 1 or 2 in brewStyleReqSpec then display the Required Info field. If brewStyleReqSpec = 1 the field is required, ifelse brewStyleReqSpec = 2 the field is optional. Also rename Required Info to Special Ingredients on the screen so it aligns with what's on the BJCP score sheet.

Granted website prefs > character limits for special ingredients would need to be set at 50 characters in order to get all the text on the label, but those comps who want to be able to capture more optional information can turn on the Brewer Specifics functionality or export the entries to a CSV file and make a dedicated label to special ingredients using a mail merge.

Sound good?

@geoffhumphrey

This comment has been minimized.

Show comment
Hide comment
@geoffhumphrey

geoffhumphrey Jan 19, 2017

Owner

OK, here's what I'm thinking...

There are some unused fields in the brewing table. One can be utilized as a Optional Info field that will be displayed for those subcategories that the BJCP states an entrant may declare something. Entry Instructions will populate as usual to provide guidance for entrants.

The BJCP2015 styles that would feature the new Optional Info field AND the Required Info/Special Ingredients field (please let me know if I missed any):

  • 21B Specialty IPA (only the catch-all category, not the pre-defined examples)
  • 28A Brett Beer
  • 30B Autumn Seasonal Beer
  • 33A Wood-Aged Beer
  • 33B Specialty Wood-Aged Beer
  • 34B Mixed-Style Beer
  • M2C Berry Mead
  • M2D Stone Fruit Mead
  • M2E Melomel
  • M3A Fruit and Spice Mead
  • M3B Spice, Herb, or Vegetable Mead
  • M4B Historical Mead
  • M4C Experimental Mead

The BJCP2015 styles that would feature the new Optional Info field ONLY (again, please let me know if I missed any):

  • 7C Kellerbier
  • M1A Dry Mead
  • M1B Semi-Sweet Mead
  • M1C Sweet Mead
  • M2A Cyser
  • M2B Pyment
  • M4A Braggot
  • C1B English Cider
  • C1C French Cider

Both fields would be subject to the Admin-defined character limit. Another "Optional Info" label report could also be made available. Similarly, the optional information would be reflected on pullsheets and other reports where appropriate.

Owner

geoffhumphrey commented Jan 19, 2017

OK, here's what I'm thinking...

There are some unused fields in the brewing table. One can be utilized as a Optional Info field that will be displayed for those subcategories that the BJCP states an entrant may declare something. Entry Instructions will populate as usual to provide guidance for entrants.

The BJCP2015 styles that would feature the new Optional Info field AND the Required Info/Special Ingredients field (please let me know if I missed any):

  • 21B Specialty IPA (only the catch-all category, not the pre-defined examples)
  • 28A Brett Beer
  • 30B Autumn Seasonal Beer
  • 33A Wood-Aged Beer
  • 33B Specialty Wood-Aged Beer
  • 34B Mixed-Style Beer
  • M2C Berry Mead
  • M2D Stone Fruit Mead
  • M2E Melomel
  • M3A Fruit and Spice Mead
  • M3B Spice, Herb, or Vegetable Mead
  • M4B Historical Mead
  • M4C Experimental Mead

The BJCP2015 styles that would feature the new Optional Info field ONLY (again, please let me know if I missed any):

  • 7C Kellerbier
  • M1A Dry Mead
  • M1B Semi-Sweet Mead
  • M1C Sweet Mead
  • M2A Cyser
  • M2B Pyment
  • M4A Braggot
  • C1B English Cider
  • C1C French Cider

Both fields would be subject to the Admin-defined character limit. Another "Optional Info" label report could also be made available. Similarly, the optional information would be reflected on pullsheets and other reports where appropriate.

@medirckx

This comment has been minimized.

Show comment
Hide comment
@medirckx

medirckx Apr 9, 2017

Hi, in a similar vein, I had an entrant request a way to add the base beer style for M4A Braggot. Currently there is no text field (required or optional) entry for this style without enabling the brewer's specifics section. I'd also like the feature you described (optional entry field for certain categories). Thanks

medirckx commented Apr 9, 2017

Hi, in a similar vein, I had an entrant request a way to add the base beer style for M4A Braggot. Currently there is no text field (required or optional) entry for this style without enabling the brewer's specifics section. I'd also like the feature you described (optional entry field for certain categories). Thanks

@buergermeister75

This comment has been minimized.

Show comment
Hide comment
@buergermeister75

buergermeister75 May 30, 2017

Geoff,

One thing to consider with this one. Just have the Optional categories trigger the Required Info/Special Ingredients field and put some instructions on the screen to the entrant telling them to put NA if they have nothing to declare. That shows that they had the chance and enter something but willingly declined to do so, and it avoids having to code extra functionality.

Bruce

buergermeister75 commented May 30, 2017

Geoff,

One thing to consider with this one. Just have the Optional categories trigger the Required Info/Special Ingredients field and put some instructions on the screen to the entrant telling them to put NA if they have nothing to declare. That shows that they had the chance and enter something but willingly declined to do so, and it avoids having to code extra functionality.

Bruce

geoffhumphrey added a commit that referenced this issue Jun 20, 2017

@ercousin

This comment has been minimized.

Show comment
Hide comment
@ercousin

ercousin Jul 5, 2017

Just trying to understand the issue here, seems like the "entrant may declare" language is very limited in the 2015 guidelines, compared to 2008. Is this mostly an issue with Cider/Mead, more than Beer?

Comment 1:

I see that Kellerbier entry has an issue with how it works right now (if you don't enable Brewer's Specifics), compared to the guidelines language:
Entry Instructions: The entrant must specify whether the entry is a Pale Kellerbier (based on Helles) or an Amber Kellerbier (based on Märzen). The entrant may specify another type of Kellerbier based on other base styles such as Pils, Bock, Schwarzbier, but should supply a style description for judges.

How it works in 2.1.9:
image

Seems that for this one, we should just have 3 choices in radio buttons:
*Pale, *Amber/Dark, *Other (Specify Base Style Below)

Then have the "Required Info" field show up if they pick other.

Comment 2:

I saw Bruce mentioned Rye in American Wheat, but that should go in Alternative Fermentables, not 1D American Wheat:
"American rye beers should be entered in the Alternative Fermentables specialty category."

Comment 3:

I didn't see 27 Historical mentioned in the previous conversation, but I think it's already covered similar to 21B Specialty IPA, since "Required Info" field comes up already:
"In the case of a style that has changed substantially over the years (such as Porter or Stout), the entrant may specify an existing BJCP style as well as an era (e.g., 1820 English Porter)."

ercousin commented Jul 5, 2017

Just trying to understand the issue here, seems like the "entrant may declare" language is very limited in the 2015 guidelines, compared to 2008. Is this mostly an issue with Cider/Mead, more than Beer?

Comment 1:

I see that Kellerbier entry has an issue with how it works right now (if you don't enable Brewer's Specifics), compared to the guidelines language:
Entry Instructions: The entrant must specify whether the entry is a Pale Kellerbier (based on Helles) or an Amber Kellerbier (based on Märzen). The entrant may specify another type of Kellerbier based on other base styles such as Pils, Bock, Schwarzbier, but should supply a style description for judges.

How it works in 2.1.9:
image

Seems that for this one, we should just have 3 choices in radio buttons:
*Pale, *Amber/Dark, *Other (Specify Base Style Below)

Then have the "Required Info" field show up if they pick other.

Comment 2:

I saw Bruce mentioned Rye in American Wheat, but that should go in Alternative Fermentables, not 1D American Wheat:
"American rye beers should be entered in the Alternative Fermentables specialty category."

Comment 3:

I didn't see 27 Historical mentioned in the previous conversation, but I think it's already covered similar to 21B Specialty IPA, since "Required Info" field comes up already:
"In the case of a style that has changed substantially over the years (such as Porter or Stout), the entrant may specify an existing BJCP style as well as an era (e.g., 1820 English Porter)."

@ercousin

This comment has been minimized.

Show comment
Hide comment
@ercousin

ercousin Jul 5, 2017

I don't see a reason for 30B to have the optional field, there is no "MAY" in the entry info.

Why does this have to be a separate field? Participants should be able to fit any mandatory and optional info within 50 characters, otherwise we'll have to start printing an additional set of bottle labels for this optional field too, and the sorting process will be increasingly complicated.

Why can't the optional info just be entered in the required info box? All it would take would be some conditional logic to make the submitting the entry with that box empty allowed for:
M1A Dry Mead
M1B Semi-Sweet Mead
M1C Sweet Mead
M2A Cyser
M2B Pyment
M4A Braggot
C1B English Cider
C1C French Cider

(stole this list from your "optional only" list above, minus Kellerbier as described above)

If the name "required info" is confusing because it can sometimes be optional, it could just be renamed to "Entry Info".

If we give another field with 50 char limit, novice entrants that are running up against the 50 char limit in required info, will abuse the optional field to fit more info in.

ercousin commented Jul 5, 2017

I don't see a reason for 30B to have the optional field, there is no "MAY" in the entry info.

Why does this have to be a separate field? Participants should be able to fit any mandatory and optional info within 50 characters, otherwise we'll have to start printing an additional set of bottle labels for this optional field too, and the sorting process will be increasingly complicated.

Why can't the optional info just be entered in the required info box? All it would take would be some conditional logic to make the submitting the entry with that box empty allowed for:
M1A Dry Mead
M1B Semi-Sweet Mead
M1C Sweet Mead
M2A Cyser
M2B Pyment
M4A Braggot
C1B English Cider
C1C French Cider

(stole this list from your "optional only" list above, minus Kellerbier as described above)

If the name "required info" is confusing because it can sometimes be optional, it could just be renamed to "Entry Info".

If we give another field with 50 char limit, novice entrants that are running up against the 50 char limit in required info, will abuse the optional field to fit more info in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment