Compare commits

..
1766 Commits
Author SHA1 Message Date
pozorvlak e95566ed48 Merge pull request #1052 from Growstuff/dev
Release 15
2016-11-24 18:30:36 +00:00
Daniel O'Connor 916fd73071 Merge pull request #1065 from Br3nda/bw/removed-some-duplication
Reduced code duplication in growstuff.rake
2016-11-23 18:11:34 +10:30
Brenda Wallace 18a8d6c5bf Re-instate usage info when args not as expected 2016-11-23 20:38:46 +13:00
Brenda Wallace 37d01e831f Reduced code duplication in growstuff.rake 2016-11-23 20:27:20 +13:00
Mackenzie 6a8b604554 Merge pull request #1063 from Br3nda/use_phantomjs_211_in_travis
Use phantomjs 211 in travis
2016-11-19 23:57:25 -05:00
Miles Gould 2fa282e131 Install PhantomJS 2.1.1 on Travis-CI
I've found it to be much more stable locally - hopefully it will help
with our flaky CI issues (#901).

Code mostly cargo-culted from
https://github.com/mitchlloyd/ember-orbit/commit/9d3afe3d0434d9e3572e018d65ea96857fe5fa25
2016-11-20 17:22:05 +13:00
pozorvlak 7355061762 Merge pull request #1060 from Br3nda/bw/covert-tabs-to-spaces
Covert all tabs to spaces
2016-11-18 13:39:35 +00:00
Brenda Wallace 5e0cff5b8e Merge remote-tracking branch 'upstream/dev' into bw/covert-tabs-to-spaces
Conflicts:
	app/helpers/seeds_helper.rb
	spec/support/controller_macros.rb
2016-11-17 19:04:44 +13:00
Daniel O'Connor b3ae03ab7e Merge pull request #1059 from Br3nda/bw/trailing-whitespace-begone
Removed all trailing white space
2016-11-16 14:34:49 +10:30
Brenda Wallace 5ec2877577 Covert all tabs to spaces 2016-11-16 13:18:26 +13:00
Brenda Wallace e182247774 Removed the ignores for trailing whitespace 2016-11-16 13:09:04 +13:00
Brenda Wallace 6bd9bd98d9 Removed extra blank lines, & added a end of file 2016-11-16 12:52:48 +13:00
Brenda Wallace 0475954acf Removed extra blank lines 2016-11-16 12:50:14 +13:00
Brenda Wallace 0d371593fb Merge remote-tracking branch 'upstream/dev' into bw/trailing-whitespace-begone 2016-11-15 03:25:14 +00:00
Daniel O'Connor a6ef100e02 Merge pull request #1058 from Br3nda/bw/wiki-link-text-dupe
Removed duplicate wiki_linktext
2016-11-14 18:20:17 +10:30
Mackenzie adc34b76da Merge pull request #1055 from Br3nda/bw/rubocop-ci
Add rubocop to travis ci
2016-11-13 23:10:00 -05:00
Brenda Wallace a91c785543 Moved metrics placeholders to main rubocop.yml file 2016-11-14 16:51:17 +13:00
Brenda Wallace 1cac58dadc Allow both " and ' quote styles 2016-11-14 16:49:26 +13:00
Brenda Wallace 510c31f669 Removed 3 blank lines that codeclimate didn't like 2016-11-14 15:10:13 +13:00
Brenda Wallace bdb057ca0f Removed all trailing white space 2016-11-14 15:05:32 +13:00
Brenda Wallace dc5d7a8677 Removed duplicate wiki_linktext 2016-11-14 14:30:45 +13:00
Brenda Wallace 1fc1c64f62 Ignore rubocop_todo filename in code climate 2016-11-13 17:42:35 +13:00
Brenda Wallace d49f33476d Merge remote-tracking branch 'upstream/dev' into bw/rubocop-ci 2016-11-13 16:45:10 +13:00
Mackenzie 2260f56713 Merge pull request #1056 from Br3nda/bw/contributors-case
Contributors check case-insentive
2016-11-12 18:39:18 -05:00
Brenda Wallace eecd54c5ea Use single quotes, as code climate suggests 2016-11-13 11:12:24 +13:00
Brenda Wallace e1f0b649f5 if! -> unless, as code climate suggests 2016-11-13 11:10:45 +13:00
Brenda Wallace 9605ec6109 Pass args to system() to be escaped 2016-11-13 11:07:57 +13:00
Brenda Wallace b2977d6806 Search contributors file, case insensitive. 2016-11-13 11:05:43 +13:00
Brenda Wallace d091aecaf1 Use https for contributor link
Hoping this will fix the failing contributor error
2016-11-13 10:46:46 +13:00
Brenda Wallace 97f0d5fc5d Add vendor to rubocop exclude path 2016-11-13 10:34:57 +13:00
Brenda Wallace 2bc9b8c8bb Added rubocop check to travisci 2016-11-13 10:20:13 +13:00
Brenda Wallace e312ee2773 All existing rubocop offfenses in a todo file 2016-11-13 10:20:00 +13:00
Brenda Wallace c685b970d3 Add rubocop to bundle
So we can manage which version of rubocop to use.
2016-11-13 10:07:41 +13:00
Cesy 621b7e5d29 Merge pull request #1048 from pozorvlak/es_factorygirl_weirdness
Prevent FactoryGirl from trying to connect to ElasticSearch in tests
2016-10-11 08:58:32 +02:00
Cesy b59ebb7d52 Merge pull request #984 from maco/rubocop_config
Rubocop config (ignore the red x)
2016-10-09 17:28:47 +01:00
Miles Gould ce2141ddb7 Only initialise Crop.__elasticsearch__ if needed
The mere presence of this field was causing any test that ran
`FactoryGirl.create :alternate_name` to try to connect to an
ElasticSearch server, even if GROWSTUFF_ELASTICSEARCH was false.

Fixes #1047
2016-10-07 14:49:09 +01:00
Miles Gould 36c88c3762 Delete trailing whitespace 2016-10-07 14:48:38 +01:00
Mackenzie Morgan 099b399b24 bundle 2016-10-06 22:00:01 -04:00
Mackenzie Morgan 5092c78fba merge 2016-10-06 21:48:18 -04:00
Cesy 199cdf20a7 Merge pull request #1045 from Br3nda/bw/harvest-link
harvest thumbnail title linking to the harvest itself
2016-09-25 10:21:59 +01:00
Brenda Wallace 7c1040e7aa Corrected contributor name 2016-09-19 21:51:13 +12:00
Brenda Wallace faf117b002 test for link to member's harvest 2016-09-19 18:02:44 +12:00
Brenda Wallace 13e491cda7 harvest thumbnail title linking to the harvest itself 2016-09-18 18:33:28 +12:00
Cesy 286b7118be Merge pull request #1041 from CloCkWeRX/openfarm-links
Add links to OpenFarm
2016-09-15 11:31:13 +01:00
Cesy b2dfe31b5c Merge pull request #1043 from CloCkWeRX/fix_1042
Fix map token in prod configuration
2016-09-15 09:09:02 +01:00
Daniel O'Connor 1f005a3d42 Fixes #1042 2016-09-14 21:41:18 +09:30
Daniel O'Connor 36c64bd8dc #1038 Add links to OpenFarm 2016-09-14 14:57:08 +09:30
Daniel O'Connor 277325d58c Merge pull request #1036 from Br3nda/bw/json-sessions
allow registration and signin/out on the API
2016-09-14 14:50:04 +09:30
Brenda Wallace 370f407ad6 Adding Brenda Wallace to contributors 2016-09-13 19:25:22 +12:00
Daniel O'Connor 3ea8e2294e Update README.md
Fixes #1037
2016-09-12 21:57:27 +09:30
Brenda Wallace c6413afa67 allow registration and signin/out on the API 2016-09-11 14:23:50 +12:00
Cesy fe137a11bb Merge pull request #1031 from CloCkWeRX/queue_mail
Queue mail in sidekiq
2016-08-24 10:38:13 +01:00
Cesy 0fa15161d4 Merge pull request #811 from CloCkWeRX/add_facebook_signup
Add facebook signup
2016-08-24 10:37:47 +01:00
Daniel O'Connor aeb8792165 Merge remote-tracking branch 'upstream/dev' into queue_mail 2016-08-24 06:35:51 +09:30
Daniel O'Connor c60609d507 Merge remote-tracking branch 'upstream/dev' into add_facebook_signup 2016-08-23 16:34:03 +09:30
Daniel O'Connor ad04c07017 Merge pull request #1034 from cesy/railsupdate
Rails update
2016-08-23 01:03:46 +09:30
Daniel O'Connor f3f8326360 Merge pull request #1033 from cesy/gemupdate
Updating a few gems
2016-08-23 01:00:36 +09:30
Cesy Avon 3798e386ae Upgrading rails to 4.2.1 2016-08-22 14:14:58 +00:00
Cesy Avon 7d3afa005c Updating a few gems 2016-08-22 14:00:03 +00:00
Daniel O'Connor 3bfe2329f1 Merge pull request #1032 from Growstuff/dev
Release 14
2016-08-22 19:19:04 +09:30
Daniel O'Connor 29765ebc19 rubocop --only HashSyntax --auto-correct 2016-08-22 19:02:27 +09:30
Daniel O'Connor b91f0e7f63 Whitelist providers to avoid session data being tampered with 2016-08-22 18:59:28 +09:30
Daniel O'Connor 87352b04f1 Refactor to a method to DRY, even if its not 100% the best spot for it to live long term 2016-08-22 18:52:12 +09:30
Daniel O'Connor 0f034523e1 Only maximize if the driver supports such a thing 2016-08-22 18:26:08 +09:30
Daniel O'Connor 20b87e596a Modern syntax 2016-08-22 18:25:57 +09:30
Daniel O'Connor 4b7cffad04 DEPRECATION WARNING: [Devise] bypass option is deprecated and it will be removed in future version of Devise. 2016-08-22 16:42:08 +09:30
Daniel O'Connor bcb0a19dea Merge remote-tracking branch 'upstream/dev' into add_facebook_signup 2016-08-22 16:37:50 +09:30
Daniel O'Connor 4e2311e8d7 Indent 2016-08-22 16:36:30 +09:30
Daniel O'Connor c7be0f3b0e Fix redirects and sign the user in if they weren't yet created 2016-08-22 16:35:58 +09:30
Daniel O'Connor 9ab79209ef Adjust TOS url 2016-08-22 16:35:41 +09:30
Daniel O'Connor 1c3016a31e Adjust for when running with selenium-webdriver to avoid clicks being placed in the wrong location; and for drivers that don't support blacklisting 2016-08-22 16:17:36 +09:30
Cesy 941001c743 Merge pull request #1029 from CloCkWeRX/add_seed_purchase_links
Add links to ebay, which seems to have a variety of seeds to purchase…
2016-08-16 08:53:09 +01:00
Cesy 40cf5ba63a Merge pull request #1030 from CloCkWeRX/fix_998
Ensure we look at the current control, not the entire collection when marking planting finished
2016-08-16 08:50:30 +01:00
Cesy 9a40449f08 Merge pull request #1024 from CloCkWeRX/mapboxv4
#981 Add mapbox v4
2016-08-16 08:49:44 +01:00
Daniel O'Connor 049d792053 Fix Gemfile.lock 2016-08-16 12:05:14 +09:30
Daniel O'Connor e399085a57 Update bootstrap-sass coveralls friendly_id js-routes sass-rails simplecov 2016-08-16 11:58:12 +09:30
Daniel O'Connor 18b4a90690 Upgrade excon ffi autoprefixer-rails multi_json mimemagic pry active_utils activemerchant 2016-08-16 11:56:50 +09:30
Daniel O'Connor a68ffda7eb Upgrade minor gems: kramdown, notifany, httparty, codemirror-rails, bootstrap_form, globalid 2016-08-16 11:56:25 +09:30
Daniel O'Connor 0a722edc88 Fix regression from bad merge 2016-08-16 11:45:58 +09:30
Daniel O'Connor de407608f2 Merge remote-tracking branch 'upstream/dev' into queue_mail 2016-08-16 11:11:40 +09:30
Daniel O'Connor ece0fdfe6c Drop sidekiq web for the moment 2016-08-16 11:08:59 +09:30
Daniel O'Connor 5008d35614 Add sidekiq configuration 2016-08-16 11:02:35 +09:30
Daniel O'Connor 6b470f180c #951 Add sidekiq as our activejob backend 2016-08-16 11:01:19 +09:30
Daniel O'Connor 4deb895b4c #951 Add sidekiq 2016-08-16 10:59:30 +09:30
Daniel O'Connor 5d70d822eb #951 Swap to deliver_later implementation 2016-08-16 10:55:40 +09:30
Daniel O'Connor 90a88cf69d Fixes #998 Ensure we look at the current control, not the entire collection 2016-08-16 10:33:23 +09:30
Daniel O'Connor 044a992d25 Merge pull request #1025 from polveenomials/nav-header
Enhancement of the navigation bar (header)
2016-08-15 23:30:11 +09:30
Daniel O'Connor 4b066ec37f Merge pull request #1028 from CloCkWeRX/minor_gem_upgrades_august_2016
Minor gem upgrades for August 2016
2016-08-15 23:28:30 +09:30
Daniel O'Connor 0dad02343e Merge remote-tracking branch 'upstream/dev' into add_facebook_signup 2016-08-15 23:14:49 +09:30
Daniel O'Connor 7f6a1a424d Merge remote-tracking branch 'upstream/dev' into add_facebook_signup 2016-08-15 23:13:55 +09:30
Daniel O'Connor c2dc2c5836 Merge pull request #1027 from CloCkWeRX/cve-2016-6317
Fix CVE-2016-6316 CVE-2016-6317
2016-08-15 23:10:27 +09:30
Daniel O'Connor 58452204aa Add links to ebay, which seems to have a variety of seeds to purchase with our affiliate id 2016-08-15 22:42:32 +09:30
Daniel O'Connor 711ba73d6b Upgrade devise to 4.2 2016-08-15 22:12:34 +09:30
Daniel O'Connor 5354f2732f Update bootstrap-sass coveralls friendly_id js-routes sass-rails simplecov 2016-08-15 22:07:39 +09:30
Daniel O'Connor 9bbaaa2211 Upgrade excon ffi autoprefixer-rails multi_json mimemagic pry active_utils activemerchant 2016-08-15 22:04:43 +09:30
Daniel O'Connor 93c47d774e Upgrade minor gems: kramdown, notifany, httparty, codemirror-rails, bootstrap_form, globalid 2016-08-15 22:01:56 +09:30
Daniel O'Connor d8ad697d09 Swap tokens 2016-08-15 21:53:17 +09:30
Daniel O'Connor 7308a7cf9a Name: actionview
Version: 4.2.6
Advisory: CVE-2016-6316
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/I-VWr034ouk
Title: Possible XSS Vulnerability in Action View
Solution: upgrade to ~> 3.2.22.3, ~> 4.2.7.1, >= 5.0.0.1

Name: activerecord
Version: 4.2.6
Advisory: CVE-2016-6317
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/rgO20zYW33s
Title: Unsafe Query Generation Risk in Active Record
Solution: upgrade to ~> 4.2.7.1
2016-08-15 21:45:26 +09:30
Cesy c9c49a7e5e Merge pull request #1026 from CloCkWeRX/gardenate_attempt_2
Gardenate attempt 2
2016-08-15 13:15:21 +01:00
Daniel O'Connor dba6b2a291 Mitigate security concerns with target=_blank via https://www.jitbit.com/alexblog/256-targetblank---the-most-underestimated-vulnerability-ever/ 2016-08-15 21:31:45 +09:30
Daniel O'Connor 7d3991b295 #967 Mitigate security concerns with target=_blank via https://www.jitbit.com/alexblog/256-targetblank---the-most-underestimated-vulnerability-ever/ 2016-08-15 21:30:51 +09:30
Daniel O'Connor e4c0ecfb5a Add basic test 2016-08-15 21:30:40 +09:30
Daniel O'Connor fdb0e842de #864 Add links to google, gardenate 2016-08-15 21:30:33 +09:30
polveenomials 85ff36198b Added name to the CONTRIBUTORS.md 2016-08-04 14:27:49 +08:00
Daniel O'Connor e38321aa33 #981 Add mapbox access token (on my free 50k views account) and update to v4 2016-07-28 14:27:49 +09:30
Kristine Nicole Polvoriza d1438d1b2e Fixed the nav header in mobile view 2016-07-28 12:31:50 +08:00
pozorvlak b6f848ef66 Merge pull request #1021 from CloCkWeRX/picture_improvements
If a harvest doesn't have any photos, try to look at the crop's default photo
2016-07-21 18:24:58 +01:00
Daniel O'Connor ff47784aee Add explicit test coverage 2016-07-21 12:21:56 +09:30
Daniel O'Connor 1dba711057 Add more explicit test coverage 2016-07-21 12:13:37 +09:30
Daniel O'Connor 6911f7b24b Typo 2016-07-21 12:05:37 +09:30
pozorvlak 1e94abd063 Merge pull request #1019 from CloCkWeRX/mobile_searchbar
Use navbar-right, and reposition search box to fix mobile layout
2016-07-20 12:44:03 +01:00
Cesy 3325e1e388 Merge pull request #1020 from Growstuff/dev
Release 13
2016-07-19 10:45:28 +01:00
Daniel O'Connor 4b87977e24 It helps to type properly 2016-07-08 18:12:16 +09:30
Daniel O'Connor dfa28264c6 #1017 When a crop has no photos, look for harvests of the crop with photos. 2016-07-08 18:09:53 +09:30
Daniel O'Connor f0c1d6d4c2 #997 Use the harvest photo lookup, not the harvest.crop one 2016-07-08 18:01:53 +09:30
Daniel O'Connor 427b98a157 #997 If a harvest doesn't have any photos, try to look at the crop's default photo 2016-07-08 17:59:32 +09:30
Daniel O'Connor 8f5000443f Use navbar-right, and reposition search box to fix mobile layout 2016-07-08 17:45:00 +09:30
Daniel O'Connor 7947fd6e91 Clean up link_to as per #1013 2016-07-08 17:08:17 +09:30
Daniel O'Connor 70bf5499b2 Clean up logic a bit as per #1013 2016-07-08 17:07:14 +09:30
Daniel O'Connor 6b059cb4f4 Clean up a bit as per #1013 with TODO comments 2016-07-08 17:06:05 +09:30
Daniel O'Connor efd112c4b8 And vs && - revised version of b50127c166 2016-07-08 17:01:59 +09:30
Mackenzie Morgan 5c7b760f34 Use array literal [] instead of Array.new 2016-07-08 16:58:34 +09:30
Mackenzie Morgan 81ae473972 space between comma-separated arguments 2016-07-08 16:58:29 +09:30
Mackenzie Morgan a8171bb739 has_key? -> key? 2016-07-08 16:58:22 +09:30
Daniel O'Connor c803ed4ee6 Merge pull request #976 from pozorvlak/remove_default_shows
Remove "show" methods that just do the default
2016-07-08 16:56:25 +09:30
Daniel O'Connor 9e41a65749 Tweak readme wiki links
Supercedes #1016
2016-07-08 15:33:16 +09:30
Daniel O'Connor 43e7d6f7c2 Merge remote-tracking branch 'upstream/dev' into add_facebook_signup 2016-07-05 03:09:36 +09:30
Cesy a7539df5b5 Merge pull request #1018 from CloCkWeRX/minor_rails_bump
Minor gem upgrades for the month
2016-07-01 10:14:22 +01:00
Daniel O'Connor 3950619877 Update various minor gems even more 2016-07-01 17:42:58 +09:30
Daniel O'Connor 7373fd4aa9 Update various minor gems 2016-07-01 17:34:25 +09:30
Daniel O'Connor c3d9885525 Merge pull request #987 from CloCkWeRX/upgradazzle_rails
Upgrade to rails 4.2.0+ (round 2)
2016-06-29 14:47:05 +09:30
Daniel O'Connor 4b5dee7bdb Merge pull request #1007 from ctlewitt/dev
issue #1006: change "Freenode" to "irc.freenode.net" in README.md
2016-06-29 12:51:05 +09:30
Charley Lewittes 55d846b9e0 Merge remote-tracking branch 'them/dev' into dev 2016-06-22 10:56:56 -04:00
Daniel O'Connor f2d8349a88 #1012 Tweak script to avoid errors after merge 2016-06-22 10:46:26 +09:30
Daniel O'Connor 7c7dd7c609 Merge pull request #1012 from pozorvlak/check_contributors_md
Check PR author is in CONTRIBUTORS.md under Travis
2016-06-22 10:25:06 +09:30
Charley Lewittes d8f2c580ee added myself to contributors list 2016-06-21 13:14:26 -04:00
Charley Lewittes 2a0602468d Added link and wording to access Freenode IRC growstuff channel easily
fixes #1006
2016-06-21 13:03:06 -04:00
Charley Lewittes 89a9c18188 fixes #1006: change "Freenode" to "irc.freenode.net" in README.md 2016-06-21 12:49:33 -04:00
Miles Gould 8b426da149 Check PR author is in CONTRIBUTORS.md under Travis
Results of testing this locally (the exit value of the last command is
in my prompt):

```
0 $ TRAVIS=true TRAVIS_REPO_SLUG=growstuff/growstuff
TRAVIS_PULL_REQUEST=1007 script/check_contributors_md
Checking to see if you're in CONTRIBUTORS.md...

Thanks for your contribution, ctlewitt!
Please add your name and GitHub handle to the file CONTRIBUTORS.md,
commit it, and update your PR.

1 $ TRAVIS=true TRAVIS_REPO_SLUG=growstuff/growstuff
TRAVIS_PULL_REQUEST=1008 script/check_contributors_md
Checking to see if you're in CONTRIBUTORS.md...
- Miles Gould / [pozorvlak](https://github.com/pozorvlak)
0 $ script/check_contributors_md
Checking to see if you're in CONTRIBUTORS.md...
- Miles Gould / [pozorvlak](https://github.com/pozorvlak)
0 $
```
2016-06-21 16:37:26 +01:00
pozorvlak cab98f9750 Merge pull request #1011 from Growstuff/revert-1002-letsencrypt-pt2-1
Revert "challenge code"
2016-06-21 15:28:15 +01:00
pozorvlak 27b7a26fee Merge pull request #1010 from Growstuff/revert-999-letsencrypt
Revert "lets encrypt challenge page"
2016-06-21 15:27:38 +01:00
Cesy 7261fae9f2 Revert "challenge code" 2016-06-21 15:06:02 +01:00
Cesy 628ebd6841 Revert "lets encrypt challenge page" 2016-06-21 15:05:45 +01:00
Cesy 61bbf7c30d Merge pull request #1008 from pozorvlak/test_gemfile_commits
Check for "forgot to commit Gemfile.lock" in CI
2016-06-21 14:57:54 +01:00
Miles Gould e33803343a Check for "forgot to commit Gemfile.lock" in CI
Quick-and-dirty script to catch an error we've missed a couple of times
in code review, but which is not (AFAICT) covered by any of our existing
checkers. Inspired by the following posts:

 - https://zachholman.com/posts/how-github-writes-blog-posts/
 - https://zachholman.com/talk/move-fast-break-nothing/
2016-06-21 13:32:11 +01:00
Mackenzie b08a448fdc hotfix commit: letsencrypt try #2 2016-06-20 13:40:49 -04:00
Cesy 7210ebfb22 Merge pull request #1004 from maco/letsencrypt
Letsencrypt, will be backed out once SSL is up and running.
2016-06-20 16:57:24 +01:00
Mackenzie Morgan 039978357b letsencrypt verification for staging 2016-06-20 11:48:19 -04:00
Cesy 7ce2481cbc Merge pull request #1002 from Growstuff/letsencrypt-pt2-1
challenge code - will also get reverted once SSL is up.
2016-06-20 15:49:33 +01:00
Mackenzie 5bc6af87c5 challenge code 2016-06-20 10:46:40 -04:00
Cesy a5eaf3566e Merge pull request #999 from Growstuff/letsencrypt
lets encrypt challenge page - temporary change for SSL tool, will be backed out after
2016-06-20 15:42:22 +01:00
Mackenzie Morgan 58d40e912d Tweak rubocop config
* turn off line length limit
* turn off class documentation requirement
* 30 line methods
2016-06-20 10:35:38 -04:00
Mackenzie 63d89be698 lets encrypt challenge page 2016-06-20 10:34:11 -04:00
pozorvlak 1b7be9f9b0 Merge pull request #936 from maco/add_bootstrap_flashes
Add support for Bootstrap alert types
2016-06-20 10:19:36 +01:00
Mackenzie Morgan 7a53e96d52 test the default case 2016-06-19 22:52:51 -04:00
Mackenzie Morgan b28d146de7 use default of info
add tests
2016-06-19 22:42:20 -04:00
Mackenzie Morgan 55c8be8dc5 merge 2016-06-19 22:27:27 -04:00
Daniel O'Connor 38a273459a Merge pull request #996 from pozorvlak/block_unknown_urls_in_features
Block external URLs in feature tests
2016-06-18 20:21:32 +09:30
Miles Gould 1b07632c69 Block external URLs in features
https://github.com/teampoltergeist/poltergeist/issues/375#issuecomment-42620085
suggested that this might help with our intermittent "Request to
http://localhost:8081 failed to reach server, check DNS and/or server
status" errors in CI - the theory being that the error message is
misleading, and it's actually a daughter request to an external service
timing out. Seems worth a shot. It also ought to speed up testing, but
the effect is slight (20s out of 3.5 minutes) on my machine.

I've blacklisted only URLs I could find in app/views or by tcpdumping a
test run, because I couldn't get whitelisting to work.
2016-06-17 21:12:25 +01:00
pozorvlak 4a12523793 Merge pull request #991 from Growstuff/dev
Release 12
2016-06-17 11:37:29 +01:00
pozorvlak 6aa601b8ab Merge pull request #993 from Growstuff/revert-988-dev
Revert "Handled Issue #950 (Branded Error Pages)"
2016-06-16 13:30:50 +01:00
pozorvlak a66a040207 Revert "Handled Issue #950 (Branded Error Pages)" 2016-06-16 12:58:22 +01:00
pozorvlak 547a408a99 Merge pull request #988 from Prashanth261993/dev
Add branding to error pages (#950)
2016-06-16 11:12:23 +01:00
pozorvlak 8cd224b7fa Merge pull request #990 from maco/sparkpost_#917
don't override our environment email settings with plain old sendmail
2016-06-15 20:03:35 +01:00
Mackenzie Morgan 8428e93b47 don't override our environment email settings with plain old sendmail 2016-06-15 13:27:51 -04:00
Prashanth 483143f2fe Merge branch 'growstuff-dev' into dev
Conflicts:
	CONTRIBUTORS.md
2016-06-14 17:09:06 +05:30
pozorvlak 1b3d106b6d Merge pull request #989 from maco/sparkpost_#917
update to SparkPost's mailserver
2016-06-13 18:04:43 +01:00
Mackenzie Morgan e7be006fa7 update to SparkPost's mailserver 2016-06-13 12:12:00 -04:00
Prashanth b9f40151d8 Handled Issue #950 (Branded Error Pages)
Moved error related views from public to errors (asset pipeline can be used).
Header and footer were included along with the error message.
2016-06-10 18:35:48 +05:30
Daniel O'Connor fd467acc29 Clean up whitespace 2016-06-10 20:51:02 +09:30
pozorvlak e1ad0c31c8 Merge pull request #986 from CloCkWeRX/update_various_gems_nokogiri
Update various gems - nokogiri, mime-types, parser, guard-rspec
2016-06-10 11:09:12 +01:00
Daniel O'Connor ee604dc2b0 Upgrade activemerchant, fixing rails 5 deprecation warnings 2016-06-10 16:04:00 +09:30
Daniel O'Connor 0620646c6d Fix failing specs
- Updated assert_select behaviour given this is now based on nokogiri
 - Adjust some specs not to look for a specific asset name, but a behaviour
 - Adjust some specs for HTML5 style attributes instead of xhtml style
 - Fix tests that did not render before
2016-06-10 16:01:30 +09:30
Daniel O'Connor df9cf3f5c4 Fix various rails deprecations 2016-06-10 15:58:39 +09:30
Daniel O'Connor 944349760a Fix DEPRECATION WARNING: #timestamps was called without specifying an option for null.
In Rails 5, this behavior will change to `null: false`. You should manually specify `null: true` to prevent the behavior of your existing migrations from changing
2016-06-10 15:57:48 +09:30
Daniel O'Connor 7fe75ee52a Fix DEPRECATION WARNING: #deliver is deprecated. 2016-06-10 15:45:01 +09:30
Daniel O'Connor e3d7bf9a62 Upgrade to rails 4.2.* 2016-06-10 15:43:04 +09:30
Daniel O'Connor deaf49c18f Update selenium-webdriver 2016-06-10 15:40:56 +09:30
Daniel O'Connor 53543fff4c Update terminal-table 2016-06-10 15:40:29 +09:30
Daniel O'Connor ea5e710a70 Update codeclimate-test-reporter 2016-06-10 15:38:43 +09:30
Daniel O'Connor ad5a52ae74 Update tilt 2016-06-10 15:36:07 +09:30
Daniel O'Connor c0cc5ab085 Update geocoder 2016-06-10 15:35:29 +09:30
Daniel O'Connor cf784cbedd Update parser to current 2016-06-10 15:20:31 +09:30
Daniel O'Connor 5c68830919 Update guard-rspec 2016-06-10 15:19:57 +09:30
Daniel O'Connor 370aab41c3 Update mime-types 2016-06-10 15:19:28 +09:30
Daniel O'Connor 081f4021bc Upgrade nokogiri 2016-06-10 15:19:03 +09:30
Daniel O'Connor 36f846fabf Merge pull request #982 from CloCkWeRX/update_gibbon
Upgrade gibbon
2016-06-10 15:13:18 +09:30
pozorvlak f6d094f57c Merge pull request #985 from lucasnogueira/fix_simplecov_deprecation
Fix SimpleCov Deprecation Warning
2016-06-09 22:37:40 +01:00
Lucas Nogueira 9ce097b7d6 Fix SimpleCov Deprecation Warning 2016-06-09 17:42:11 -03:00
Mackenzie Morgan 91991f0c67 update Gemfile.lock 2016-06-09 14:25:04 -04:00
Mackenzie Morgan 306cd13723 add rubocop config with all the things turned on 2016-06-09 14:13:31 -04:00
Mackenzie Morgan 8c624cfacd merge 2016-06-09 14:13:02 -04:00
pozorvlak b03ccce575 Merge pull request #980 from lucasnogueira/replace_pluralize
Replace pluralize calls
2016-06-09 16:39:34 +01:00
Lucas Nogueira 63b8788c80 Change hash syntax 2016-06-09 11:57:56 -03:00
Daniel O'Connor faa3beddbc Upgrade gibbon 2016-06-10 00:17:28 +09:30
Lucas Nogueira 5dbd5bc1d2 Correct minor typos 2016-06-09 08:21:28 -03:00
Lucas Nogueira b8b0d98e07 Update the contributors list 2016-06-08 22:06:26 -03:00
Lucas Nogueira b911ebfd07 Replace pluralize calls 2016-06-08 22:03:40 -03:00
Lucas Nogueira 1ca515bd4e Add missing activerecord model to locales 2016-06-08 21:56:29 -03:00
Lucas Nogueira 905710b6e9 Helper for plural localization 2016-06-08 21:55:33 -03:00
Mackenzie 12e0f674bc Merge pull request #977 from pozorvlak/fix_devise_warnings
Replace deprecated Devise `for` method with `permit`
2016-06-08 13:14:05 -04:00
Mackenzie 18739c2a24 Merge pull request #974 from pozorvlak/remove_vendor_dir
Remove vendor directory
2016-06-08 11:12:14 -04:00
pozorvlak f3dc2ff7e5 Replace deprecated Devise for method with permit
This should eliminate the screens-ful of deprecation warnings when
running the test suite.
2016-06-08 15:00:05 +00:00
pozorvlak e6209a5906 Remove "show" methods that just do the default
We can just fall back to the default implementation for these.
2016-06-08 15:58:45 +01:00
Mackenzie dbf64a4e90 Merge pull request #975 from Growstuff/revert-972-show_concern
Revert "Show concern"
2016-06-08 09:26:58 -04:00
pozorvlak a8961c3466 Revert "Show concern" 2016-06-08 12:58:32 +01:00
pozorvlak 6931952688 Whitespace fixes 2016-06-07 17:43:36 +00:00
pozorvlak 936aa17ecc Remove references to vendor directory
This consisted of instructions to various code-quality tools to
ignore it.
2016-06-07 17:43:36 +00:00
pozorvlak f3d7420b8a Remove vendor directory
We no longer need it, since we're now getting the functionality we
needed from upstream gems.
2016-06-07 17:43:35 +00:00
pozorvlak e419acea6e Install BogusPayPalGateway gem
We were maintaining a vendor fork of active_merchant because they
refused to merge this feature in; it's now been released as a
separate gem.
2016-06-07 17:43:35 +00:00
pozorvlak 95ae15b780 Merge pull request #972 from maco/show_concern
Show concern
2016-06-07 16:22:17 +01:00
Mackenzie Morgan ed468e79fc Merge branch 'dev' of gitmaco:Growstuff/growstuff into show_concern 2016-06-07 09:57:47 -04:00
Daniel O'Connor 130565af75 Merge pull request #969 from maco/code_climate_token
add Code Climate token to Travis config
2016-06-07 09:01:27 +09:30
Daniel O'Connor ad8f360336 Merge pull request #970 from maco/codeclimate_exclude_vendor
exclude vendor gems from code climate
2016-06-07 09:01:05 +09:30
Daniel O'Connor 15775403fd Merge pull request #971 from maco/readme_email
info@ email exists again
2016-06-07 09:00:38 +09:30
Mackenzie Morgan e1b83c32af info@ email exists again 2016-06-06 13:27:13 -04:00
Mackenzie Morgan 3fc7c65247 exclude vendor gems from code climate 2016-06-06 13:14:01 -04:00
Mackenzie Morgan c8d1239b79 add Code Climate token to Travis config 2016-06-06 09:40:30 -04:00
Cesy 7885257fae Merge pull request #943 from CloCkWeRX/adjust_helper
Deal with .nil quantity of a seed in rendering helper
2016-06-04 12:41:03 +01:00
Daniel O'Connor a8d22709e6 Add explict test coverage of the helper with nil seeds (page level tests already cover this rendering on crop detail in general) 2016-06-04 20:51:20 +09:30
pozorvlak 31b7b45ae3 Merge pull request #966 from cesy/readme
Updating readme with current wiki status and Gitter link
2016-06-03 14:34:35 +01:00
Cesy Avon 681798b582 Updating readme with current wiki status and Gitter link 2016-06-03 13:12:19 +00:00
Cesy f05ea56179 Merge pull request #965 from dv2/dev
Add test coverage for GardensHelper
2016-06-03 14:03:07 +01:00
DV Dasari ed4269ea4c fixing grammar in test descriptions 2016-06-03 07:54:24 -05:00
DV Dasari 085fcc958e Add test coverage for GardensHelper 2016-06-02 22:22:14 -05:00
pozorvlak 8f33fe3595 Merge pull request #960 from CloCkWeRX/update_various_gems
Update various gems
2016-06-02 18:18:12 +01:00
pozorvlak 980a7d79d3 Merge pull request #963 from CloCkWeRX/add_better_opengraph_squashed
Various bugfixes for facebook/opengraph
2016-06-02 17:58:05 +01:00
pozorvlak 9c5c07e087 Merge pull request #948 from cesy/issue875
Fix #875 edited date on comments on homepage
2016-06-02 17:41:59 +01:00
Daniel O'Connor faaf07cad8 Render the full size image, as facebook doesn't like smaller thumbnails 2016-06-03 01:58:34 +09:30
Daniel O'Connor 0e83a230b9 Helps not to render excess info 2016-06-03 01:54:26 +09:30
Daniel O'Connor c278b36858 Up the various opengraph images to 200x200 2016-06-03 01:45:43 +09:30
pozorvlak 0805f86b86 Merge pull request #961 from cesy/issue476
Issue 476 edited by date on comments and posts
2016-06-02 16:53:44 +01:00
pozorvlak aad88f1da6 Merge pull request #962 from CloCkWeRX/add_better_opengraph_squashed
Add better opengraph behaviour, fix facebook share thumbnail size
2016-06-02 16:52:13 +01:00
Daniel O'Connor 7550bc860f #816 Add better opengraph behaviour, fix facebook share thumbnail size 2016-06-03 01:01:03 +09:30
Cesy Avon fc38e1edea Issue #476 test update 2016-06-02 14:58:10 +00:00
Daniel O'Connor 88a66a705b Update devise to 4.1.X and unpin 2016-06-03 00:23:58 +09:30
Daniel O'Connor f77fd00931 Remove version pin for rspec-rails 2016-06-03 00:19:49 +09:30
Daniel O'Connor b5c030905a Upgrade to geocoder current (we shouldn't be affected by the deprecations in 1.2.X or 1.3.X) 2016-06-03 00:16:00 +09:30
Daniel O'Connor 2844e13298 Upgrade factory_girl_rails, factory_girl 2016-06-03 00:10:25 +09:30
Cesy Avon 3e4dc1f9e3 Issue #875 typo causing test error 2016-06-02 14:39:56 +00:00
Cesy Avon 259c1e1731 Fix #476 show edited and posted date on posts and comments 2016-06-02 14:37:33 +00:00
Daniel O'Connor 870aa674b0 Upgrade autoprefixer-rails to current 2016-06-03 00:07:28 +09:30
Daniel O'Connor b1ab319bf7 Update mime-types-data to current 2016-06-03 00:05:46 +09:30
Daniel O'Connor 857422719a Upgrade byebug to current 2016-06-03 00:04:09 +09:30
Daniel O'Connor 235314bc13 Upgrade js-routes to current 2016-06-03 00:03:48 +09:30
Daniel O'Connor ac1cd88ae1 Upgrade kaminari to current 2016-06-03 00:01:38 +09:30
Daniel O'Connor f93ea3c0a1 Upgrade httparty to current 2016-06-03 00:00:08 +09:30
Cesy Avon 0075040aab Fix #875 edited date on comments on homepage 2016-06-02 13:56:03 +00:00
Cesy f9d51e623c Merge pull request #959 from pozorvlak/remove_capfile
Remove the Capistrano configuration file
2016-06-02 14:13:46 +01:00
Miles Gould dcd36dcd67 Remove the Capistrano configuration file
Finishes work started in 93e468876d.
2016-06-02 13:45:53 +01:00
Cesy 608a921fce Merge pull request #956 from CloCkWeRX/upgrade_devise4
Upgrade to devise 4.0.*
2016-06-02 10:18:29 +01:00
pozorvlak 4bedf1e6ac Merge pull request #955 from CloCkWeRX/upgrade_geocoder
Swap to geocoder 1.1.9
2016-06-02 09:49:04 +01:00
pozorvlak ac14c310f6 Merge pull request #954 from CloCkWeRX/ruby_231
Bump to Ruby 2.3.1
2016-06-02 09:48:20 +01:00
Daniel O'Connor f979da315a Explicitly swap from config.email_regexp = /\A[^@\s]+@([^@\s]+\.)+[^@\W]+\z/
to the new default
2016-06-02 13:50:25 +09:30
Daniel O'Connor a74ef7de6b Upgrade to devise 4.0.3 2016-06-02 13:49:13 +09:30
Daniel O'Connor 10064121a6 #953 Swap to geocoder 1.1.9; which is the release just after what we had previously pinned 2016-06-02 13:30:42 +09:30
Daniel O'Connor f8a1ef6066 #952 Try ruby 2.3.1 2016-06-02 13:14:10 +09:30
Daniel O'Connor 40d7b11d90 #952 Try ruby 2.3.1 2016-06-02 13:13:52 +09:30
Mackenzie Morgan 1600dd9e0b Merge branch 'dev' of gitmaco:Growstuff/growstuff into add_bootstrap_flashes 2016-06-01 23:37:25 -04:00
pozorvlak fbf5164eca Merge pull request #937 from dv2/dev
Add test coverage for Seeds Helper
2016-06-01 16:33:38 +01:00
DV Dasari 21d86a8c2d improve the test descriptions to be more readable 2016-06-01 09:46:22 -05:00
DV Dasari 848c7e117b Add test coverage for Seeds Helper 2016-06-01 09:46:22 -05:00
Cesy 369868672b Merge pull request #942 from pozorvlak/fix_coverage_calculations
Fix coverage calculations
2016-06-01 15:41:42 +01:00
Daniel O'Connor 321f3517a7 #920 Deal with .nil quantity of a seed in rendering helper 2016-06-01 23:26:43 +09:30
Miles Gould 6dd7ec9f95 Fix coverage calculations
SimpleCov was reporting 0% coverage for any files loaded before
`SimpleCov.start` was called, even if they were fully tested. This patch
loads the application *after* starting SimpleCov, leading to more
accurate coverage figures.
2016-06-01 14:54:13 +01:00
Cesy dc00878ff9 Merge pull request #938 from Growstuff/dev
Release 11
2016-06-01 14:13:42 +01:00
Mackenzie Morgan 90f444dc1a Merge branch 'dev' of gitmaco:Growstuff/growstuff into add_bootstrap_flashes 2016-05-31 10:50:56 -04:00
Miles Gould 4fa2e273aa Merge remote-tracking branch 'origin/pr/933' into dev 2016-05-31 15:48:17 +01:00
pozorvlak df92e0574a Merge pull request #934 from dv2/dev
Align links properly on "Forgot password page", "Resend confirmation" and "Resend unlock" pages
2016-05-31 15:46:27 +01:00
DV Dasari e2053e2f8b adding me to CONTRIBUTORS.md 2016-05-31 07:33:40 -05:00
Eric Tillberg 31f0052b9d added to contributors list 2016-05-31 06:49:17 -04:00
pozorvlak b6169778fd Merge pull request #932 from CloCkWeRX/location-not-set
Add a location not set layout (lets try this again!)
2016-05-31 11:41:11 +01:00
Mackenzie Morgan 32b98a7e40 Add support for Bootstrap alert types
* All alerts are currently shoved into either red (error) or green (success)
* Add support for yellow (warning) and blue (info) alert types

Solution from this Stack Overflow: http://stackoverflow.com/questions/31094771/rails-bootstrap-haml-how-to-convert-this-code-to-display-flash-messages-to
2016-05-30 21:48:11 -04:00
Daniel O'Connor 5111c2a96b Add sr-only text 2016-05-31 09:43:53 +09:30
Eric Tillberg 2ac901c891 feature test for issue 910 2016-05-30 09:06:09 -04:00
Mackenzie ff4466951c Merge pull request #935 from CloCkWeRX/remove_crowdfunding
Remove crowdfunding code
2016-05-29 23:27:22 -04:00
Daniel O'Connor 8f05e254a2 Remove crowdfunding code 2016-05-30 10:06:51 +09:30
DV Dasari 5122903139 align links on "Resend unlock instructions" page 2016-05-29 18:25:01 -05:00
DV Dasari 1344f776e4 align devise shared links properly on "Resend confirmation instructions" page 2016-05-29 18:23:57 -05:00
DV Dasari f33367ebac align devise shared links properly on "Forgot your password" page 2016-05-29 18:19:15 -05:00
Eric Tillberg 3ac42deae5 crop approval flash alert for wranglers upon sign in 2016-05-29 16:13:21 -04:00
Daniel O'Connor 3d04e7c125 Add list-inline to ensure the sidebar never conflicts with other content 2016-05-28 09:30:54 +09:30
Daniel O'Connor fa77f11177 Based on MIT licenced icon-globe (http://fontawesome.io/3.2.1/icon/globe/) 2016-05-28 09:26:00 +09:30
pozorvlak 45c8767234 Merge pull request #922 from maco/bug-#848
Swap over to having "(Optional)" (or translation) after optional form…
2016-05-27 17:41:42 +01:00
Mackenzie Morgan 13dc87f368 Optional field improvements
* Added custom matcher `have_optional(field id name goes here)`
* Fix partial
* Add tests
2016-05-27 11:26:36 -04:00
Mackenzie Morgan fc0116182f Merge branch 'dev' of gitmaco:Growstuff/growstuff into bug-#848 2016-05-27 11:24:37 -04:00
Mackenzie bbe9f3f1db Merge pull request #927 from pozorvlak/delete_puts_in_spec
Remove warnings and debugging puts from rspec output
2016-05-27 11:21:52 -04:00
Miles Gould 1009570102 Check href attribute of links in planting reminder
To check the target of a link, you need to pass it to `has_link` as an
`href` keyword argument. We were passing it as a positional argument,
which meant that

 - it was ignored, weakening the tests
 - the output of rspec filled up with annoying warnings.

Fixes #928.
2016-05-27 15:46:21 +01:00
Mackenzie Morgan 47f42d0ffa Merge branch 'dev' of gitmaco:Growstuff/growstuff into bug-#848 2016-05-27 10:22:35 -04:00
Miles Gould 23d21be73f Delete debugging puts statement from spec
Fixes the "rspec output includes an HTML page dump" issue noted at
https://github.com/Growstuff/growstuff/commit/2089866756f8c42c8c582f33ceccbeb0585df141#diff-6464240396bc745d7e89a408c200fd3aR15
2016-05-27 14:04:30 +01:00
pozorvlak 25f8d2ca44 Merge pull request #924 from maco/capybara-tools
Add capybara-screenshot to assist with feature testing
2016-05-27 13:18:26 +01:00
pozorvlak 58d91ec0b0 Merge pull request #923 from maco/bug-#854
Display one line of description in harvest card, then go to ellipsis …
2016-05-27 12:17:10 +01:00
pozorvlak 85cc9868cb Merge pull request #925 from maco/bug-#906
Capture originalText from the button that's been clicked, not from…
2016-05-27 11:24:08 +01:00
Mackenzie Morgan 75631da398 Set filename of screenshot to test name 2016-05-27 00:21:02 -04:00
Mackenzie Morgan 03c74dae03 Capture originalText from the button that's been clicked, not from the array of all possible date-picker buttons.
Fixes #906
2016-05-26 23:55:49 -04:00
Mackenzie Morgan 2089866756 Display one line of description in harvest card, then go to ellipsis and put read more on next line
Fixes #854
2016-05-26 23:08:23 -04:00
Mackenzie Morgan 8d982c7e3e Add capybara-screenshot to assist with feature testing 2016-05-26 22:39:58 -04:00
Mackenzie Morgan 079cecc529 Swap over to having "(Optional)" (or translation) after optional form elements rather than using placeholder text
Fixes #848
2016-05-26 16:53:46 -04:00
pozorvlak b0d90f6fd5 Merge pull request #921 from maco/bug-#876
Use standardized & translateable strings for the photo show page
2016-05-26 17:50:12 +01:00
Mackenzie Morgan 58f4ae32d0 test update 2016-05-26 12:28:58 -04:00
Mackenzie Morgan dd0373a3ee Use standardized & translateable strings for the photo show page
Fixes #876
2016-05-26 11:51:46 -04:00
pozorvlak 170dca7086 Merge pull request #918 from maco/bug-#855
Stop hard-coding strings for pagination
2016-05-26 13:00:33 +01:00
pozorvlak c930f04b5a Merge pull request #905 from maco/photos
refactor photo controller create for readability
2016-05-26 12:57:29 +01:00
Cesy f41d919ca8 Merge pull request #916 from maco/bug_873
make seed card heading link to seed page and add owner link. Fixes #873
2016-05-26 09:58:37 +01:00
Cesy 8c4583b0d3 Merge pull request #915 from maco/autocomplete_dropdown
set background color on autocomplete dropdown. Fixes #914
2016-05-26 09:57:02 +01:00
Mackenzie Morgan 972518e9fc Stop hard-coding strings for pagination
Use translation template to set singular/other strings
for .model_name

Fixes #855
2016-05-25 23:15:36 -04:00
pozorvlak 5b38fad85e Merge pull request #912 from maco/small_fixes
Fix two small things (including: make tests stop failing)
2016-05-25 23:25:47 +01:00
Mackenzie Morgan d227601627 Add config/factory_girl.rb so that rspec doesn't fail with a confusing
'Could not find mapping for #<Member...' error
http://blog.thefrontiergroup.com.au/2011/03/reloading-factory-girl-factories-in-the-rails-3-console/
2016-05-25 17:35:57 -04:00
Mackenzie Morgan 736e45aec9 update Gemfile.lock for code climate 2016-05-25 17:35:23 -04:00
Mackenzie Morgan 11e2e86b06 make seed card heading link to seed page and add owner link. Fixes #873 2016-05-25 16:21:17 -04:00
Mackenzie Morgan 58617b5685 set background color on autocomplete dropdown. Fixes #914 2016-05-25 16:07:49 -04:00
Mackenzie Morgan 8c2aa4844f use CW's case statement idea 2016-05-25 15:15:09 -04:00
Mackenzie Morgan 8648db5518 create SimpleShow concern for models where show's json call is simple 2016-05-25 13:37:01 -04:00
Mackenzie Morgan b5b201b6df bundle 2016-05-25 10:38:06 -04:00
Mackenzie Morgan b601fe40b3 refactor photo controller create for readability 2016-05-24 16:59:52 -04:00
pozorvlak d6999b2a8a Merge pull request #879 from Growstuff/code_climate
Add code climate to README
2016-05-23 19:00:26 +01:00
Mackenzie Morgan 76f152aa35 add Code Climate config file 2016-05-23 13:07:18 -04:00
pozorvlak 63f8a2c5c0 Merge pull request #897 from maco/menu_fix
darken navbar item text when it opens (and the background turns light)
2016-05-23 12:25:22 +01:00
pozorvlak ae482ecab6 Merge pull request #802 from cesy/issue690
Issue 690 Switch on CMS and remove old files
2016-05-23 12:24:49 +01:00
pozorvlak a8e63ab397 Merge pull request #898 from CloCkWeRX/adjust_plantings_card_ui
Improve the styling of a planting to be more like the other card-layouts
2016-05-23 12:17:47 +01:00
pozorvlak a2717ad058 Merge pull request #900 from CloCkWeRX/clip_long_text
Clip long text in definition lists within panels
2016-05-23 12:07:32 +01:00
Daniel O'Connor 083035c924 Merge branch 'dev' of github.com:Growstuff/growstuff into add_facebook_signup 2016-05-23 16:58:22 +09:30
Daniel O'Connor 92cce5910e Improve planting card UI on mobile 2016-05-23 16:35:58 +09:30
Daniel O'Connor ab897f05f9 Use panel-body and panel-heading more effectively 2016-05-23 16:21:13 +09:30
Daniel O'Connor cd8ca02322 Merge remote-tracking branch 'upstream/dev' into adjust_plantings_card_ui 2016-05-23 16:17:39 +09:30
Daniel O'Connor 5104225d11 #856 Clip long text in definition lists within panels 2016-05-23 16:13:53 +09:30
Mackenzie 24d6087ea7 Merge pull request #899 from CloCkWeRX/improve_nearby_places_links
Improve nearby places links
2016-05-22 23:39:53 -04:00
Daniel O'Connor dc9ee18e96 Update stale test expectation 2016-05-23 12:56:37 +09:30
Daniel O'Connor b4060b7903 Update stale test expectation 2016-05-23 12:55:50 +09:30
Daniel O'Connor 884a3aad2c Check we have a location before linking to it 2016-05-23 11:51:14 +09:30
Daniel O'Connor 80f826421b Add page anchors to put you to the area you are most interested in 2016-05-23 11:41:42 +09:30
Daniel O'Connor 7872bb48e2 Fixes #872 Add more links and explain them better 2016-05-23 11:35:49 +09:30
Daniel O'Connor 7d10101c57 For a place, talk about the community as a vaguer way of explaining 'members, seeds, plantings, etc' 2016-05-23 11:31:29 +09:30
Daniel O'Connor d9ed21ba53 Styling the show view of a planting more like the card view (though 100% card view looks funny with the crop thumbnail floating to the right) 2016-05-23 11:24:32 +09:30
Daniel O'Connor 5e8211172b Only show a heading for Notes if there are notes 2016-05-23 11:12:42 +09:30
Daniel O'Connor 24956255d7 Fix layout of view all plantings link 2016-05-23 11:03:23 +09:30
Daniel O'Connor 55380dab04 Fix style regression by moving garden content properly into the container 2016-05-23 10:58:09 +09:30
Daniel O'Connor e7926b6f22 Improve the styling of a planting to be more like the other card-layouts 2016-05-23 10:48:49 +09:30
Mackenzie Morgan fe7d8f73f3 darken navbar item text when it opens (and the background turns light)
Fixes #896
2016-05-22 20:49:51 -04:00
Mackenzie 47d7f001fe Merge pull request #895 from cesy/precompile
Precompile css and js with sass
2016-05-22 15:10:43 -04:00
Cesy Avon 23a6722ddb Precompile css and js with sass 2016-05-22 16:34:36 +00:00
Cesy 23e2b756fd Merge pull request #886 from pozorvlak/fix_duplicated_class_warning
Fix "duplicated key: :class" warning in HAML code
2016-05-22 17:21:47 +01:00
pozorvlak 8bea05a77b Merge pull request #803 from cesy/issue734bootstrapaccessibility
Bootstrap accessibility
2016-05-22 17:19:55 +01:00
Cesy d5ac4bac48 Merge pull request #894 from pozorvlak/upgradegibbon
Fix mailchimp newsletter subscriptions
2016-05-22 17:13:59 +01:00
pozorvlak 1af9b2e6db Merge pull request #892 from cesy/databaseconfig
Moving database.yml and adding gitignore
2016-05-22 17:09:35 +01:00
Cesy daa3c08706 Fixing broken links to pages that are now in CMS 2016-05-22 16:05:07 +00:00
Cesy 29102e3b52 Cleaning up more tests 2016-05-22 16:05:07 +00:00
Cesy 8c0fc54344 Sorting tests related to moving to CMS 2016-05-22 16:04:39 +00:00
Cesy f5b20c2f32 About is empty, policy won't work without the routes 2016-05-22 16:01:40 +00:00
Cesy 79734ff603 Fix #690 Removing old static files that are now in CMS 2016-05-22 16:01:40 +00:00
twconquest 397bfd8bca Start removing static page references. 2016-05-22 16:01:40 +00:00
Miles Gould 52dc111210 Merge branch 'dev' into upgradegibbon 2016-05-22 16:57:38 +01:00
Cesy Avon da1375e34d Making database.yml locally editable 2016-05-22 15:50:22 +00:00
pozorvlak 19f4ee51ed Merge pull request #891 from Growstuff/dev
Release 10
2016-05-22 16:34:18 +01:00
Cesy 7be346d92f Merge pull request #890 from maco/gem_udpate
upgrade gems and make API change for ruby-units
2016-05-22 08:54:07 +01:00
Mackenzie Morgan 51a0a33b2a upgrade gems and make API change for ruby-units 2016-05-21 16:33:42 -04:00
Mackenzie Morgan 0df52b3cd8 update paperclip 2016-05-20 11:28:55 +01:00
Daniel O'Connor 18cd8f5966 #507 #813 Add spec 2016-05-19 15:53:11 -04:00
Kevin Rio 5a31619b46 If i reply to a notification directly, it's not marked as read. #507 2016-05-19 15:53:11 -04:00
Daniel O'Connor 4b4e0cf69a $ rubocop --only HashSyntax --auto-correct
483 files inspected, 2018 offenses detected, 2018 offenses corrected
2016-05-19 15:53:11 -04:00
Mackenzie Morgan 8659ebca2d switch from less to sass
* dependency hell + bit rot on upstream libraries  prevents installation on OS X
2016-05-19 15:52:54 -04:00
Miles Gould 238e0be682 Merge branch 'upgrade_misc_dev_tools' into dev 2016-05-19 15:02:32 +01:00
Mackenzie 4324ceb8ca Merge pull request #884 from pozorvlak/bump_ruby_22x
Bump ruby to 2.2.x
2016-05-19 09:40:48 -04:00
Miles Gould 79db3c4c1d Fix "duplicated key: :class" warning in HAML code
The warning was

    app/views/harvests/_form.html.haml:32: warning: duplicated key at line 32 ignored: :class

We were specifying two `:class` attributes on an HTML tag; I've combined
them into one.
2016-05-19 14:40:24 +01:00
Mackenzie 19d6c8f293 Merge pull request #882 from pozorvlak/install_all_gems_on_travis
Install *all* gems in TravisCI
2016-05-19 09:37:08 -04:00
Miles Gould bcb74c7ed8 Merge branch 'dev' into bump_ruby_22x 2016-05-19 14:15:33 +01:00
Miles Gould 4a341bb7ab Install *all* gems in CI
Previously we were only installing the gems needed for testing. This
caused our CI to miss an incompatibility problem with a gem that was
only needed for another environment:
https://github.com/Growstuff/growstuff/pull/878#discussion_r63745751
2016-05-19 13:33:36 +01:00
Mackenzie 925027f7f0 add code climate test reporter 2016-05-17 14:02:42 -04:00
Mackenzie 1442a9106c add code climate / travis gem 2016-05-17 13:58:55 -04:00
Mackenzie fafb421a51 Add code climate to README
Our code climate score is *abysmal*, but now that I've been using it in my job for a few months, I have some ideas how to improve it. It's all about clean code (check out the book of that name from your local library) and readability. So let's add the grade to the README, and I'll figure out how to set it up so that Code Climate is run on pull requests automatically (telling us whether things are going to get better or worse with every PR).
2016-05-17 13:47:33 -04:00
Daniel O'Connor 02615dc522 $ bundle update selenium-webdriver guard guard-rspec rails factory_girl pg simplecov coveralls newrelic_rpm better_errors minitest 2016-05-17 13:33:12 +09:30
Cesy 436527b902 Merge pull request #837 from Growstuff/dev
Release 9
2016-05-16 20:09:00 +01:00
Cesy 260b16da11 Merge pull request #865 from CloCkWeRX/fix_progress
Fix progress calculations
2016-04-21 08:02:37 +01:00
Daniel O'Connor cf0a646699 Add EOF newlines 2016-04-14 09:59:36 +09:30
Daniel O'Connor 12ad16a05a Newlines 2016-04-13 08:41:05 +09:30
Cesy d525afb07c Merge pull request #866 from CloCkWeRX/fix_posts_path
Fixes #851 Correct the link to be specific to the author
2016-04-11 18:56:45 +01:00
Daniel O'Connor 3ff3ffa457 Don't update that link, geesh. Need more coffee! 2016-04-11 09:55:03 +09:30
Daniel O'Connor e3c689ba6b Fixes #851 Correct the link to be specific to the author 2016-04-11 09:51:52 +09:30
Daniel O'Connor 82553d6e0a Avoid time travel in favour of calculating a number of past/future dates 2016-04-11 09:29:06 +09:30
Daniel O'Connor 3644a8124f Tweak specs, implementation properly 2016-04-09 22:54:03 +09:30
Daniel O'Connor 5cfa051d75 Update expectations 2016-04-09 22:43:17 +09:30
Daniel O'Connor 69fb98146b Adjust logic 2016-04-09 22:01:05 +09:30
Cesy 01b9e76814 Merge pull request #860 from CloCkWeRX/fix_warnings
Fix WARNING: Using the `raise_error` matcher without providing a specific error
2016-04-09 13:26:11 +01:00
Cesy 594e3470b4 Merge pull request #858 from CloCkWeRX/fix_plant_parts
Fix plant parts / harvests issue #853
2016-04-09 13:25:46 +01:00
Daniel O'Connor 7bb7a18b66 Fixes #850 Refactors percentage grown to model, stops rendering progress bars in situations it doesn't make sense. Adds specs. 2016-04-09 21:45:13 +09:30
Cesy de4b89fdf7 Merge pull request #861 from hcbviolet/descriptions
#852 Harvest description headings rendered when there's no description
2016-04-09 13:08:00 +01:00
hcbviolet e8d7ed0c2d Edit display_harvest_description method for no description 2016-04-08 17:34:58 -07:00
Daniel O'Connor a3ad9189b1 Fix WARNING: Using the raise_error matcher without providing a specific error or message risks false positives, since raise_error will match when Ruby raises a NoMethodError, NameError or ArgumentError, potentially allowing the expectation to pass without even executing the method you are intending to call. Actual error raised was #<ActiveRecord::RecordNotFound: Couldn't find Member with 'id'=9999>. Instead consider providing a specific error class or message. This message can be supressed by setting: RSpec::Expectations.configuration.warn_about_potential_false_positives = false. Called from /home/travis/build/Growstuff/growstuff/spec/controllers/member_controller_spec.rb:65:in `block (3 levels) in <top (required)>'. 2016-04-07 10:41:35 +09:30
Daniel O'Connor da588b7fdb Create the plant part instead of assuming it's seeded 2016-04-07 10:08:21 +09:30
Daniel O'Connor a7f9e113d6 Target the name attribute 2016-04-07 09:59:06 +09:30
Daniel O'Connor c3a883de16 Ensure we choose a plant part 2016-04-07 09:47:53 +09:30
Daniel O'Connor aa2a761a58 Ensure we choose a plant part 2016-04-07 09:46:29 +09:30
Daniel O'Connor a800630b01 Ensure we choose a plant part 2016-04-07 09:43:45 +09:30
Cesy b69bb219a3 Merge pull request #859 from CloCkWeRX/add_title_validations
Add title validations
2016-04-03 11:45:10 +01:00
Daniel O'Connor a9330f2d77 #857 Add length validations to UI 2016-04-03 00:15:45 +10:30
Daniel O'Connor de8bcc38d3 #857 Add length validations to models 2016-04-03 00:13:38 +10:30
Daniel O'Connor 99a3be08eb Fixes #853 2016-04-03 00:08:19 +10:30
Daniel O'Connor d9f04d1fa9 Fixes #853 2016-04-03 00:08:12 +10:30
pozorvlak 1791ed5b01 Merge pull request #843 from CloCkWeRX/fix_CVE-2015-7551_upgrade_ruby
Fix CVE-2015-7551
2016-03-29 20:04:56 +01:00
pozorvlak 683ec9dd9d Merge pull request #842 from CloCkWeRX/cve_2015_5312_and_more
Fix CVE 2015 5312 and more
2016-03-29 20:03:41 +01:00
Daniel O'Connor 668f6d3a2b Fix 'app/views/harvests/_form.html.haml:39: warning: duplicated key at line 39 ignored: :class' 2016-03-29 00:43:14 +10:30
Mackenzie 90e9017a19 Merge pull request #841 from CloCkWeRX/fix_840_performance
Eager load photos to reduce the number of queries executed
2016-03-28 09:55:40 -04:00
Daniel O'Connor 9f3cb7ee8b Merge branch 'dev' of github.com:Growstuff/growstuff into fix_CVE-2015-7551_upgrade_ruby 2016-03-29 00:24:26 +10:30
Daniel O'Connor df952a1779 Bump rspec to fix https://github.com/rspec/rspec-rails/issues/1532 2016-03-29 00:00:07 +10:30
Daniel O'Connor 3748f954c5 Name: uglifier
Version: 2.5.3
Advisory: 126747
Criticality: Unknown
URL: https://github.com/mishoo/UglifyJS2/issues/751
Title: uglifier incorrectly handles non-boolean comparisons during minification
Solution: upgrade to >= 2.7.2
2016-03-28 23:54:29 +10:30
Mackenzie dcbacddb58 Merge pull request #839 from CloCkWeRX/tweak_permissions
Tweak permissions links
2016-03-28 09:22:35 -04:00
Daniel O'Connor b0adec20e7 Fix CVE-2015-7551 (https://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/) 2016-03-28 23:40:17 +10:30
Daniel O'Connor 4e7e82c8a8 Fix CVE-2015-7551 (https://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/) 2016-03-28 23:39:05 +10:30
Daniel O'Connor 6905cd410d Bump to current ruby 2.2.*, as there's an end of life for 2.1.* https://www.ruby-lang.org/en/news/2016/02/24/support-plan-of-ruby-2-0-0-and-2-1/ 2016-03-28 23:38:25 +10:30
Daniel O'Connor 66bb130a1a Fix CVE-2015-7551 (https://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/) 2016-03-28 23:33:34 +10:30
Daniel O'Connor 03ae327e30 Name: uglifier
Version: 2.5.3
Advisory: 126747
Criticality: Unknown
URL: https://github.com/mishoo/UglifyJS2/issues/751
Title: uglifier incorrectly handles non-boolean comparisons during minification
Solution: upgrade to >= 2.7.2
2016-03-28 23:27:15 +10:30
Daniel O'Connor c1fde41f1f Name: devise
Version: 3.4.1
Advisory: CVE-2015-8314
Criticality: Unknown
URL: http://blog.plataformatec.com.br/2016/01/improve-remember-me-cookie-expiration-in-devise/
Title: Devise Gem for Ruby Unauthorized Access Using Remember Me Cookie
Solution: upgrade to >= 3.5.4
2016-03-28 23:23:56 +10:30
Daniel O'Connor a10f6e4783 Name: actionpack
Version: 4.1.11
Advisory: CVE-2015-7581
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/dthJ5wL69JE
Title: Object leak vulnerability for wildcard controller routes in Action Pack
Solution: upgrade to >= 4.2.5.1, ~> 4.2.5, >= 4.1.14.1, ~> 4.1.14

Name: actionpack
Version: 4.1.11
Advisory: CVE-2016-0751
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/9oLY_FCzvoc
Title: Possible Object Leak and Denial of Service attack in Action Pack
Solution: upgrade to ~> 5.0.0.beta1.1, >= 4.2.5.1, ~> 4.2.5, >= 4.1.14.1, ~> 4.1.14, ~> 3.2.22.1

Name: actionpack
Version: 4.1.11
Advisory: CVE-2015-7576
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/ANv0HDHEC3k
Title: Timing attack vulnerability in basic authentication in Action Controller.
Solution: upgrade to ~> 5.0.0.beta1.1, >= 4.2.5.1, ~> 4.2.5, >= 4.1.14.1, ~> 4.1.14, ~> 3.2.22.1

Name: actionpack
Version: 4.1.11
Advisory: CVE-2016-2098
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/ly-IH-fxr_Q
Title: Possible remote code execution vulnerability in Action Pack
Solution: upgrade to ~> 3.2.22.2, >= 4.2.5.2, ~> 4.2.5, >= 4.1.14.2, ~> 4.1.14

Name: actionview
Version: 4.1.11
Advisory: CVE-2016-2097
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/ddY6HgqB2z4
Title: Possible Information Leak Vulnerability in Action View
Solution: upgrade to ~> 3.2.22.2, >= 4.1.14.2, ~> 4.1.14

Name: actionview
Version: 4.1.11
Advisory: CVE-2016-0752
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/335P1DcLG00
Title: Possible Information Leak Vulnerability in Action View
Solution: upgrade to ~> 5.0.0.beta1.1, >= 4.2.5.1, ~> 4.2.5, >= 4.1.14.1, ~> 4.1.14, ~> 3.2.22.1

Name: activemodel
Version: 4.1.11
Advisory: CVE-2016-0753
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/6jQVC1geukQ
Title: Possible Input Validation Circumvention in Active Model
Solution: upgrade to ~> 5.0.0.beta1.1, >= 4.2.5.1, ~> 4.2.5, >= 4.1.14.1, ~> 4.1.14

Name: activerecord
Version: 4.1.11
Advisory: CVE-2015-7577
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/cawsWcQ6c8g
Title: Nested attributes rejection proc bypass in Active Record
Solution: upgrade to ~> 5.0.0.beta1.1, >= 4.2.5.1, ~> 4.2.5, >= 4.1.14.1, ~> 4.1.14, ~> 3.2.22.1
2016-03-28 23:17:55 +10:30
Daniel O'Connor a76d2a3eb0 Name: devise
Version: 3.4.1
Advisory: CVE-2015-8314
Criticality: Unknown
URL: http://blog.plataformatec.com.br/2016/01/improve-remember-me-cookie-expiration-in-devise/
Title: Devise Gem for Ruby Unauthorized Access Using Remember Me Cookie
Solution: upgrade to >= 3.5.4
2016-03-28 23:16:21 +10:30
Daniel O'Connor 049886459a Name: nokogiri
Version: 1.6.5
Advisory: CVE-2015-1819
Criticality: Unknown
URL: https://github.com/sparklemotion/nokogiri/issues/1374
Title: Nokogiri gem contains several vulnerabilities in libxml2 and libxslt
Solution: upgrade to ~> 1.6.6.4, >= 1.6.7.rc4

Name: nokogiri
Version: 1.6.5
Advisory: CVE-2015-7499
Criticality: Medium
URL: https://groups.google.com/forum/#!topic/ruby-security-ann/Dy7YiKb_pMM
Title: Nokogiri gem contains a heap-based buffer overflow vulnerability in libxml2
Solution: upgrade to >= 1.6.7.2

Name: nokogiri
Version: 1.6.5
Advisory: CVE-2015-5312
Criticality: High
URL: https://groups.google.com/forum/#!topic/ruby-security-ann/aSbgDiwb24s
Title: Nokogiri gem contains several vulnerabilities in libxml2
Solution: upgrade to >= 1.6.7.1
2016-03-28 23:13:31 +10:30
Daniel O'Connor b57cb581dd #840 Eager load photos 2016-03-28 23:08:26 +10:30
Daniel O'Connor f23cb78dcb #840 Eager load photos, which are used in the .interesting? call; so we don't have to do a photos.size call on every single crop. 2016-03-28 23:08:20 +10:30
Daniel O'Connor bfffaab77f Have to stub the controller load_and_authorize_resource behaviour, as these tests aren't run in that context. 2016-03-28 22:26:36 +10:30
Daniel O'Connor 32af1b28a8 Update the expectations: an edit link is visible to crop wranglers (which used to be an expectation about the id appearing in a link) 2016-03-28 22:03:59 +10:30
Daniel O'Connor 9fa72fa5f7 Only render a pipe if there are multiple options like edit rights available 2016-03-28 21:41:06 +10:30
Daniel O'Connor e35b15c868 Only render an edit control if the permission exists 2016-03-28 21:40:58 +10:30
Cesy 22e0e8fba0 Merge pull request #836 from gustavor-souza/patch-2
Fixing a spec timezone problem.
2015-10-09 09:17:15 +01:00
gustavor-souza 8caea57c47 Fixing a spec timezone problem. 2015-09-29 22:40:13 -03:00
pozorvlak 24dd02a439 Merge pull request #829 from CloCkWeRX/upgrade_db_cleaner
Upgrade database cleaner gem
2015-09-23 21:17:14 +01:00
Cesy 45c8092a94 Merge pull request #832 from CloCkWeRX/ruby217
Bump to ruby 2.1.7 for CVE-2015-3900
2015-09-23 11:35:26 +01:00
Daniel O'Connor 48829dba3c Bump to ruby 2.1.7 for CVE-2015-3900 Request hijacking vulnerability in RubyGems 2.4.6 and earlier; and others - https://www.ruby-lang.org/en/news/2015/08/18/ruby-2-1-7-released/ 2015-09-22 11:14:50 +09:30
Cesy 46ee2168e1 Merge pull request #831 from CloCkWeRX/add_selenium
Add additional capyabara driver options
2015-09-16 11:59:22 +01:00
Cesy 5dd52ba17f Merge pull request #830 from CloCkWeRX/sprellin
Fix minor typo in specs
2015-09-16 11:52:30 +01:00
Daniel O'Connor 78a65f26c6 Add configuration into example file 2015-09-16 14:16:42 +09:30
Daniel O'Connor f81666da5e And cleanup authentications 2015-09-15 12:58:35 +09:30
Daniel O'Connor 4a1bc9f6c0 Avoid test data conflicts and update expectations 2015-09-15 12:44:12 +09:30
Daniel O'Connor 0652c40c52 Avoid test data conflicts causing signup to act as signin-for-existing 2015-09-15 12:34:20 +09:30
Daniel O'Connor a99145b705 Implement pending spec 2015-09-15 12:27:17 +09:30
Daniel O'Connor 222f875c42 Add more coverage of various scenarios and expected behaviours 2015-09-15 12:26:32 +09:30
Daniel O'Connor dc983d4863 Add more coverage of various scenarios and expected behaviours 2015-09-15 12:24:37 +09:30
Daniel O'Connor 7256c28038 Refactor to a separate class, containing domain logic 2015-09-15 12:13:47 +09:30
Daniel O'Connor 021cb4f93b Use #{ENV['GROWSTUFF_SITE_NAME']} 2015-09-15 11:38:20 +09:30
Daniel O'Connor 83929cc8ee Add the ability to run feature tests via selenium if you configure it, or run specs with GROWSTUFF_CAPYBARA_DRIVER=selenium bundle exec rake spec:features/ 2015-09-15 11:28:30 +09:30
Daniel O'Connor 00ca01dc33 Add coverage of the most basic scenarios around sign up and login 2015-09-15 11:20:33 +09:30
Daniel O'Connor a49f359f9e Fix minor typo in specs 2015-09-15 10:40:41 +09:30
Daniel O'Connor be87d2861a Upgrade database cleaner gem, so that https://github.com/DatabaseCleaner/database_cleaner/pull/364 is available to us. 2015-09-15 10:29:29 +09:30
Cesy 481ca79cc1 Merge pull request #825 from sksavant/pr_member_notify
Notify members when mentioned in a post
2015-09-11 11:26:52 +01:00
Savant Krishna 346979c640 Merge remote-tracking branch 'upstream/dev' into pr_member_notify 2015-09-09 21:30:45 -04:00
Mackenzie ec891fc0b2 Merge pull request #821 from CloCkWeRX/fix_empty_garden
Fix #818 by removing the .thumbnail around the button.
2015-09-09 16:07:02 -04:00
pozorvlak ef6dd88b1e Merge pull request #820 from CloCkWeRX/fix_popover_better
Fix #819 by removing the popover behaviour for a standard avatar
2015-09-09 20:04:55 +00:00
twconquest b2f3755196 Additional config fix to point to correct list id 2015-09-09 19:48:35 +00:00
pozorvlak 5884718fd0 Merge pull request #824 from sksavant/member_quicklink_md
Quick links to members in markdown
2015-09-09 17:46:24 +00:00
Savant Krishna 0c315981df Merge remote-tracking branch 'upstream/dev' into member_quicklink_md
Conflicts:
	lib/haml/filters/growstuff_markdown.rb
2015-09-07 20:08:57 -04:00
Savant Krishna 342323e566 Add test for trying to quicklink non-existent @ member 2015-09-07 20:05:24 -04:00
pozorvlak d7582625c5 Merge pull request #828 from sksavant/csv_planting_fix
Fix bug #827 : Error in generating csv file for plantings with owner filter
2015-09-07 15:40:26 +00:00
pozorvlak 1cb4181ffc Merge pull request #826 from sksavant/escape_crop_link
Fix #721 : Escape quick crop link in markdown
2015-09-07 15:39:43 +00:00
Savant Krishna 9e7a80cb86 Fix bug #827 : Error in generating csv file for plantings with owner filter 2015-09-07 04:01:20 -04:00
Savant Krishna a8924f95a7 Escape member links for [name](member) and @name using backslash
Change regex to lookforward

When escaping \@name remove \
2015-09-06 05:41:35 -04:00
Savant Krishna 7afd38a1ee Fix #721 : Escape quick crop link in markdown
Lookahead in markdown to verify \ is not present

Test for escaping crop link
2015-09-06 04:20:14 -04:00
Savant Krishna 1908f670d9 Tests for feature #505 : Notifying members when mentioned 2015-09-06 14:41:04 +10:00
Savant Krishna 7ef1eb5852 Create a notification to all members mentioned in a post : Feature #505 2015-09-06 14:41:04 +10:00
Savant Krishna f36e9d726e Change @ regex to match alphanumeric or _ and modify test string 2015-09-06 14:35:35 +10:00
Savant Krishna 0adb24fa4d Add quick member link help to markdown help 2015-09-06 09:10:18 +10:00
Savant Krishna aacf7b1f09 Modify regex to include @ in the group 2015-09-05 11:05:53 +10:00
Savant Krishna b74d89c482 Tests for member quicklinks and @member links 2015-09-04 13:23:10 +10:00
Savant Krishna 3e8f017ad0 Modify markdown to render quick links to members using [name](member) or @name : Feature #504 2015-09-04 12:50:42 +10:00
Cesy 2e45857e1f Merge pull request #823 from jestallin/658_pages_and_links
GS-658 - internationalize header links and some page titles
2015-09-03 10:16:07 +01:00
Jim Stallings b8b511e747 GS-658 - use yaml anchor for duplicate values 2015-08-30 11:02:47 -04:00
Jim Stallings 85f7ca4058 GS-658 - internationalize drop down links and page titles 2015-08-29 18:39:38 -04:00
Daniel O'Connor ff779b6679 Trial rendering as comma separated 2015-08-29 07:51:53 +09:30
Daniel O'Connor f357916779 For more accurate specs, explicitly target the login-name container 2015-08-29 07:49:55 +09:30
pozorvlak 1c4d740217 Merge pull request #822 from cesy/phantomjs
Adding commentary to test for clarification of non-JS version
2015-08-28 13:17:53 +00:00
Cesy fbb442dfee Adding commentary to test for clarification of non-JS version 2015-08-28 13:00:38 +00:00
Daniel O'Connor 631747e919 Add a trailing sentence. 2015-08-27 15:26:40 +09:30
Daniel O'Connor ff00b2c985 Fix #818 and layout of show garden page 2015-08-27 15:25:16 +09:30
Daniel O'Connor a0cdf3a8b2 Fix #818 by removing the .thumbnail around the button. Also rearrange some of the headings (sizing) and controls (add new garden) to be more clearly not a tab. 2015-08-27 15:12:05 +09:30
Daniel O'Connor c87a5f2d6b Fix #819 by removing the popover behaviour for a standard avatar; and putting the stats onto the card. 2015-08-27 14:35:15 +09:30
Daniel O'Connor c09b0a0341 Merge branch 'dev' into add_facebook_signup 2015-08-27 12:19:48 +09:30
Daniel O'Connor 8a739b31a1 Minor style 2015-08-27 12:18:09 +09:30
Daniel O'Connor afec210219 #645 #556 Add facebook links 2015-08-27 12:02:48 +09:30
Daniel O'Connor dafee90b24 #645 #556 Add facebook auth management 2015-08-27 11:56:37 +09:30
Daniel O'Connor f6790a5f9b #556 When an avatar is set from an oauth provider, don't encourage the user to update gravatar. 2015-08-27 11:52:49 +09:30
Daniel O'Connor 4983a6dfb3 #556 Improve user avatar sizing 2015-08-27 11:42:36 +09:30
Daniel O'Connor c4c477fdd8 Merge branch 'add_facebook_signup' into dev 2015-08-27 11:31:07 +09:30
Daniel O'Connor 20b89f0d2f #556 Default to the oauth provided image on account creation 2015-08-27 11:27:15 +09:30
pozorvlak 53ed4f5b24 Merge pull request #810 from cesy/phantomjs
Turn on Phantom JS for all tests
2015-08-26 23:14:43 +00:00
Cesy 3300c303be Merge pull request #817 from CloCkWeRX/add_member_preferred_image
Add member preferred image - not accessible to users yet, prep for pulling from facebook
2015-08-26 10:30:45 +01:00
Daniel O'Connor e84aaeb56d #509 Refactor the rendering of image_with_popover as well (size is *never* defined, so have defaulted it explicitly to 150) 2015-08-26 10:33:12 +09:30
Daniel O'Connor cad361ed7a #509 Update expectations, they were slightly different to what the test tool claimed they would be. 2015-08-25 00:57:39 +09:30
Daniel O'Connor 1187719e7b #509 Add some basic test coverage 2015-08-25 00:51:13 +09:30
Daniel O'Connor 859cf7f215 #509 Add support for a non gravatar profile image. Assumed to be the same dimensions as a gravatar pic 2015-08-25 00:32:17 +09:30
Daniel O'Connor 6d97a060c3 #509 Add support for a non gravatar profile image. Assumed to be the same dimensions as a gravatar pic 2015-08-25 00:32:06 +09:30
pozorvlak fc04dde1e8 Merge pull request #814 from CloCkWeRX/fix_facebook_logo_733
Add correct prefix to fix facebook share icon
2015-08-24 09:47:32 +01:00
Daniel O'Connor 9564866f6d #645 Avoid collisions by using a 20 character random string as a fallback 2015-08-24 17:33:28 +09:30
Daniel O'Connor e3c52b1a56 #733 Render as a 'website' 2015-08-24 16:56:35 +09:30
Daniel O'Connor 3258a6754c #733 Render only one image, and do it with a full URL 2015-08-24 16:46:42 +09:30
Daniel O'Connor db876ff107 #733 Add the correct RDFa prefix 2015-08-24 16:38:00 +09:30
Daniel O'Connor 994296640b #645 Implement all of finish signup, fix an edge case of an authentication without a member, fix error messages on failed oauth. 2015-08-24 16:20:39 +09:30
Daniel O'Connor 9a68c7e1c3 #645 Add a 'finish signup' flow 2015-08-24 11:41:36 +09:30
Daniel O'Connor ec597d4e6e #645 Fix minor logic error 2015-08-24 11:23:41 +09:30
twconquest 2882e3d1a5 Correct Gibbon list id to point to correct list 2015-08-21 19:29:03 +00:00
Daniel O'Connor 86e9cd0ec6 #645 Improve error handling and login_name generation. Annoyingly still a change of collisions. 2015-08-21 13:43:58 +09:30
Daniel O'Connor 3a05f75ab0 #645 Add notes around permissions/scopes of later interest 2015-08-21 13:43:24 +09:30
Daniel O'Connor 34b4d30014 #645 Enable account creation or authorisation from a facebook signin (and should work for others with minimal extra work) 2015-08-21 13:22:49 +09:30
Daniel O'Connor 89b6c47bfb #645 Configure devise / omniauth in only one spot, to avoid CSRF errors 2015-08-21 12:21:55 +09:30
Daniel O'Connor 70f48108b4 #645 Add handling for facebook 2015-08-21 12:21:23 +09:30
Daniel O'Connor df5689ec18 #645 Rename 2015-08-21 11:36:26 +09:30
Daniel O'Connor 22d72b13d5 #645 Add example keys 2015-08-21 11:36:17 +09:30
Daniel O'Connor dee7ff34c9 #645 Indicate that a member is omniauthable, so devise knows to render sign-in-with-facebook 2015-08-21 11:36:04 +09:30
Daniel O'Connor 07eb305992 #645 Ask for name, email address only 2015-08-21 11:25:57 +09:30
Daniel O'Connor c7f0076ee6 #645 Add facebook omniauth middleware 2015-08-21 11:21:44 +09:30
Daniel O'Connor 93bc5255e7 #645 Add facebook omniauth provider 2015-08-21 11:21:30 +09:30
Cesy b87194336f Wrangler has different name in tests, fixing failing test 2015-08-20 14:16:39 +00:00
Cesy 0e98f84da7 Fixing admin tests where you need to click on navmenu with JS 2015-08-20 14:06:21 +00:00
Cesy b9ce3d4fe6 Revert "Adding ids to navbar so PhantomJS can find them"
Not needed - test issue was caused by wrong link text
This reverts commit d65ab59d35.
2015-08-20 13:59:37 +00:00
Cesy d65ab59d35 Adding ids to navbar so PhantomJS can find them 2015-08-20 13:36:13 +00:00
Cesy 65e0752376 RSS feeds don't need JS 2015-08-20 13:07:25 +00:00
Cesy 3251dd1c54 Merge branch 'js_all_the_features' of github.com:pozorvlak/growstuff into phantomjs
Conflicts:
	spec/features/admin/forums_spec.rb
	spec/features/crops/alternate_name_spec.rb
	spec/features/crops/crop_detail_page_spec.rb
	spec/features/member_profile_spec.rb
	spec/features/rss/members_spec.rb
	spec/features/scientific_name_spec.rb
	spec/features/signin_spec.rb
	spec/features/signup_spec.rb
2015-08-20 12:09:18 +00:00
pozorvlak c404d8220d Merge pull request #791 from cesy/cachethumbnails
Cache thumbnails
2015-08-19 15:11:16 +01:00
Cesy 48409698ab Merge pull request #787 from twconquest/show-roles
Show roles in member profile page
2015-08-19 14:13:32 +01:00
pozorvlak 4d7c4f38ae Merge pull request #804 from cesy/issue658i18n
Issue #658 i18n
2015-08-17 19:52:10 +01:00
twconquest c2e4686a23 Add negative tests for roles on profiles 2015-08-17 18:29:00 +00:00
twconquest 24df32ba7f Merge upstream/dev into show-roles and re-add myself to CONTRIBUTORS.md
Conflicts:
	CONTRIBUTORS.md
2015-08-17 17:48:50 +00:00
Cesy 744caef4f2 Merge pull request #806 from CloCkWeRX/bump_ruby_2_1_6
Upgrade to ruby 2.1.6 for CVE-2015-1855
2015-08-13 09:06:48 +01:00
Daniel O'Connor 5cac8743f8 Upgrade to ruby 2.1.6 for CVE-2015-1855: Ruby OpenSSL Hostname Verification 2015-08-13 15:06:56 +10:00
pozorvlak 9c4d83dad3 Merge pull request #801 from CloCkWeRX/fix_cve_2015_2963
Fix CVE-2015-2963,  CVE-2015-3448, CVE-2015-1820 & CVE-2015-1840
2015-08-12 17:08:27 +01:00
Cesy fd3e69c9ab Removing footer translation as it's now in the CMS 2015-08-12 14:57:13 +00:00
Cesy b6dfeb980c i18n example 2015-08-12 14:56:36 +00:00
Cesy e8266480e5 Adding bootstrap-accessibility plugin 2015-08-12 14:17:41 +00:00
Cesy e784ec9b33 Making it trigger the crop thumbnail cache properly 2015-08-12 11:45:18 +00:00
Cesy 1df0c36e72 Keying the cache correctly 2015-08-12 10:49:48 +00:00
Cesy a5e7a8d315 Cache crop thumbnails 2015-08-12 10:49:48 +00:00
Daniel O'Connor cafd49c143 Name: jquery-rails
Version: 3.1.2
Advisory: CVE-2015-1840
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/ruby-security-ann/XIZPbobuwaY
Title: CSRF Vulnerability in jquery-ujs and jquery-rails
Solution: upgrade to >= 4.0.4, ~> 3.1.3
2015-08-12 16:59:14 +09:30
Daniel O'Connor 7c7c66348c Name: rest-client
Version: 1.7.2
Advisory: CVE-2015-3448
Criticality: Unknown
URL: http://www.osvdb.org/show/osvdb/117461
Title: Rest-Client Gem for Ruby logs password information in plaintext
Solution: upgrade to >= 1.7.3

Name: rest-client
Version: 1.7.2
Advisory: CVE-2015-1820
Criticality: Unknown
URL: https://github.com/rest-client/rest-client/issues/369
Title: rubygem-rest-client: session fixation vulnerability via Set-Cookie headers in 30x redirection responses
Solution: upgrade to >= 1.8.0
2015-08-12 16:57:58 +09:30
Daniel O'Connor 00ae4ed49f Name: paperclip
Version: 4.2.1
Advisory: CVE-2015-2963
Criticality: Medium
URL: https://robots.thoughtbot.com/paperclip-security-release
Title: Paperclip Gem for Ruby vulnerable to content type spoofing
Solution: upgrade to >= 4.2.2
2015-08-12 16:23:48 +09:30
Cesy 12a1484a26 Merge pull request #800 from CloCkWeRX/fix_all_checkbox_labels
Fix more checkbox labels in registration and email editing
2015-08-11 09:51:05 +01:00
Cesy 5bacdb71cc Merge pull request #798 from CloCkWeRX/cve-2015-3226
Minor rails version upgrade to apply security fixes
2015-08-11 08:23:58 +01:00
Cesy 6565e79057 Merge pull request #797 from CloCkWeRX/minor_usability_checkbox_login
Style checkbox for 'remember me'
2015-08-11 08:21:39 +01:00
Cesy f4e53a58de Merge pull request #799 from CloCkWeRX/patch-1
Update CONTRIBUTORS.md
2015-08-11 08:17:38 +01:00
Daniel O'Connor 97cf1347d5 Fix clickable area for checkboxes in email editing 2015-08-11 13:45:47 +09:30
Daniel O'Connor 367e298d48 Fix clickable area for checkboxes in registration 2015-08-11 13:44:17 +09:30
Daniel O'Connor e765387e22 Update CONTRIBUTORS.md 2015-08-11 10:31:43 +09:30
Daniel O'Connor 7b30c4237b Name: activesupport
Version: 4.1.9
Advisory: CVE-2015-3227
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/bahr2JLnxvk
Title: Possible Denial of Service attack in Active Support
Solution: upgrade to >= 4.2.2, ~> 4.1.11, ~> 3.2.22

Name: activesupport
Version: 4.1.9
Advisory: CVE-2015-3226
Criticality: Unknown
URL: https://groups.google.com/forum/#!topic/ruby-security-ann/7VlB_pck3hU
Title: XSS Vulnerability in ActiveSupport::JSON.encode
Solution: upgrade to >= 4.2.2, ~> 4.1.11
2015-08-11 10:28:07 +09:30
Daniel O'Connor b788cb44ef Remember that we're working in haml, not slim. 2015-08-11 10:23:50 +09:30
Daniel O'Connor f61e2438e8 Style checkbox for 'remember me' and allow it to be clickable (minor usability/mobile UI annoyance) 2015-08-10 16:08:09 +09:30
pozorvlak e503b1079d Merge pull request #796 from cesy/issue677
Fix #677 by adding organic/GMO/heirloom to CSV and RSS
2015-08-06 14:54:10 +01:00
pozorvlak ccca343959 Merge pull request #795 from cesy/issue788
Fix issue #788 with uncaught nil
2015-08-06 14:46:53 +01:00
pozorvlak 63de10efd4 Merge pull request #794 from Growstuff/revert-793-revert-790-homepagetests
Fixing #790 properly - caching posts on homepage
2015-08-06 14:30:04 +01:00
Cesy 17c5fd61a3 Fix #677 by adding organic/GMO/heirloom to CSV and RSS 2015-08-06 12:23:00 +00:00
Cesy 44b8500fa8 Fix issue #788 with uncaught nil 2015-08-06 12:12:29 +00:00
Cesy 5a12b47c7c Revert "Revert "Fixing relative caching of post summary on homepage, fixed #789"" 2015-08-06 12:37:59 +01:00
Cesy 3db13785a1 Merge pull request #792 from cesy/removing775
Revert "Merge pull request #775 from pozorvlak/speed_up_homepage"
2015-08-06 12:37:35 +01:00
Cesy 69d94f7deb Merge pull request #793 from Growstuff/revert-790-homepagetests
Revert "Fixing relative caching of post summary on homepage, fixed #789" that wasn't ready to merge yet
2015-08-06 12:36:54 +01:00
Cesy 1ec188c793 Revert "Fixing relative caching of post summary on homepage, fixed #789" 2015-08-06 12:36:21 +01:00
Cesy 438b2444df Merge pull request #790 from cesy/homepagetests
Fixing relative caching of post summary on homepage, fixed #789
2015-08-06 12:34:15 +01:00
Cesy de981689fc Revert "Merge pull request #775 from pozorvlak/speed_up_homepage"
This reverts commit fa50ff47bb, reversing
changes made to 5b19d236d0.

Once fixed, please read https://www.kernel.org/pub/software/scm/git/docs/howto/revert-a-faulty-merge.html carefully to get it back in properly.
2015-08-06 10:56:46 +00:00
Cesy 0681fac406 Correcting view test for posts 2015-08-06 09:51:14 +00:00
Cesy 9682300b85 Merge pull request #785 from sha1sum/notification_pagination
Resolved #562 - Pagination of notifications.
2015-08-06 10:40:02 +01:00
Cesy 6f95f1fecf Clarifying comment 2015-08-06 09:20:06 +00:00
Cesy 43fe29f113 Fixing relative caching of post summary on homepage, fixed #789 2015-08-06 09:18:32 +00:00
Cesy fa50ff47bb Merge pull request #775 from pozorvlak/speed_up_homepage
Speed up homepage by calculating "interesting" things more efficiently
2015-08-05 19:18:56 +01:00
Cesy 5b19d236d0 Merge pull request #783 from pozorvlak/remove_last_count_calls
Replace the last few .count and .length calls with .size where possible
2015-08-05 18:57:04 +01:00
Cesy cad2c90a4f Merge pull request #784 from pozorvlak/fail_noisily_if_no_secret
Check existence of secret token before using it.
2015-08-05 16:03:31 +01:00
Anthony Atkinson 919c25ca67 Fixing notifications index view spec to be compatible with new Kaminari pagination. 2015-08-01 11:58:13 -04:00
Anthony Atkinson 29f3cc3238 Updating new test additions and edits to features/harvests with Rspec3 Ruby2 syntax. 2015-08-01 11:39:51 -04:00
Anthony Atkinson bc9a025788 Merge branch 'dev' into notification_pagination 2015-08-01 11:38:01 -04:00
Anthony Atkinson a593aa2a4b Merge remote-tracking branch 'upstream/dev' into dev 2015-08-01 11:37:01 -04:00
pozorvlak de63fdc952 Merge pull request #786 from sha1sum/open_service_in_footer
Resolves #617 - Open Service graphic link in footer
2015-07-28 22:00:19 +01:00
twconquest e7d2ae2c40 Add myself to CONTRIBUTORS.md 2015-07-28 19:50:35 +00:00
twconquest 1019834c41 Merge branch 'dev' into show-roles
Conflicts:
	spec/features/member_profile_spec.rb
2015-07-28 19:42:55 +00:00
twconquest 362f7a78b1 Add feature test for showing roles 2015-07-28 19:33:05 +00:00
Anthony Atkinson a2eb568eac Merge remote-tracking branch 'upstream/master' into dev 2015-07-25 14:09:06 -04:00
Anthony Atkinson 9d62c012f1 Resolves #617 - Open Service graphic link in footer 2015-07-25 13:34:16 -04:00
Anthony Atkinson cbb50df8d0 Resolved #562 - Pagination of notifications. 2015-07-25 13:18:30 -04:00
Miles Gould 91a128ae7e Check existence of secret token before using it.
People were forgetting to create config/environment.yml, which meant
that RAILS_SECRET_TOKEN wasn't being set, which meant that all tests
involving notifications failed. Unfortunately, the resulting wall of
error messages (https://gist.github.com/sha1sum/5debae6b700ff8fc0c76)
did not make the root cause remotely clear, leading to much confusion
and head-scratching all round.

This commit checks for the existence of RAILS_SECRET_TOKEN and fails
with an informative error message if it's missing.
2015-07-24 15:16:31 +01:00
Miles Gould d9dd797c33 Merge branch 'pr/782' into dev 2015-07-24 11:09:35 +01:00
Miles Gould f970fc4db2 Fix another whitespace problem. 2015-07-24 11:09:22 +01:00
Miles Gould 8873986562 Merge branch 'pr/779' into dev 2015-07-24 11:05:21 +01:00
Miles Gould 40b5a47aae Remove trailing whitespace 2015-07-23 23:22:45 +01:00
Miles Gould f29c0ad085 Replace .length calls with .size 2015-07-23 23:21:55 +01:00
Miles Gould 96b0198d41 Replace remaining calls to count() with size()
The couple that aren't removed are required: for instance, there's a
Crop.count method, but no Crop.size method.
2015-07-23 23:05:39 +01:00
Miles Gould 48649d1986 Clarify comment on an order-dependent feature test 2015-07-23 22:00:06 +01:00
Miles Gould 9e2e93b544 Remove the last few .shoulds from spec/features 2015-07-23 21:57:22 +01:00
Miles Gould 1f0f55dc81 Merge branch 'pr/781' into dev 2015-07-23 19:55:57 +01:00
Mackenzie Morgan e3738ca0c6 whitespace tab/space correction 2015-07-23 13:56:23 -04:00
Mackenzie Morgan b0d4f9c731 switch homepage and members/ page member thumbnails to be a flexbox layout so it's more responsive. Fixes #780 2015-07-23 13:56:07 -04:00
Mackenzie 83b54365ba Merge pull request #768 from GabrielSandoval/gab/harvests
Created card based template for harvests, seeds, gardens, etc. Fixes #518, Fixes #517, and Fixes #570
2015-07-23 13:40:30 -04:00
Anthony Atkinson 5a33b2b754 Creating a directory for gardens under spec/features (to stay consistent with other features) and moving the creation specs from spec/gardens_spec.rb to spec/gardens/adding_gardens_spec.rb.
Also added the required and optional field tests for Garden form.
2015-07-23 11:42:04 -04:00
Anthony Atkinson 69cb87fd0f Test that required and optional fields are displaying properly on Seed form. 2015-07-23 11:36:54 -04:00
Anthony Atkinson bc058b9152 Missed a few optional field placeholders on Seed form. 2015-07-23 11:36:40 -04:00
Anthony Atkinson efd6328436 Test for required and optional field display on Harvest form. 2015-07-23 11:32:06 -04:00
Anthony Atkinson 19adabc55f Test for required and optional field display on Planting form. 2015-07-23 11:27:17 -04:00
Anthony Atkinson ccde5b230b Comments for reasoning behind adding bangs to let statements. 2015-07-23 10:12:03 -04:00
Anthony Atkinson 33f28d1727 Two tests required bangs on let statements in order to pass after refactoring. 2015-07-23 10:07:10 -04:00
AELOGICA aa3cf729c8 Added feature tests for on gardens, seeds and harvests for the card based thumbnails 2015-07-23 15:44:27 +08:00
AELOGICA 611adc0728 Fixed test errors for seeds and garden thumbnails. 2015-07-23 15:44:26 +08:00
AELOGICA a97acfb1ca Fixed display of edit glyphicon based on edit priviledge. 2015-07-23 15:44:26 +08:00
AELOGICA 7e03ef1687 Fixed display of plantings on gardens thumbnail. 2015-07-23 15:44:26 +08:00
AELOGICA c12791e428 Created card-based thumbnails for Seeds and Gardens page. 2015-07-23 15:44:25 +08:00
AELOGICA bbe7d967b4 Changed px to em and used truncate instead of srolling for long harvest descriptions. 2015-07-23 15:44:25 +08:00
AELOGICA f5336bd8f8 Created card based template for harvests. 2015-07-23 15:44:25 +08:00
Anthony Atkinson 5a35a3da01 Initial rendition of feature test upgrade to Ruby 2.x and Rspec 3.x syntax. 2015-07-22 19:48:41 -04:00
Anthony Atkinson fad9eddbc4 Addition of guard gem to assist in quicker testing. 2015-07-22 16:00:45 -04:00
Anthony Atkinson 044f62eae2 Rubymine .gitignore additions. 2015-07-22 15:54:09 -04:00
Anthony Atkinson 4786e3e087 Marking required and optional fields on Garden form. 2015-07-22 11:07:32 -04:00
Anthony Atkinson 715a004b13 Marking required and optional fields on Seed form. Purposefully marked required those select fields which have no blank option. 2015-07-22 11:05:21 -04:00
Anthony Atkinson 96a007ef3b Marking required and optional fields on Harvest form. 2015-07-22 11:02:46 -04:00
Anthony Atkinson a03d044049 Make a reusable helper for the "* denotes a required field" help text and change the Planting form to use the helper. 2015-07-22 10:59:47 -04:00
Anthony Atkinson 9a6c32fe6d Planting form with required fields marked and optional fields with "optional" placeholders or select options. 2015-07-22 10:52:08 -04:00
Anthony Atkinson fc33269f47 Reusable class for adding a 1em bottom margin to a block and .red class for red foreground color. 2015-07-22 10:51:37 -04:00
Anthony Atkinson a80001ffe7 Schema update after migration. 2015-07-22 10:39:02 -04:00
Anthony Atkinson 30032f5527 Add a red asterisk via CSS after all .form-group labels with the .required class. 2015-07-22 10:38:41 -04:00
Anthony Atkinson fa8b10af58 New contributor! 2015-07-22 10:37:54 -04:00
Anthony Atkinson 9c469fb217 .gitignore additions for users of Rubymine. 2015-07-22 10:05:04 -04:00
pozorvlak 6b944e145e Merge pull request #778 from GabrielSandoval/gab/names
Added multiple forms for scientific and alternate names on crop creation  (Fixes #615)
2015-07-17 20:25:04 +01:00
AELOGICA 7748c40ccf Added jacarandang to contributors 2015-07-17 09:16:31 +08:00
Jace Monje 745281545a added test for role checking on view 2015-07-17 09:06:18 +08:00
AELOGICA 7b3aefacd3 Hidden the +/- buttons by dby default, making them visible via JavaScript code. 2015-07-17 07:55:03 +08:00
AELOGICA 134465d023 Fixed feature errors and removed failing deprecated tests 2015-07-17 07:31:53 +08:00
AELOGICA a581b759a3 Added tests for creating crops with multiple scientific and alternate names 2015-07-17 07:31:53 +08:00
AELOGICA 734b57e395 Fixed feature test errors 2015-07-17 07:31:53 +08:00
AELOGICA 12d151b68c Added multiple forms for scientific and alternate names on crop creation 2015-07-17 07:31:51 +08:00
AELOGICA 472acd0e81 Polished UI of added forms for alternate names 2015-07-17 07:31:51 +08:00
AELOGICA 7f88b167b4 Added dynamic adding and removing additional scientific names 2015-07-17 07:31:51 +08:00
Miles Gould 897eac4fae Merge branch 'pr/727' into dev 2015-07-17 00:31:00 +01:00
Miles Gould 41ab646b20 Added @manmeetsingh to CONTRIBUTORS.md 2015-07-16 23:58:57 +01:00
pozorvlak 8c017b24e0 Merge pull request #774 from jacarandang/signout
[#568] Signout redirects to last page visited
2015-07-16 23:22:03 +01:00
pozorvlak 12e3351c77 Merge pull request #777 from GabrielSandoval/gab/member_links
Added link to owner's profile from seeds', plantings', and harvests' index page (Fixes #569)
2015-07-16 23:14:44 +01:00
AELOGICA 85e4708b71 Changed plantings_by_owner_path to seeds_by_owner_path on misc_seeds_spec.rb 2015-07-16 08:06:01 +08:00
AELOGICA 0816b6b114 Added link to owner's profile from seeds', plantings', and harvests' index 2015-07-13 10:42:06 +08:00
Jym Paul A. Carandang 91b5c3e798 Added test for signount redirection 2015-07-13 09:52:05 +08:00
Miles Gould fc1dc0e4c3 Remove unused Planting#interesting? method. 2015-07-11 14:32:27 +01:00
Miles Gould 9e7957709d Remove BUNDLED BY line from Gemfile.lock
This keeps getting removed by some automatic process, and it's
cluttering up my `git diff` output.
2015-07-11 14:32:27 +01:00
Miles Gould 492bdd915f Move the rest of Planting.interesting into the DB
We could maybe make it a scope at this point...
2015-07-11 14:32:27 +01:00
Miles Gould 07c976b1fc Filter plantings-with-photos in the DB, not Ruby. 2015-07-11 14:32:27 +01:00
Miles Gould 2faada7f14 Find interesting crops using DB queries 2015-07-11 14:32:27 +01:00
pozorvlak 133a67a8f2 Merge pull request #764 from GabrielSandoval/gab/places
Fixes #720 - Places show nearby seeds, members, and plantings.
2015-07-10 16:26:25 +01:00
pozorvlak 16dd1e5183 Merge pull request #772 from GabrielSandoval/gab/planting_icons
Added sunniness icons on plantings/_thumbnail and show page
2015-07-10 13:04:23 +01:00
AELOGICA 4193e38034 Fixed feature test errors on garden/show page. 2015-07-10 15:43:08 +08:00
AELOGICA 9eaaa8856f Added row divs for members/_gardens, gardens/show, planting/index page. 2015-07-10 15:27:34 +08:00
AELOGICA 3ea9f2b5f2 Applied the responsive planting thumbnail to plantings/index page. 2015-07-10 15:18:39 +08:00
AELOGICA 723329ac49 Made the plantings/_thumbnail partial flexible for small and large screen sizes. 2015-07-10 15:11:15 +08:00
AELOGICA 89424b931b Replaced 'sunniness_not specified.png' icon with a darker one. 2015-07-10 13:17:43 +08:00
Jym Paul A. Carandang 9f3d3b2b8f Signout redirects to last page visited 2015-07-10 12:51:36 +08:00
AELOGICA 80c1e1bf23 Removed the column headers of planting thumbnails. 2015-07-10 11:25:05 +08:00
AELOGICA 01e676678c Removed the '#' column on plantings/_thumbnail partial. 2015-07-10 11:25:05 +08:00
AELOGICA 43d7c36fc5 Created feature tests for showing nearby plantings, seeds, and members on search 2015-07-10 11:25:05 +08:00
AELOGICA 6a6f83c6a4 Added feature request #720 2015-07-10 11:25:05 +08:00
gabrielsandoval f73bb81eb6 Made sunniness icons transparent 2015-07-10 11:17:11 +08:00
AELOGICA 0407df880b Added feature tests for sunniness icons for plantings page. 2015-07-10 11:17:11 +08:00
AELOGICA 20219e23dc Added sunniness icons on plantings/_thumbnail and show page 2015-07-10 11:17:11 +08:00
pozorvlak 49bbbeb431 Merge pull request #769 from jacemonje/new-navbar
Redesigned the navbar
2015-07-10 00:24:57 +01:00
pozorvlak 82bc07ccd0 Merge pull request #762 from CjayBillones/refactor-spec-models
Refactor spec/models
2015-07-10 00:24:00 +01:00
Cesy 212651a279 Merge pull request #730 from korabh/dev
Add background to thumbnails
2015-07-09 14:24:41 +01:00
Korab Hoxha 1568f4b7d8 Update _avatar.html.haml 2015-07-09 12:14:37 +02:00
Cesy b7706d0064 Merge pull request #771 from pozorvlak/remove_release_8_tasks
Remove one-off tasks that were run for Release 8.
2015-07-09 10:23:25 +01:00
Cesy 3a232e1d08 Merge pull request #708 from oshiho3/629-thumbnails-of-crops-on-post
#629 Thumbnails of crops on post
2015-07-09 10:20:58 +01:00
Korab Hoxha a27d273978 Remove 'img-rounded' 2015-07-09 02:27:07 +02:00
Korab Hoxha 4e7b0cf698 Remove img-rounded 2015-07-09 02:26:48 +02:00
Miles Gould 28ac7ff886 Remove one-off tasks that were run for Release 8.
The ElasticSearch index task was run, but failed because we didn't have
an ElasticSearch instance to run it against.
2015-07-09 01:06:39 +01:00
Jace Monje fa0cb55789 fixed errors in tests 2015-07-09 08:01:58 +08:00
pozorvlak 42ffc49d74 Merge pull request #770 from pozorvlak/secret_token_for_staging
Set staging secret key from environment
2015-07-09 00:54:56 +01:00
Miles Gould d4d210447a Set staging secret key from environment 2015-07-09 00:47:11 +01:00
Jace Monje 7232f4614c refactored tests
fixed tests
2015-07-09 07:37:29 +08:00
Jace Monje b9a29115a2 new navbar 2015-07-09 07:14:49 +08:00
Cjay 23dbfea05a Fix spec/models/ability_spec.rb
-	Changed notification into a variable scope
- Removed let(:cw_ability) and let(:admin_ability) and just used ability
2015-07-09 07:06:21 +08:00
Miles Gould 3259291eea Merge remote-tracking branch 'upstream/pr/698' into dev 2015-07-08 23:20:16 +01:00
pozorvlak 0d0042dba8 Merge pull request #761 from CjayBillones/refactor-spec-support
Refactor spec/support
2015-07-08 22:07:25 +01:00
pozorvlak edcbc939e3 Merge pull request #728 from oshiho3/575-one-click-email-unsubscribe
#575 One click email unsubscribe
2015-07-08 22:06:29 +01:00
Cjay c568498941 Refactor spec/models
- Changed before(:each) into let
- Changed :admin_ability and :cw_ability into :ability
2015-07-09 02:21:10 +08:00
Cjay c6c8492528 Fix changes in spec/support 2015-07-09 01:59:34 +08:00
Cesy 3420f18fb9 Merge pull request #703 from soborok/issue-610
resolved issue #610 to show only current plantings
2015-07-08 17:54:30 +01:00
Mackenzie 377a54e692 Merge pull request #765 from GabrielSandoval/gab/seeds
Added feature and test for request displaying available seed count on crop page. Fixes #549
2015-07-08 11:23:01 -04:00
Jace Monje 8c1d88b663 added the admin/wrangler role check on member profile page 2015-07-08 12:07:37 +08:00
AELOGICA c746c6d6d7 Added feature and test for request #549 2015-07-08 08:35:45 +08:00
AELOGICA 7607daa83a Added feature and test for request #549 2015-07-08 08:16:32 +08:00
Miles Gould f11c1b3d54 Merge branch 'pr/759' into dev 2015-07-08 00:32:02 +01:00
pozorvlak fc44e87fb9 Merge pull request #763 from CjayBillones/refactor-spec-helpers
Refactor spec/helpers
2015-07-07 11:56:52 +01:00
pozorvlak ccc63381a6 Merge pull request #753 from CjayBillones/dev
Show edited date/time on posts/comments and Show last login date on member profile
2015-07-07 11:30:08 +01:00
Mackenzie 9b64f5fec1 Merge pull request #758 from GabrielSandoval/gab/days_before_maturity
Gab/days before maturity (#678)  Thank you! That haml looks much better.
2015-07-06 22:31:45 -04:00
AELOGICA e138b3e8ab Converted html tables to CSS classes 2015-07-07 10:08:50 +08:00
AELOGICA 92db75b3d8 Converted the ul's in the plantings thumbnail partial to definition lists 2015-07-07 08:34:03 +08:00
AELOGICA 755a60447f Made the plantings/_thumbnail partial to contain only a single object. 2015-07-07 08:20:43 +08:00
Gabriel b599818512 Delete _thumbnail.html.haml_spec.rb 2015-07-07 08:20:43 +08:00
AELOGICA 0a2d0d499c Removed unneeded methods on the plantings helper 2015-07-07 08:20:43 +08:00
AELOGICA e638acd2de Refactored further on plantings/show page 2015-07-07 08:20:43 +08:00
AELOGICA 8d5367be9a Refactored code and replaced the plantings/tumbnail view. 2015-07-07 08:20:43 +08:00
AELOGICA 516274b2b7 Added feature more feature tests on plantings creation for progress bars' status 2015-07-07 08:20:43 +08:00
AELOGICA f13a66391c Fixed errors where progress bars does not show 100% when a planting is marked as finished. 2015-07-07 08:20:43 +08:00
AELOGICA b01385a1e4 Added some tests on the days before maturity feature 2015-07-07 08:20:43 +08:00
AELOGICA 4ca4d6b030 Fixed error where progress bars do not change upon update 2015-07-07 08:20:43 +08:00
AELOGICA 3181c97a2a Added the mark as finished button on the index page. 2015-07-07 08:20:42 +08:00
AELOGICA 372a7f080d Added the days before maturity feature #678 2015-07-07 08:20:42 +08:00
Cjay Billones 29a8628c42 Refactor spec/helpers
Change before(:each) into let in spec/helpers
2015-07-07 07:38:06 +08:00
pozorvlak 6d81ef198c Merge pull request #760 from CjayBillones/refactor-rspec
Refactor spec tests
2015-07-06 22:22:17 +01:00
Cjay Billones e94cbcef02 Refactor spec
Refactor spec by changing before(:each) into let
2015-07-06 10:56:31 +08:00
Katy Ereira 9304e44c08 Add Maccath tnd CjayBillones to contributors list 2015-07-03 08:45:16 +08:00
Maccath 3a9077050e Add placeholder to harvest screen's plant part select box. 2015-07-03 08:30:04 +08:00
Cjay 64cf71ab4f Fix test for comments 2015-07-02 19:01:32 +08:00
Cjay 3fb9283ca7 Add tests for posts 2015-07-02 18:54:17 +08:00
Cjay a73d492062 Add tests for comment 2015-07-02 18:53:54 +08:00
Cjay 2528d8af8a Show edited date/time on posts/comments 2015-07-02 18:53:18 +08:00
Cjay 10cb6c18aa Show last login date on member profile 2015-07-02 18:52:11 +08:00
Cjay 34e61082b9 Add config/application.yml in gitignore
Included config/application.yml in gitignore since it contains personal configuration of developer.
2015-07-02 18:51:05 +08:00
Cjay b868364e96 Fix merge conflict in contributors 2015-07-02 18:50:30 +08:00
pozorvlak 45c0adb044 Merge pull request #757 from CjayBillones/code-refactoring
[Refactoring] Replace .count and .length with .size for collections
2015-07-02 11:12:44 +01:00
Cjay Billones 6c72345d26 Fix test 2015-07-02 11:57:45 +08:00
pozorvlak 4648464fb5 Merge pull request #751 from GabrielSandoval/search_form
Added search form on the places index page.
2015-07-01 17:43:36 +01:00
AELOGICA 429e54733d Moved the geocoder stub to ./cofig/environments/test.rb 2015-07-01 10:57:28 +08:00
pozorvlak daa8717807 Merge pull request #744 from andrba/currency_spec_refactoring
#558 Currency refactoring in specs.
2015-06-26 13:18:26 +01:00
Andrey 44b260b1e8 Currency refactoring in specs. 2015-06-26 15:54:37 +10:00
AELOGICA 9bd7448ae6 Added the feature test for searching places 2015-06-26 09:17:08 +08:00
Cjay Billones bb88041fef [Refactoring] Replace .count and .length with .size for collections
Improved program efficiency (in querying in particular) by replacing .count and .length with .size for collections.

Fix error in refactoring

Reverted some .size into .count
2015-06-25 12:09:03 +08:00
AELOGICA 87f1c6c26d Added an alert for empty string search. 2015-06-23 14:33:13 +08:00
gabrielsandoval 0e2a5fd205 Added search form on the places index page. 2015-06-21 15:24:07 +08:00
Miles Gould 5bb04dc1a4 Merge branch 'pr/745' into dev 2015-06-16 19:54:33 +01:00
Mackenzie 7cedd98b71 Merge pull request #746 from achalc/fix-fb-thumbnail
added growstuff-apple-touch-icon-precomposed.png to meta partial
2015-06-13 00:22:45 -04:00
Mackenzie 2209d65aa6 Merge pull request #748 from wingyu/dev
Issue #713:  Added flash message when photos deleted
2015-06-12 23:50:11 -04:00
Mackenzie ba906868d8 Merge pull request #747 from mauricio-gonzalez/add_autofocus_post_field
[#478] autofocus subject input
2015-06-12 23:38:41 -04:00
Andrey 4cb3444dcd Adding myself to contributors 2015-06-09 17:47:21 +10:00
Vincent Wong 60df62f3fa added flash message when deleting messages 2015-06-06 14:36:03 +10:00
Mauricio e3a620a109 [#478] autofocus subject input 2015-06-02 23:21:18 -06:00
Achal Channarasappa 3476d58642 added growstuff-apple-touch-icon-precomposed.png to meta partial 2015-06-02 20:52:03 -05:00
pozorvlak a7feac3740 Merge pull request #742 from maco/dev
Moving myself to the committers section
2015-06-01 15:55:03 +01:00
Andrey ad5730a81c Removed excessive example from notification controller specs 2015-05-27 12:08:30 +10:00
Andrey e35ebab380 Reply to notification action 2015-05-27 11:56:24 +10:00
Shiho Takagi 3b42806b77 Modified wordings 2015-05-22 13:46:19 +10:00
Mackenzie Morgan c5fbda0223 cleaning up inadvertent schema change 2015-05-20 17:10:22 -04:00
Mackenzie Morgan 38dbdc8307 Moving myself (maco) to the committer section, since I was given commit bit a couple months back 2015-05-20 17:08:21 -04:00
Skud f830ed1cf2 Merge pull request #706 from tygriffin/deprecated-test-warning
add deprecation notice to all controller and view specs
2015-05-20 10:17:15 +10:00
Skud 66402e5471 Merge pull request #731 from oshiho3/578-database-seeding-improvement
#578 More extensive database seeding - bulk creating members, gardens and plantings
2015-05-20 10:10:48 +10:00
Skud 8410b6db1e Merge pull request #700 from sksavant/photo_linkback
Linkbacks in photo view page to harvest and gardens
2015-05-20 10:08:33 +10:00
Skud aef4800ad3 Merge pull request #737 from soborok/issue-610-solved
resolved issue-610 to display only active planting
2015-05-20 10:08:11 +10:00
Skud a3b9c50fea Merge pull request #723 from cesy/moretests
More tests
2015-05-20 10:06:18 +10:00
Skud add275e772 Merge pull request #710 from cesy/secrets
Switching to new secrets format
2015-05-20 10:05:46 +10:00
Skud 9a2818baa9 Merge pull request #729 from oshiho3/621-crop-varieties-sidebar
#621 Crop varieties sidebar
2015-05-20 10:05:04 +10:00
Skud c47a1bc361 Merge pull request #740 from yez/feature/robots-dissalow-on-staging
Feature/robots dissalow on staging
2015-05-20 09:57:28 +10:00
Skud e04f78d42d Merge pull request #741 from pozorvlak/upgrade_poltergeist
Upgrade poltergeist to v1.6.
2015-05-20 09:56:24 +10:00
Skud d6b83454fe Merge pull request #732 from Growstuff/dev
Production push (release 8): request crops, search sci/alt names, garden photos, and more
2015-05-20 09:55:34 +10:00
Miles Gould 8ce7c25374 Upgrade poltergeist to v1.6.
Poltergeist v1.5.1 is nearly a year old, and relies on PhantomJS 1.8,
which is 2.5 years old and increasingly hard to find in OS package
managers.
2015-05-06 12:15:22 +01:00
Jake Yesbeck c1ab161b89 Added self to Contributors.md per guidelines 2015-05-05 09:18:32 -07:00
Jake Yesbeck 0d55b54371 Use a constant for the default robots.txt filename 2015-05-05 09:05:00 -07:00
Jake Yesbeck 46ac06698a Additional test for nonsense subdomain 2015-05-05 09:02:42 -07:00
Jake Yesbeck 81ce6ed8a3 Make sure file exists before attempting to render it 2015-05-05 08:58:33 -07:00
Jake Yesbeck 0f8d1e7db1 Change the render to render the file directly
Also assert that the response is the actual file contents
instead of mocking the method call
2015-05-04 23:37:40 -07:00
Jake Yesbeck 507e5a0ebc Robots controller and custom robots.txt files
New route to /robots.txt and some specific logic to switch
on if the subdomain is staging or not.

Staging will not allow any crawlers at all, production does not
have any current limitations
2015-05-04 23:11:41 -07:00
soborok 76608a981c resolved issue-610 to display only active planting 2015-04-07 13:10:33 -05:00
Gabrielle DeWitt 81d2f9829e Updated Contributors 2015-04-04 12:01:51 -07:00
Gabrielle DeWitt b7d7f6896e Updated Helper Spec to Match Coding Standards
Replaced before and should with let and
expect, respectively.

Issue #633
2015-04-04 12:01:43 -07:00
Gabrielle DeWitt 88e8e3a59e Added Helper for See Who's Planted Link Text
Quantity and planted_from are not required
to add a planting. This change handles
the cases where one or both attributes are
missing.

Fixes #633
2015-04-04 11:51:59 -07:00
Shiho Takagi d95bd0e063 Skip all user confirmation 2015-04-04 23:22:21 +11:00
Shiho Takagi 0c80a00f31 Pupulate sunniness and planted_from field on planting. 2015-04-04 22:56:35 +11:00
Shiho Takagi 1fe9a7d5e0 Merge branch 'dev' of https://github.com/Growstuff/growstuff into 578-database-seeding-improvement 2015-04-04 09:12:20 +11:00
Korab Hoxha bfb4053bb4 Change to "img-rounded" 2015-03-25 16:05:30 +01:00
Korab Hoxha 2aad8a0ed0 Change to "img-rounded" 2015-03-25 16:05:07 +01:00
Korab Hoxha 7c1cce40b2 Update leaflet_overrides.css.less 2015-03-25 15:50:43 +01:00
Skud d7ef598654 Merge pull request #726 from maco/approved_crops
Crop accept/reject notification improvements
2015-03-18 12:42:06 +11:00
Mackenzie Morgan bd0da36d63 reverse the rejection_explanation logic to not use != 2015-03-17 21:23:54 -04:00
Mackenzie Morgan 6dedf1b030 add test for crop.rejection_explanation function 2015-03-16 23:07:17 -04:00
Shiho Takagi c253c86787 minor improvements 2015-03-17 11:40:32 +11:00
Shiho Takagi 59d823ff8b bulk creating members, gardens and plantings 2015-03-17 02:07:43 +11:00
Korab Hoxha c8903ba25f "img-circle" for users 2015-03-15 02:43:43 +01:00
Korab Hoxha 3a5cf37dc0 "img-circle" class for members gravatar 2015-03-13 12:58:06 +01:00
Korab Hoxha 8631b1fc99 Add background to thumbnail 2015-03-13 11:33:20 +01:00
Shiho Takagi 0c6b6e0e0e added show all/less toggle button 2015-03-12 13:49:37 +11:00
Shiho Takagi 9f33f497bc improved coding 2015-03-11 13:06:23 +11:00
Mackenzie Morgan 920ca2948b add helper function for crop rejection explanation and use it on both notifier and status message 2015-03-09 00:50:34 -04:00
Shiho Takagi ad6c1ba2dc tiding up the code 2015-03-08 15:10:30 +11:00
Shiho Takagi 674d78721d Merge branch '575-one-click-email-unsubscribe' of https://github.com/oshiho3/growstuff into 575-one-click-email-unsubscribe 2015-03-08 14:29:56 +11:00
Shiho Takagi 3a1bd78252 Merge branch '575-one-click-email-unsubscribe' of https://github.com/oshiho3/growstuff into 575-one-click-email-unsubscribe 2015-03-08 14:29:28 +11:00
Manmeet Singh b9b2f4a57e Placing cursor in textarea on page load of write post and write comment views 2015-03-07 16:36:15 +05:30
Shiho Takagi e4e9b63e4d Merge branch '575-one-click-email-unsubscribe' of https://github.com/oshiho3/growstuff into 575-one-click-email-unsubscribe 2015-03-06 11:13:49 +11:00
Shiho Takagi 40adc379ae Merge branch 'dev' of https://github.com/Growstuff/growstuff into 575-one-click-email-unsubscribe 2015-03-06 10:51:09 +11:00
Mackenzie Morgan 9e53105f43 make language for crop accept/reject friendlier and if reason for rejection is 'other', give the rejection notes 2015-03-04 22:02:35 -05:00
Mackenzie 6505254e6c Merge pull request #724 from tygriffin/pending-rejected-sci-alt-names
Pending rejected sci alt names
2015-03-04 20:17:33 -05:00
Mackenzie Morgan 2d73dd2869 remove pending/rejected crops from browse and test that, change links on wrangling page to go directly to crop edit and update tests for that 2015-03-04 13:13:35 +11:00
Shiho Takagi 2abe6d7d12 show thumbnail even when there is no photo 2015-03-04 12:53:08 +11:00
Taylor Griffin ead9a250af test that status message appears when rejected / pending 2015-02-27 07:56:30 +11:00
Taylor Griffin 3a9ec8cf6d include crop approval status in sci and alt names 2015-02-27 07:39:07 +11:00
Cesy Avon 8990e803a0 Increasing coverage of plantings controller 2015-02-26 17:28:26 +00:00
pozorvlak c76e9ccbf6 Merge pull request #722 from maco/approved_crops
remove pending/rejected crops from browse and test that, change links on...
2015-02-25 20:18:26 +00:00
Shiho Takagi 375f647e2d Merge branch 'dev' of https://github.com/Growstuff/growstuff into 575-one-click-email-unsubscribe 2015-02-25 16:50:30 +11:00
Mackenzie Morgan 1b62c5cb97 remove pending/rejected crops from browse and test that, change links on wrangling page to go directly to crop edit and update tests for that 2015-02-25 00:05:56 -05:00
Shiho Takagi 0f52ea5aad one click unsubscription 2015-02-25 10:26:04 +11:00
Cesy Avon 2740b5e47b Correcting the environment variable name for secret token so Heroku is not impacted 2015-02-23 13:37:43 +00:00
Shiho Takagi 3894127f5c Merge branch 'dev' of https://github.com/Growstuff/growstuff into 629-thumbnails-of-crops-on-post 2015-02-23 21:44:01 +11:00
Shiho Takagi 17ccea4b28 moving photo on posts/show view 2015-02-23 21:43:03 +11:00
Mackenzie 7bca5c8845 Merge pull request #715 from Skud/requestcrops
Improvements to crop requests
2015-02-20 22:11:28 -05:00
Mackenzie 017df0484c Merge pull request #716 from oshiho3/PT80956846_crop_search
exclude unapproved crops from search
2015-02-20 22:04:53 -05:00
Shiho Takagi d338bab82b travis to test both with and without elasticsearch 2015-02-18 16:18:24 +11:00
Shiho Takagi 35f8c126b6 using scope for searching only approved records 2015-02-18 15:38:28 +11:00
Shiho Takagi eafe90e295 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-02-18 11:37:30 +11:00
Shiho Takagi 7b911034b8 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-02-18 11:37:11 +11:00
Shiho Takagi 798b89db11 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-02-18 11:36:21 +11:00
Shiho Takagi 506e3e550c update sql search to excludes unapproved crops 2015-02-18 11:26:14 +11:00
Shiho Takagi 8ab3167a28 update sql search to excludes unapproved crops 2015-02-18 11:15:15 +11:00
Shiho Takagi 436e7e3c59 Merge branch 'dev' of https://github.com/Growstuff/growstuff into PT80956846_crop_search 2015-02-18 10:33:48 +11:00
Skud 9f1091a1c8 Merge pull request #717 from maco/cms
change footer section names to generic footer1, footer2, footer3
2015-02-18 08:20:58 +11:00
Mackenzie Morgan 3b1e855da3 change footer section names to generic footer1, footer2, footer3 because we're going to CMS mode 2015-02-17 13:51:06 -05:00
Savant Krishna da95581099 :using size instead of count 2015-02-17 21:35:57 +05:30
Mackenzie d7f8bff17a Merge pull request #714 from Skud/search_tweaks
Fixed various problems with searches
2015-02-17 09:15:25 -05:00
Shiho Takagi a7caa2fbaa Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	spec/models/crop_spec.rb
2015-02-18 00:49:21 +11:00
Shiho Takagi b215ef03c7 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	spec/models/crop_spec.rb
2015-02-18 00:47:46 +11:00
Shiho Takagi 3cbbbc79fb Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	spec/models/crop_spec.rb
2015-02-18 00:39:56 +11:00
Shiho Takagi eb5e9e926b fixing Travis CI error 2015-02-18 00:37:58 +11:00
Shiho Takagi ef2d1eb683 fixing Travis CI error 2015-02-18 00:17:53 +11:00
Shiho Takagi 965f87393d Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	spec/models/crop_spec.rb
2015-02-17 23:56:26 +11:00
Shiho Takagi 023333b15f exclude unapproved crops from search 2015-02-17 23:52:02 +11:00
Shiho Takagi 2241a760c2 exclude unapproved crops from search 2015-02-17 23:33:39 +11:00
Skud e4dabd1725 Fix action links in sidebar - can't do stuff if not approved 2015-02-17 20:54:16 +11:00
Skud 1dfac3fb2f Improving crop request form 2015-02-17 20:44:24 +11:00
Skud d0f856d389 Fixed various problems with search matching 2015-02-17 19:20:25 +11:00
Mackenzie ac6aa730c1 Merge pull request #711 from maco/cms
move cms admin to /admin/cms at skud's request
2015-02-17 00:30:38 -05:00
Mackenzie Morgan cd12412b46 move cms admin to /admin/cms at skud's request 2015-02-16 23:19:25 -05:00
Miles Gould 9e146cde18 Merge branch 'dev' into js_all_the_features 2015-02-16 14:42:30 +00:00
Cesy Avon 9b195d1d2e Fixing line break 2015-02-16 13:42:57 +00:00
Cesy Avon eb76db93e4 Switching to new secrets format as per http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#config-secrets-yml 2015-02-16 13:34:37 +00:00
Cesy Avon 6f80102f79 Adding autoloaded crop factory for later testing 2015-02-16 12:27:18 +00:00
Shiho Takagi 90ca5ec13b added thumbnails of crops mentioned on post page 2015-02-13 23:39:31 +11:00
Taylor Griffin 28288c51fe Merge pull request #707 from oshiho3/PT80956846_crop_search
fixing issue with 1)paginating crop search and 2)crop name autocomplete
2015-02-13 06:11:29 +11:00
Shiho Takagi 70cdab96c4 fixing issue with 1)paginating crop search and 2)crop name autocomplete 2015-02-12 23:00:04 +11:00
Taylor Griffin e906d293a2 Merge pull request #702 from tygriffin/request-crop-links
Request crop links
2015-02-12 22:25:54 +11:00
Taylor Griffin abdc43ef40 Merge pull request #705 from oshiho3/PT80956846_crop_search
Fixes and improvement
2015-02-12 22:25:08 +11:00
Shiho Takagi 3ed7edbfbf merge 2015-02-12 21:09:42 +11:00
Taylor Griffin 95974ab21b add deprecation not to all controller and view specs 2015-02-12 19:52:53 +11:00
Shiho Takagi 7e9f18e89e Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-02-12 16:42:55 +11:00
Shiho Takagi e09f050088 updated the crop search query for more accurate search 2015-02-12 16:42:36 +11:00
Shiho Takagi 5bfab90b5b updated the crop search query for more accurate search 2015-02-12 16:31:57 +11:00
Nell Taylor & Heejin Park 7a064c0667 Added 'current' scope to show only current plantings on gardens/index view and added accompanying view test 2015-02-10 15:02:10 -06:00
Taylor Griffin 3289e7b950 Merge branch 'dev' of https://github.com/Growstuff/growstuff into fix-request-new-crop 2015-02-10 22:12:40 +11:00
Taylor Griffin 102763f2ab link to new crop request form 2015-02-10 22:12:22 +11:00
Skud 09a78d4661 Merge pull request #701 from Skud/search_tweaks
Search tweaks
2015-02-10 20:57:32 +11:00
Skud e0d8126514 Merge pull request #694 from maco/cms
Add comfortable mexican sofa CMS to growstuff & make footer use it
2015-02-10 20:53:50 +11:00
Savant Krishna 1c9081e788 remove duplicate test in views 2015-02-10 20:52:42 +11:00
Skud 5cceb2c4ff Merge pull request #699 from tygriffin/fix-request-new-crop
Fix request new crop
2015-02-10 20:52:37 +11:00
Skud 66fcad69fa Paginate search results, make sexy subtitles 2015-02-10 20:48:36 +11:00
Savant Krishna 9bcd2d0aa6 Test for linkback of photos to harvest/garden/planting 2015-02-10 20:01:43 +11:00
Taylor Griffin 2ab73d3df6 call site name from inside signature partial 2015-02-10 19:59:42 +11:00
Taylor Griffin 623dbdd418 fix search deleting crops 2015-02-10 19:58:43 +11:00
Skud 78c4fc36b1 Paginate search results
... and include total number in subtitle
2015-02-10 19:26:07 +11:00
Skud 9ccef5471f Added search form to crop search result page 2015-02-10 19:18:57 +11:00
Skud 0fc4c3cb4d Made search result page show a suitable title 2015-02-10 19:07:50 +11:00
Taylor Griffin c61f7b8e72 pass locals into signature partial properly 2015-02-10 18:52:24 +11:00
Taylor Griffin b81e034254 tweak permissions for alternate names just like sci names 2015-02-10 18:38:32 +11:00
Taylor Griffin 07f7572b13 extract email signature into partial 2015-02-10 18:33:54 +11:00
Taylor Griffin 2697fea249 tests back to green 2015-02-09 22:41:35 +11:00
Taylor Griffin cbb4f9d7ac add rejection notes 2015-02-09 22:17:32 +11:00
Taylor Griffin 0dbc2e1964 prevent users from seeing sci names of crops unless approved 2015-02-09 21:52:52 +11:00
Taylor Griffin 319fc12ebb add crop must be approved validation 2015-02-09 21:13:25 +11:00
Taylor Griffin 2db7bf638b improve copy for new request email 2015-02-09 20:41:28 +11:00
Savant Krishna 36a9514add linkback for harvests and gardens as well : Fixing #679 2015-02-09 17:59:31 +11:00
Skud 497121a221 Merge pull request #695 from sksavant/member_sort
Functionality to sort members by recently joined : Issue #550
2015-02-09 17:53:11 +11:00
Savant Krishna e17a3a2ab1 Addition to Contributors list 2015-02-09 17:47:31 +11:00
Savant Krishna 49a5a26f17 Functionality to sort members by recently joined : Issue #550 2015-02-09 17:47:25 +11:00
Mackenzie Morgan b66b8263c1 resolving schema merge 2015-02-09 00:06:18 -05:00
Mackenzie Morgan c3429cc0f3 adding admin access test for cms, and changing the cms admin path, and adding a link for it to the admin page, and updating the navbar so i can actually target the sign-in link in the test. also removing sample fixture gencode from cms installation 2015-02-09 00:05:02 -05:00
Skud f7a2ec2054 Merge pull request #676 from pozorvlak/seed_properties
New seed properties: days until maturity, organic, GMO, heirloom
2015-02-09 14:07:20 +11:00
Skud 95ecdad024 Merge pull request #650 from robertlandreaux/add-crop-wrangling-link
add wrangle crop button to browse crops page
2015-02-09 14:06:28 +11:00
Miles Gould e6cbbb3e3d Use fieldset instead of abusing .input-group.
As discussed in
https://github.com/Growstuff/growstuff/pull/676#issuecomment-73072087
and following comments by @maco and @Skud.
2015-02-07 13:23:31 +00:00
robertlandreaux b78ccaa097 fix crop_wrangling_button_spec.rb 2015-02-06 21:57:47 -05:00
robertlandreaux 593d6e7ec1 Merge branch 'dev' of https://github.com/Growstuff/growstuff into add-crop-wrangling-link 2015-02-06 21:29:18 -05:00
Skud 4c6b96e590 Merge pull request #687 from tygriffin/crop-request
Crop request
2015-02-06 13:55:08 +11:00
Taylor Griffin 8631c78f9a Merge branch 'dev' of https://github.com/Growstuff/growstuff into crop-request 2015-02-06 07:36:52 +11:00
Taylor Griffin a69ad34359 add link to search crops 2015-02-06 07:36:43 +11:00
Taylor Griffin 1099e4c9fe update copy for new / edit crop form 2015-02-06 07:34:01 +11:00
Skud 3a53f4f8a8 Merge pull request #686 from yoongkang/mydev
Allow the planting reminder spec to test links in emails properly
2015-02-05 13:53:17 +11:00
Taylor Griffin 076a6cc1df catch up with upstream dev 2015-02-04 21:41:42 +11:00
Taylor Griffin b842bff9cb wip: fix misc tests 2015-02-04 18:36:14 +11:00
Taylor Griffin 80a28085f1 make pending crops unviewable to regular members 2015-02-04 14:44:12 +11:00
Taylor Griffin 0dd8cbccf0 refactor default scope on crop 2015-02-04 14:21:35 +11:00
Taylor Griffin abece6473b make rejected and pending crops viewable on wrangle crops page 2015-02-04 14:18:10 +11:00
Taylor Griffin ff1b941690 validate that a crop hasn't already been rejected or approved 2015-02-04 06:56:51 +11:00
Skud 85a6eb6195 Merge pull request #693 from maco/standard_weights
make the one-off save the si weight
2015-02-03 20:10:37 +11:00
Mackenzie Morgan 87bfceb035 make the one-off save the si weight 2015-02-02 23:49:07 -05:00
Mackenzie Morgan b95975d632 swap footer over to CMS snippets and set CMS to use Devise for auth 2015-02-02 23:47:53 -05:00
Mackenzie Morgan 075cdb8272 Merge branch 'dev' of github.com:growstuff/growstuff into cms 2015-02-02 23:11:51 -05:00
Taylor Griffin 7db4dee61a add alert on crop show when rejected 2015-02-03 13:30:21 +11:00
Taylor Griffin 0993917dc6 define approval status options in model 2015-02-03 13:28:44 +11:00
Taylor Griffin d6cb20e2c4 make reasons for rejection a select input 2015-02-03 13:27:41 +11:00
Taylor Griffin 3e65656c7b add meta data to crop pending alert 2015-02-03 13:25:14 +11:00
Taylor Griffin 47dc94f820 reason_for_rejection is required if marked as rejected 2015-02-03 13:18:59 +11:00
Miles Gould c1870d46a2 Merge branch 'dev' into seed_properties
Conflicts:
	db/schema.rb
2015-02-02 17:45:49 +00:00
pozorvlak 1988c22626 Merge pull request #692 from Skud/elasticsearch-test-failures
Fixed test failure if elasticsearch isn't present in test env
2015-02-02 17:00:53 +00:00
Yoong Kang Lim a795d452c6 Remove redundant have_content expectations 2015-02-02 21:15:46 +11:00
Shiho Takagi 656b0e44d8 fixing issue with elasticsearch option false in dev 2015-02-02 18:40:24 +11:00
Skud af39df5e0c Fixed test failure if elasticsearch isn't present in test env 2015-02-02 18:20:16 +11:00
Mackenzie Morgan 1f23e1a646 merge from upstream 2015-02-01 22:08:28 -05:00
Skud ca47127197 Merge pull request #684 from maco/standard_weights
Standard weights for harvests
2015-02-02 14:06:39 +11:00
Mackenzie Morgan 7ca89908cd merge from upstream 2015-02-01 22:00:52 -05:00
Mackenzie Morgan 2c94f61843 use %0.3f instead of %0.2f so we get to gram-granularity, and don't duplicate code 2015-02-01 21:59:33 -05:00
Mackenzie Morgan 7326acba81 add cms routes 2015-02-01 21:56:06 -05:00
Skud 77b4b76f14 Merge pull request #648 from oshiho3/PT80956846_crop_search
PT80956846 crop search

Fixes #649 as well.

Notes for deployment:

Edit config/application.yml to include GROWSTUFF_ELASTICSEARCH: "true" for dev and prod

Run:

    figaro heroku:set -e staging --app growstuff-staging
    heroku addons:add bonsai --app growstuff-staging

(or prod as appropriate)
Note: if you get a heap of figaro errors, you probably need to quote the value strings in your application.yml (especially numeric ones).

Now I'm ready to actually merge.  The indexing will happen as part of deploy-tasks.sh.
2015-02-02 11:14:16 +11:00
Miles Gould eca27d18ea Reword "days until maturity" on seed form. 2015-02-01 18:14:25 +00:00
Taylor Griffin 2f67ffd2f8 fix regressions 2015-02-02 00:01:49 +11:00
Taylor Griffin 40d13fadb3 write feature spec for requesting a crop 2015-02-01 23:29:31 +11:00
Taylor Griffin 3791f4aa6f validate wikipedia url only if crop is approved 2015-02-01 22:43:48 +11:00
Yoong Kang Lim 79c60dc7c7 Allow the planting reminder spec to test links in emails properly 2015-02-01 22:26:44 +11:00
Miles Gould 5035b65883 Fix stupid call-nonexistent-method bug in tests. 2015-02-01 10:11:55 +00:00
Taylor Griffin 4211ebec76 add request notes to crop request 2015-02-01 17:56:51 +11:00
Taylor Griffin d02edc3dd1 don't show sci name fields to regular users in crop form 2015-02-01 17:42:21 +11:00
Taylor Griffin e86200b942 requester receives a message when crop request is rejected 2015-02-01 17:32:49 +11:00
Taylor Griffin 776b5450f9 requester receives email when crop request is approved 2015-02-01 17:20:48 +11:00
Taylor Griffin c80b42d9bc change from approved boolean to approval_status string 2015-02-01 16:52:31 +11:00
Mackenzie Morgan 6aa37e6e26 adding CMS via comfortable mexican sofa gem 2015-02-01 00:27:04 -05:00
Miles Gould 089a3d5c24 Merge branch 'dev' into seed_properties
Conflicts:
	db/schema.rb
2015-02-01 00:03:10 +00:00
Miles Gould 1741567e19 Add tests for display of date ranges.
They fail for me with the error

undefined method `days_until_harvest_min=' for #<Seed:0x0000000b8dfcd8>
2015-01-31 23:59:27 +00:00
Mackenzie Morgan de5b16e384 back to kg for si weight, also now adding si_weight to the csv correctly 2015-01-31 18:35:29 -05:00
Taylor Griffin a8c203aea0 send emails to all crop wranglers when a new crop is requested 2015-02-01 09:32:50 +11:00
Shiho Takagi 2aa30475e9 merge 2015-02-01 00:14:52 +11:00
Shiho Takagi 9a5e15b292 index when sci name or alt name is updated 2015-01-31 23:59:46 +11:00
Mackenzie Morgan bb9695b272 add check for nil to set_si_weights and the corresponding deploy script and update test 2015-01-31 00:45:31 -05:00
Mackenzie Morgan d436fd86f8 use ruby-units to handle conversion. note: the deploy task isn't working and i don't know why 2015-01-31 00:22:35 -05:00
Mackenzie Morgan 3f393b0937 moving si_weight population to one-off 2015-01-30 23:17:42 -05:00
Mackenzie Morgan fb271633d9 Merge branch 'dev' of github.com:growstuff/growstuff into standard_weights 2015-01-30 22:48:50 -05:00
Taylor Griffin e40fad76fd exclude pending approval crops from default crops scope 2015-01-31 10:39:17 +11:00
Taylor Griffin 41db12d8d7 pending approval crops appear on crops wrangle page 2015-01-31 10:36:02 +11:00
Taylor Griffin 28d29291a7 any member can create a crop at least provisionally 2015-01-31 10:03:44 +11:00
Taylor Griffin 22e0379769 give crops a requester 2015-01-31 09:54:59 +11:00
pozorvlak b60bbbcb4e Merge pull request #682 from maco/dev
fixing harvest csv so it doesn't error
2015-01-30 15:54:58 +00:00
Mackenzie Morgan 0da121a48d adding test for harvest csv 2015-01-29 22:27:09 -05:00
Skud 6b6ffd6e58 Merge pull request #653 from rocky-jaiswal/issues/625_add_context_for_logged_out_users
Show friendly message to unregistered users who view posts.
2015-01-30 12:37:48 +11:00
Rocky Jaiswal 21dbf87ab9 Merge branch 'issues/625_add_context_for_logged_out_users' of github.com:rocky-jaiswal/growstuff into issues/625_add_context_for_logged_out_users 2015-01-29 12:03:40 +01:00
Rocky Jaiswal a5fcd9f860 Merge branch 'dev' of github.com:Growstuff/growstuff into issues/625_add_context_for_logged_out_users 2015-01-29 12:03:27 +01:00
Rocky Jaiswal 2853bf5c70 Merge pull request #1 from Skud/rocky-jaiswal-issues/625_add_context_for_logged_out_users
Rocky jaiswal issues/625 add context for logged out users
2015-01-29 12:02:19 +01:00
Mackenzie Morgan 2d55d88db8 fixing harvest csv so it doesn't error 2015-01-29 00:49:23 -05:00
Mackenzie Morgan 2567e7cd74 adding tests (not passing, need to figure out saving mid-test), fixing before_save, adding CSV column, and adding task to set the si_weight throughout the db 2015-01-29 00:27:53 -05:00
Mackenzie Morgan e2bac619b7 Merge branch 'dev' of github.com:growstuff/growstuff into standard_weights 2015-01-28 23:10:10 -05:00
Mackenzie Morgan 0bdab0d9fc basics of harvest standardized weights 2015-01-28 23:00:16 -05:00
Skud e55fe55dc7 Merge pull request #680 from maco/garden_photos
Garden photos
2015-01-29 09:48:39 +11:00
Mackenzie Morgan 5a474d523c merge from upstream 2015-01-27 22:35:19 -05:00
Mackenzie Morgan d126392ee2 display garden photos on member page garden tabs too 2015-01-27 00:58:44 -05:00
Mackenzie Morgan c38dc4661d basics of garden photos 2015-01-27 00:54:05 -05:00
Mackenzie Morgan 675ac5a03f add before_save for harvest weight and index for harvest photos 2015-01-26 22:26:21 -05:00
Miles Gould 233f9dfd88 Split "days until maturity" into min and max fields. 2015-01-26 19:20:33 +00:00
Shiho Takagi b414598b07 adding comments for search options 2015-01-26 22:50:47 +11:00
Shiho Takagi 2c4e768a3a fixing wrong file name 2015-01-26 22:30:19 +11:00
Shiho Takagi 04d61bd040 deployment sript 2015-01-25 16:18:26 +11:00
Shiho Takagi 5a96b7efd6 adding a rake task to generate elasticsearch index 2015-01-25 15:47:40 +11:00
Miles Gould 329e147add Show new seed props in detail page 2015-01-24 12:34:14 +00:00
Miles Gould 334b5bf63f Test new seed properties on detail page 2015-01-24 12:34:09 +00:00
Miles Gould 58940a6765 Add new seed properties to feature. 2015-01-24 12:13:57 +00:00
Miles Gould 2442539e1b Allow feature tests and unicorn to run at the same time 2015-01-24 12:08:02 +00:00
Miles Gould b56237115e Add form and controller for new seed properties 2015-01-24 12:01:11 +00:00
Miles Gould 038192095d Validate all numeric fields as being >= 0. 2015-01-24 11:54:17 +00:00
Miles Gould 9a18b4b62b Add new properties to seeds
Added days_until_maturity, gmo, organic and heirloom properties; added
validation and tests for the last three.
2015-01-24 11:31:35 +00:00
Skud c6f5abc036 Made info alerts be green like Growstuff is green 2015-01-24 21:07:41 +11:00
Skud ad76a04e8f Fixed misnamed feature test 2015-01-24 21:07:27 +11:00
Skud 0b70be4939 Merge branch 'issues/625_add_context_for_logged_out_users' of https://github.com/rocky-jaiswal/growstuff into rocky-jaiswal-issues/625_add_context_for_logged_out_users 2015-01-24 20:45:14 +11:00
pozorvlak da2590791e Merge pull request #665 from pozorvlak/500_on_follow
Fix the 500 server error when you try to follow another user
2015-01-23 23:45:03 +00:00
Miles Gould 79a7958519 Don't try to load a Follow before it's been created. 2015-01-23 11:39:20 +00:00
Miles Gould f4d452f3bc Turn on PhantomJS for Follows features. 2015-01-23 11:39:20 +00:00
Miles Gould d08e2f09db Add feature test for 500-on-follow error
This doesn't actually catch the problem; I'm committing it so other
people can see it and suggest ways of making it stronger.
2015-01-23 11:39:20 +00:00
pozorvlak d5cc3f300a Merge pull request #664 from pozorvlak/travis_containers
Deployment from Travis containers
2015-01-23 11:00:11 +00:00
Skud 1982cecc31 Merge pull request #673 from tygriffin/sci-names-permitted-params
Sci names permitted params
2015-01-23 13:40:47 +11:00
Taylor Griffin 2f05f1dbdb raise exceptions on unpermitted params in staging 2015-01-23 13:22:52 +11:00
Taylor Griffin a67a55c599 add scientific name to crops create feature spec 2015-01-23 13:21:47 +11:00
Taylor Griffin 253b5a3f85 define permitted param for nested attribute 2015-01-23 13:20:37 +11:00
Taylor Griffin 45aaf31722 Merge branch 'dev' of https://github.com/Growstuff/growstuff into sci-names-permitted-params 2015-01-23 13:19:33 +11:00
Taylor Griffin d0b9917e84 Merge pull request #671 from Growstuff/revert-669-sci-names-permitted-params
Revert "Sci names permitted params"
2015-01-23 13:14:42 +11:00
Taylor Griffin 32dcacf9ba copy schema from last known correct version 2015-01-23 13:14:13 +11:00
Taylor Griffin 0e0c309c15 Revert "Sci names permitted params" 2015-01-23 11:42:42 +11:00
Miles Gould 6d1385f00c Turn on PhantomJS for all feature tests. 2015-01-22 23:55:20 +00:00
pozorvlak dabfeeea3c Merge pull request #669 from tygriffin/sci-names-permitted-params
Sci names permitted params
2015-01-22 23:46:27 +00:00
Taylor Griffin 20b9996f14 raise exceptions on unpermitted parameters in staging 2015-01-23 10:15:06 +11:00
Taylor Griffin 1ea5257da4 include sci names in create crop feature spec 2015-01-23 09:56:23 +11:00
Taylor Griffin 3c360ab1b8 specify permitted params for nested attributes 2015-01-23 09:22:13 +11:00
pozorvlak b1c60572ef Merge pull request #668 from cesy/moretests
More tests
2015-01-22 22:01:23 +00:00
Cesy Avon 14ad572f18 Adding test for products 2015-01-22 16:21:10 +00:00
pozorvlak 1481d01cf8 Merge pull request #667 from cesy/moretests
More tests
2015-01-22 15:42:11 +00:00
Cesy Avon 492781ea3d The test that's currently failing on some branches 2015-01-22 14:40:11 +00:00
Cesy Avon 542d978d9c Adding extra tests for crop wrangling 2015-01-22 14:24:03 +00:00
Cesy Avon c893dcd271 Moving file to sensible location for crop wrangling test 2015-01-22 14:19:47 +00:00
Miles Gould 57552455e3 Get Heroku app from .travis.yml 2015-01-21 09:13:07 +00:00
Skud fe69e2f11d Merge pull request #663 from rocky-jaiswal/minor/less_verbose_dev_logging
Add quiet_assets to reduce noise in dev environment.
2015-01-21 18:36:33 +11:00
Shiho Takagi 684a3d2229 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-21 16:50:45 +11:00
Shiho Takagi 3d738e1b7c Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-21 16:50:21 +11:00
Shiho Takagi a5daa156ab Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-21 16:48:59 +11:00
Shiho Takagi 018b2b4711 elasticsearch to be turned off as a default in dev and test 2015-01-21 16:47:22 +11:00
Shiho Takagi d12ec968c4 elasticsearch to be turned off as a default in dev and test 2015-01-21 16:44:59 +11:00
Miles Gould 531a0bd9ea Roll our own heroku maintenance:(on|off) script
This allows us to use maintenance mode without installing the full
Heroku toolbelt, which we can't do on the (much faster!) container-based
infrastructure.

We add a (temporary) deployment to my sandbox from the travis_containers
branch: muckingabout with one branch for both container-based and
VM-based approaches was starting to get confusing.
2015-01-21 00:36:47 +00:00
Rocky Jaiswal 7950c577e9 Add quiet_assets to reduce noise in dev environment. 2015-01-20 19:45:29 +01:00
Rocky Jaiswal 3bc77f9b09 Merge branch 'dev' of github.com:Growstuff/growstuff into issues/625_add_context_for_logged_out_users 2015-01-20 19:15:23 +01:00
Rocky Jaiswal 05260c05c2 incorporating feedback comments for showing message for logged out users. 2015-01-20 19:14:50 +01:00
Rocky Jaiswal d0ea54237e increase font-weight for urls in alerts. 2015-01-20 19:14:04 +01:00
Robert Landreaux f404d54d02 update crop_wrangling_button_spec.rb 2015-01-20 12:08:58 -05:00
Miles Gould 5a2d9eabf4 Turn on Bundler caching on Travis 2015-01-20 09:16:00 +00:00
Miles Gould 1b936100e7 Trying out container-based Travis. 2015-01-20 08:47:06 +00:00
Miles Gould 34ea6eb37f Turning on maintenance mode for deploys, attempt 3 2015-01-20 08:20:44 +00:00
Miles Gould 2c006ec430 Remove stray "app: tranquil-basin" 2015-01-20 08:17:41 +00:00
Shiho Takagi f541261e43 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-20 13:20:56 +11:00
Shiho Takagi f910fdfa73 use elasticsearch for auto-suggest 2015-01-20 13:20:13 +11:00
Miles Gould 72f86c4ad0 Don't auto-deploy to production.
We need this to be stable and tested on staging (including environment
variables and maintenance mode) before we turn it on for production.
2015-01-19 23:59:27 +00:00
pozorvlak 0cb192ce36 Merge pull request #647 from Skud/followability
Tidied up authorization around follows
2015-01-19 23:46:55 +00:00
Miles Gould 3aadc5d68f Deploy to different apps based on branch 2015-01-19 23:05:15 +00:00
Miles Gould 1387f381d2 Run migrations and scripts on successful build. 2015-01-19 21:52:38 +00:00
pozorvlak 7257f2e557 Merge pull request #655 from cesy/issue640mincontainer
Issue #640 mincontainer
2015-01-19 21:29:46 +00:00
Miles Gould 025bfdb4b0 Test deployment with Travis. 2015-01-19 21:22:07 +00:00
Robert Landreaux 1a50566328 modify test, still needs work 2015-01-19 11:14:36 -05:00
Cesy Avon ae914daa0c Whitespace and commenting 2015-01-19 13:56:06 +00:00
Cesy Avon b984475335 Changing percentage so it doesn't get too tall 2015-01-19 13:54:13 +00:00
Cesy Avon 59f5101858 Issue 640 corrected code 2015-01-19 13:50:32 +00:00
Cesy Avon e7d3e4d6dd Issue 640 container min-height setting up id 2015-01-19 13:25:16 +00:00
Shiho Takagi 79e1835216 use elasticsearch for auto-suggest 2015-01-19 15:45:59 +11:00
Robert Landreaux e4072fb395 write 'crop_wrangling_button_spec.rb', fix previous issue 2015-01-18 23:25:38 -05:00
Shiho Takagi 666d6dac48 adding elasticsearch service to Travis 2015-01-19 15:24:11 +11:00
Skud ea5b340933 Merge pull request #654 from Growstuff/dev
Hotfix: fix CSS for homepage and browse crops
2015-01-19 10:25:48 +11:00
Rocky Jaiswal 534c299383 Show friendly message to unregistered users who view posts.
https://github.com/Growstuff/growstuff/issues/625
2015-01-18 20:28:00 +01:00
Shiho Takagi 99eb33ccbb clearning up the code 2015-01-18 12:23:54 +11:00
Robert Landreaux 760e5ca74e remove failing line and add '- if can? :wrangle, Crop' 2015-01-17 12:21:01 -05:00
Shiho Takagi cd57c9cd34 updated test so elasticsearch index is deleted before every test 2015-01-18 00:24:51 +11:00
Shiho Takagi 2a184bcb2e updated test spec for improved elasticsearch syncing method 2015-01-18 00:20:50 +11:00
Taylor Griffin df63819602 Merge pull request #652 from Skud/cropcss
Fixed CSS errors with text wrapping
2015-01-17 23:15:31 +11:00
Skud 628d5b24c1 Fixed CSS errors with text wrapping 2015-01-17 21:27:08 +11:00
Shiho Takagi 8221d5b441 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-17 19:16:04 +11:00
Shiho Takagi ad7cfdabd0 cleaning up the code 2015-01-17 19:11:07 +11:00
Shiho Takagi 4237dfb269 cleaning up the code 2015-01-17 18:28:45 +11:00
Robert Landreaux c512b079fa add wrangle crop button to browse crops page 2015-01-17 00:20:11 -05:00
Shiho Takagi b4cd151a03 merge from upstream 2015-01-17 14:09:45 +11:00
pozorvlak eab958eac4 Merge pull request #646 from Skud/imgrounded
got rid of all img-rounded classes
2015-01-16 15:34:10 +00:00
Skud 17e94e01d0 Tidied up authorization around follows 2015-01-17 00:57:05 +11:00
Shiho Takagi 6451077d1d Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-17 00:40:02 +11:00
Shiho Takagi ce265e281a cleaning up the code 2015-01-17 00:37:37 +11:00
Shiho Takagi f4511c79e6 cleaning up the code 2015-01-17 00:35:57 +11:00
Shiho Takagi 06c7703628 auto-suggest to use existing search 2015-01-17 00:31:01 +11:00
Shiho Takagi 619e8590c8 updated test spec for view change 2015-01-17 00:29:11 +11:00
Shiho Takagi 88efcf4da6 updated test spec for view change 2015-01-17 00:25:34 +11:00
Shiho Takagi 556ba33172 updated crop search view 2015-01-17 00:09:39 +11:00
Skud 9d7b939d42 got rid of all img-rounded classes 2015-01-16 23:24:54 +11:00
Shiho Takagi 0bea278c5c Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-16 23:10:28 +11:00
Shiho Takagi 65814f1ef6 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-16 23:10:08 +11:00
Skud 1a7fc57f66 Merge pull request #643 from Growstuff/dev
Production push: release 7
2015-01-16 22:24:08 +11:00
Shiho Takagi db0eb3e4da Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-16 22:20:36 +11:00
Skud 175996ce90 Merge pull request #637 from pozorvlak/update_contributors
Update CONTRIBUTORS.md with the current committers
2015-01-16 22:09:42 +11:00
Shiho Takagi 323f635b7b Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-16 22:03:01 +11:00
pozorvlak f70f82014f Merge pull request #642 from Skud/release7_tweaks
Release7 tweaks
2015-01-16 11:02:31 +00:00
Skud 8756808444 Show members on homepage 3-across (not 2-across) 2015-01-16 21:47:24 +11:00
Skud bb6e798bce Fix stylesheets for various thumbnail displays 2015-01-16 21:46:44 +11:00
Skud a5c226d128 Tweaked homepage crop display to match resized columns
- made columns 8/4 rather than 6/6
- show 8 interesting crops, not 12
- show 6 recent plantings, not 4
- use crop thumbnail with visible name/info/etc, rather than popup
version
- tweaked aforementioned thumbnail to have no border, and centre-align
the text
2015-01-16 21:37:15 +11:00
Shiho Takagi 729dba8e0b Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-16 10:30:15 +11:00
Shiho Takagi 85c3e74cdd Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-16 10:29:39 +11:00
Miles Gould c7bcbf6323 Update CONTRIBUTORS.md with the current committers 2015-01-15 14:49:12 +00:00
pozorvlak f3302a9e30 Merge pull request #636 from rocky-jaiswal/upgrade/update_rails_4_1_9
Upgrade/update rails 4 1 9
2015-01-15 14:42:31 +00:00
Rocky Jaiswal 1e331fc19d adding rocky jaiswal in contributors. 2015-01-15 15:25:42 +01:00
Rocky Jaiswal 31a7011260 update to latest patch on rails 4.1 2015-01-15 15:25:21 +01:00
pozorvlak 181c36cdc9 Merge pull request #635 from tygriffin/fix-cache-key
Fix cache key
2015-01-15 11:37:24 +00:00
Taylor Griffin 36ac0b75e7 decoy commit to test if travis / phantomjs error was spurious 2015-01-15 22:23:27 +11:00
Shiho Takagi f9cec41360 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-15 21:44:57 +11:00
Shiho Takagi 19dcf6f3d5 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-15 21:44:04 +11:00
Taylor Griffin d5aef16860 add comment 2015-01-15 21:35:10 +11:00
Shiho Takagi 1d28c30680 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search 2015-01-15 21:33:22 +11:00
Shiho Takagi 9a3c4e69e8 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	app/models/crop.rb
2015-01-15 21:32:46 +11:00
Taylor Griffin 55ba535353 pass in additional parameters to make a more uniquely identifying cache key 2015-01-15 21:21:40 +11:00
Shiho Takagi 56025d3d33 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	app/models/crop.rb
2015-01-15 19:34:25 +11:00
Shiho Takagi 59cae7a8ce Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	app/models/crop.rb
2015-01-15 19:33:27 +11:00
Shiho Takagi 9a9f859b70 Merge branch 'PT80956846_crop_search' of https://github.com/oshiho3/growstuff into PT80956846_crop_search
Conflicts:
	app/models/crop.rb
2015-01-15 19:31:14 +11:00
Shiho Takagi ba3a1f6298 Integrate Elasticsearch and implement crop search against scientific_name 2015-01-15 19:28:28 +11:00
Shiho Takagi 10e6e7c3cb Integrate Elasticsearch and implement crop search against scientific_name 2015-01-15 19:05:02 +11:00
Taylor Griffin a510489570 Merge pull request #631 from Skud/newfooter
New footer
2015-01-14 22:45:41 +11:00
Taylor Griffin fcbc6002d1 Merge pull request #623 from pozorvlak/seo_crop_detail_page
Add SEO-friendly language to the crop detail page
2015-01-14 22:40:25 +11:00
Skud eeb48e2ad6 Removed sidebar from homepage.
Also removed extraneous view tests for things we no longer have.
2015-01-13 20:13:33 +11:00
Skud b114ed2414 Improved sitewide footer (fixes #526) 2015-01-13 20:07:59 +11:00
Skud 1064f39020 Merge pull request #626 from pozorvlak/authentications_page_die_die_die
Remove authentications page and extraneous routes
2015-01-13 10:39:06 +11:00
Skud b5a460a1b7 Merge pull request #624 from pozorvlak/inflections
Add inflections for irregular plural crop names
2015-01-13 10:38:58 +11:00
pozorvlak 9a961b80e5 Merge pull request #627 from tygriffin/seed-by-env
don't load test and admin users in staging
2015-01-12 13:55:37 +00:00
Taylor Griffin 7bc05fa118 typo 2015-01-12 22:16:42 +11:00
Taylor Griffin f7af7e649d update comment to reflect code changes 2015-01-12 20:13:00 +11:00
Taylor Griffin 4efb93ea45 don't load test and admin users in staging 2015-01-12 07:48:48 +11:00
Miles Gould a5edb6497c Display lack-of-posts nicely on crop page. 2015-01-11 12:08:57 +00:00
Miles Gould d6314ea9a1 SEO: add crop name everywhere 2015-01-11 12:08:57 +00:00
Miles Gould c244ca672f Add tests for SEO of crop detail page 2015-01-11 12:08:57 +00:00
Miles Gould 401777cc4c Add some irregular plurals. 2015-01-11 12:02:02 +00:00
Miles Gould 7ef8afb1ba Tests for crop inflections 2015-01-11 12:02:02 +00:00
Miles Gould e25bb5578a Remove extraneous authentication routes. 2015-01-11 11:57:13 +00:00
Miles Gould 401f3e176e Remove the authentications index page 2015-01-11 11:57:13 +00:00
Taylor Griffin 10ae117914 Merge pull request #451 from tygriffin/rails4-upgrade
Rails4 upgrade
2015-01-11 21:12:44 +11:00
Taylor Griffin 86cea2ad9f add current_password to permitted params 2015-01-11 14:55:12 +11:00
Taylor Griffin ccef46a5cf add more permitted parameters to member update 2015-01-11 14:32:19 +11:00
Taylor Griffin c803da3dfa fix planted_at on planting create bug 2015-01-11 14:00:51 +11:00
Taylor Griffin 02ff45f705 broaden seeding for staging env 2015-01-11 09:41:04 +11:00
Taylor Griffin 8a05a959c3 remove depricated method 2015-01-10 15:46:36 +11:00
Taylor Griffin e5d407b1ce replace depricated method 2015-01-10 15:35:54 +11:00
Taylor Griffin 5cd53be5be change post route to get per omniauth docs 2015-01-10 14:59:04 +11:00
Taylor Griffin c6cc8ee6bb configure devise account update for strong parameters 2014-12-31 18:32:37 +11:00
Taylor Griffin eaf4ea04ac Merge branch 'dev' of https://github.com/Growstuff/growstuff into rails4-upgrade 2014-12-20 20:45:13 +11:00
Taylor Griffin 007f7112a7 replaced caching using observers with a key-based (and simplified) caching system 2014-12-19 21:17:43 +11:00
Skud 9d49a83918 Merge branch 'dev' of https://github.com/Growstuff/growstuff into dev 2014-12-17 17:34:42 +11:00
Skud 901fed7d35 Added non-code contribution tips 2014-12-17 17:34:18 +11:00
Skud 6deb0c659a Removed references to PT 2014-12-17 17:34:06 +11:00
Taylor Griffin f62fd8484a get rid of annoying warning about doubly loaded files when running tests 2014-12-15 21:13:22 +11:00
Taylor Griffin 849bdac81b include module that holds expire_fragment method 2014-12-15 21:02:44 +11:00
Taylor Griffin c1d2f2c9cc resolve conflicts 2014-12-15 07:17:11 +11:00
Taylor Griffin d92d22d99c include ActionController::Caching in Sweeper class 2014-12-14 21:03:10 +11:00
Taylor Griffin 8829acba3f removed depricated method 2014-12-14 15:54:43 +11:00
Taylor Griffin 66c4a19ad6 revert to previous smtp settings 2014-12-14 15:41:29 +11:00
Taylor Griffin a65b78084f change staging smtp settings 2014-12-14 15:36:56 +11:00
Taylor Griffin cdaa9c03a2 Merge branch 'rails4-upgrade' 2014-12-14 14:51:36 +11:00
Taylor Griffin a35a573b2b update follow member code to be rails 4 compatible 2014-12-14 14:51:18 +11:00
Taylor Griffin 0afd9dfbe2 Merge pull request #608 from pozorvlak/libv8_fix
Fix problems installing libv8 on OS X.
2014-12-14 12:08:01 +11:00
Miles Gould c446ea9232 Upgrade libv8 to v3.16.14.7.
The old version was breaking `bundle install` on OS X.
2014-12-13 11:56:18 +00:00
Miles Gould 43c241219d Update .ruby-version to match Gemfile. 2014-12-13 11:56:18 +00:00
Skud 77e424c412 Merge branch 'juzham-facebook_button' into dev 2014-12-13 08:26:22 +11:00
Skud 82b70cf893 Merge branch 'facebook_button' of https://github.com/juzham/growstuff into juzham-facebook_button
Conflicts:
	CONTRIBUTORS.md
2014-12-13 08:26:07 +11:00
Justin Hamman 6b0a298fd1 modified order and text for Facebook 2014-12-12 23:33:53 +11:00
Justin Hamman 78c6220262 updated the homepage to include a facebook icon. Updated all 'keep in touch' icons to be clickable and open new browser windows 2014-12-12 22:56:50 +11:00
Justin Hamman 6f2fa1b72b add facebook test 2014-12-12 22:27:52 +11:00
Taylor Griffin 314cdc687a precompiled assets 2014-12-12 22:00:30 +11:00
Taylor Griffin df3b300967 remove '/assets' from references to assets 2014-12-12 21:31:22 +11:00
Skud b520f9e78b Update CONTRIBUTORS.md
Removed duplicate contributor
2014-12-12 18:43:42 +11:00
Skud b7d9924fa7 Merge pull request #462 from kevieyang/upgrade_ruby_version
Modified ruby from 2.1.2 to 2.1.5
2014-12-10 08:49:15 +11:00
Skud ea41021ae8 Merge pull request #463 from yoongkang/cancanredirect
Fix for redirect sign-in not working for all models
2014-12-10 08:48:31 +11:00
Kevin Yang 7f88157696 removed whitespace 2014-12-09 14:11:29 +00:00
Yoong Kang Lim a69210ae6b Explicitly add spec for notification 2014-12-09 22:07:41 +11:00
Yoong Kang Lim de26dd3708 to_s not needed 2014-12-09 21:42:17 +11:00
Yoong Kang Lim 2fc6bfb77f Merge remote-tracking branch 'upstream/dev' into cancanredirect 2014-12-09 21:32:01 +11:00
Yoong Kang Lim 837121265a Reversed order of authorization and authentication. Also added tests 2014-12-09 21:27:16 +11:00
Kevin Yang 5e2a3db8c2 Added myself to Contributors.md 2014-12-09 20:44:46 +11:00
kevieyang 969c530193 Update .travis.yml
upgrading ruby 2.1.2 to 2.1.5
2014-12-09 20:32:47 +11:00
Kevin Yang e9e238016b Merge branch 'dev' of https://github.com/Growstuff/growstuff into upgrade_ruby_version 2014-12-09 20:28:54 +11:00
Kevin Yang 899d3c3dbe Modified ruby from 2.1.2 to 2.1.5 2014-12-09 20:25:45 +11:00
Skud 7227c1f330 Merge pull request #455 from yoongkang/cancanredirect
Redirect to sign-in page for any action that requires authentication
2014-12-09 20:17:58 +11:00
Skud 609f3a46b2 Merge pull request #461 from emmawinston/more_semantic_markup
Made crop thumbnail markup more semantic
2014-12-09 19:09:45 +11:00
emmawinston 58728f6a61 Made crop thumbnail markup more semantic 2014-12-05 02:45:39 +00:00
Skud 94df504840 Merge pull request #459 from Skud/brassicafix
Fix parent crop for B. oleracea Acephela group
2014-12-03 14:59:17 +11:00
Skud c1bcbd2e7d Fix parent crop for B. oleracea Acephela group 2014-12-03 14:58:46 +11:00
Skud e5d71df294 Merge pull request #458 from Skud/brassicafix
Fixed ordering and capitalisation in brassica import
2014-12-03 14:51:07 +11:00
Skud a47328eed4 Fixed ordering and capitalisation in brassica import 2014-12-03 14:50:25 +11:00
Skud 0c30f2198c Merge pull request #437 from pozorvlak/load_alternate_names
Load alternate names for crops
2014-12-01 22:22:24 +11:00
Miles Gould 9f54641e95 Find crops by name when loading altnames
Crop IDs are not guaranteed to be the same on staging and production.
2014-12-01 11:03:27 +00:00
Miles Gould 4b90f6385b Merge branch 'dev' into load_alternate_names
Conflicts:
	Gemfile.lock
	script/deploy-tasks.sh
2014-12-01 10:47:10 +00:00
pozorvlak 751a66b49b Merge pull request #457 from Skud/multiple_scinames
Multiple scientific and alternate names
2014-12-01 10:33:46 +00:00
Skud 6f3e430840 Add deploy tasks for new crops 2014-12-01 21:23:15 +11:00
Skud d0b61c259d Added squashes and new crops from London working bee 2014-12-01 21:20:44 +11:00
Skud 30c91eb23f Tidy up sidebar on crop detail page 2014-12-01 21:14:44 +11:00
Skud 82a5379a25 Added mint family and brassica crops (seed files) 2014-12-01 20:53:17 +11:00
Skud 593a20c0c5 Load alternate names from CSV 2014-11-30 16:06:43 +11:00
Taylor Griffin d174f25d03 order messages to be most recent 2014-11-30 16:06:06 +11:00
Taylor Griffin e7bb285b8e Merge pull request #448 from yoongkang/followerdev
Allow members to follow other members
2014-11-30 16:04:35 +11:00
Yoong Kang Lim b06d48091e Indentation problem 2014-11-30 15:50:13 +11:00
Skud 844791ead9 Allow multiple comma-separated scientific names 2014-11-30 15:48:58 +11:00
Yoong Kang Lim 73d6b5065b Use factorygirl aliases 2014-11-30 15:25:48 +11:00
Yoong Kang Lim 7ddaca6e11 Use .size instead of .count 2014-11-30 15:19:50 +11:00
Yoong Kang Lim 2036a0f2e9 Used environment variable for site name instead 2014-11-30 15:18:13 +11:00
Yoong Kang Lim 27ad791f67 Merge remote-tracking branch 'upstream/dev' into followerdev 2014-11-30 15:16:48 +11:00
Yoong Kang Lim 13c98eac89 Wrapped tests around context blocks to clarify the purpose of the tests. 2014-11-30 15:14:56 +11:00
Justin Hamman 6d2d6a51d5 Merge branch 'dev' of https://github.com/Growstuff/growstuff into dev 2014-11-30 15:02:20 +11:00
Skud 4e19da56a0 Rearrange fields in crop uploads (sci names last) 2014-11-30 14:51:33 +11:00
Taylor Griffin cf7ead3d84 Merge branch 'dev' of https://github.com/Growstuff/growstuff into rails4-upgrade 2014-11-30 14:36:10 +11:00
Yoong Kang Lim 969f7e7c23 Merge remote-tracking branch 'upstream/dev' into cancanredirect 2014-11-30 14:25:08 +11:00
Taylor Griffin 14e8c367e1 Merge pull request #456 from Skud/paidaccountbug
Fixed a bug which only occurs in the few months before February
2014-11-30 14:23:19 +11:00
Skud 924efe6af5 Fixed a bug which only occurs in the few months before February
This is the fundamental problem:

    2.1.2 :005 > Time.zone.now + 3.months
    => Sat, 28 Feb 2015 03:17:24 UTC +00:00
    2.1.2 :006 > Time.zone.now + 3.months + 3.months
    => Thu, 28 May 2015 03:17:32 UTC +00:00
    2.1.2 :007 > Time.zone.now + 6.months
    => Sat, 30 May 2015 03:17:37 UTC +00:00

I changed the test to use the "3.months + 3.months" formulation and it
now passes.
2014-11-30 14:19:55 +11:00
Justin Hamman 23f524a236 Merge branch 'master' of https://github.com/Growstuff/growstuff into dev 2014-11-30 14:06:48 +11:00
Skud 39b47b0d08 Merge pull request #454 from krio/rearrange-rss-titles
Rearrange titles on RSS feeds
2014-11-30 13:37:30 +11:00
Taylor Griffin 18c40809a6 Merge branch 'dev' of https://github.com/Growstuff/growstuff into rails4-upgrade 2014-11-29 22:20:58 +11:00
Yoong Kang Lim 81d1189203 Added a before_filter for any action that requires authentication. Will redirect to login page if not logged in 2014-11-24 22:12:42 +11:00
Kevin Rio 2111cddaef RSS feed tests 2014-11-23 21:02:56 -05:00
Kevin Rio eb4fae463f Comments RSS tests 2014-11-23 11:47:48 -05:00
Yoong Kang Lim 8c55a6101d Formatting problem 2014-11-21 01:14:12 +11:00
Yoong Kang Lim 2ca42bbae3 Slight modification to the notification wording. 2014-11-21 01:05:23 +11:00
Yoong Kang Lim 5de6759917 Moved number of follows/followers under activity and added pagination. 2014-11-21 00:29:45 +11:00
Yoong Kang Lim aeb7192f48 Break up tests into different scenarios. Defined cancan ability for follows and updated member profile view 2014-11-20 23:46:15 +11:00
Yoong Kang Lim 0ba6562d79 Added more model tests for following behaviour 2014-11-20 01:46:04 +11:00
Yoong Kang Lim 996043d8fb Renamed get_follow_id to get_follow as it does not return id. Also added unit tests for the new methods in the member model. 2014-11-20 01:10:28 +11:00
Yoong Kang Lim 0eb5ae58aa Renamed member_id column in Follow table to follower_id. Made necessary modifications to models and tests. 2014-11-20 00:42:46 +11:00
Skud 6aea16028e Merge pull request #452 from wsmoak/negative-area
Prevent the creation of a garden with a negative number for the area.
2014-11-19 17:18:09 +11:00
Skud 5f2ca6bc9d Merge pull request #450 from Skud/login_timeout
Login timeout
2014-11-19 17:18:02 +11:00
Skud 9861f8cf51 Merge pull request #447 from krio/add-edit-button-seeds-index
Add edit button to seeds index page
2014-11-19 17:17:52 +11:00
Skud 284c28ce9a Merge pull request #441 from yoongkang/editprofile
Removed "Edit Profile" button from home page
2014-11-19 17:17:27 +11:00
Skud c674f30eb8 Merge pull request #453 from Growstuff/dev
Production push: planting reminders, crop details, harvest photos, finished plantings, etc
2014-11-19 16:53:55 +11:00
Wendy Smoak 02994bd5cc Added a test for the validator to show it doesn't accept negative numbers for garden area. 2014-11-18 20:58:00 -05:00
Wendy Smoak 53d782bc83 Prevent the creation of a garden with a negative number for the area. If entered, the area must be greater than or equal to zero. 2014-11-18 20:33:44 -05:00
Taylor Griffin c83b01bbb7 catch up with dev 2014-11-18 22:59:43 +11:00
Taylor Griffin fb595de457 edited configuration and dependencies 2014-11-18 22:24:58 +11:00
Taylor Griffin acbd3f9a9e implement strong parameters instead of protected attributes 2014-11-18 20:08:54 +11:00
Taylor Griffin 98c1680138 handle misc deprications 2014-11-17 07:16:02 +11:00
Taylor Griffin 0ffe9adc86 tests are green 2014-11-16 21:40:43 +11:00
Taylor Griffin 56b4f8a221 mimick old FriendlyId behavior when calling find on a model - therefore, Model.find not Model.friendly.find (this probably needs review) 2014-11-16 20:21:34 +11:00
Taylor Griffin f1945151c7 update RSpec true / false matchers 2014-11-16 14:40:50 +11:00
Taylor Griffin cc31e864d5 update webrat and webrat matchers 2014-11-16 14:31:33 +11:00
Taylor Griffin 868e5c2079 upgrade jquery-ui-rails gem and config 2014-11-16 12:41:57 +11:00
Taylor Griffin 70185156aa use lambda instead of just relation in names scope 2014-11-16 12:11:56 +11:00
Taylor Griffin 7fc886f43c implement custom Sweeper class as stop gap against errors when running specs 2014-11-16 12:01:27 +11:00
Skud 93e468876d Remove old capistrano stuff, as we don't use it anymore 2014-11-16 10:17:22 +11:00
Skud 52cfa9f676 Changed staging environment hostname to staging.growstuff.org 2014-11-16 10:16:34 +11:00
Taylor Griffin 8e79199766 wip: upgrading rspec 2014-11-15 22:55:37 +11:00
Taylor Griffin 40a88b5b09 tests run but fail like whoa 2014-11-15 21:44:55 +11:00
Kevin Rio 65706f560b Add test to new edit seed link 2014-11-14 16:37:55 -05:00
Taylor Griffin 7d27251be3 Merge pull request #449 from Skud/login_timeout
Increase devise timeout to 30 days
2014-11-13 22:14:29 +11:00
Yoong Kang Lim bd8be01ec7 Merge branch 'dev' into editprofile
Conflicts:
	CONTRIBUTORS.md
2014-11-13 21:38:05 +11:00
Yoong Kang Lim 3dbb585467 Removed edit profile button from home page
Added yoongkang to the contributors list

Feature test for edit profile button on homepage
2014-11-13 21:28:15 +11:00
Skud bfce66a8f7 Increase devise timeout to 30 days 2014-11-13 11:28:14 +11:00
Skud f56c184033 Merge branch 'tygriffin-finish-plantings-javascript' into dev 2014-11-13 10:58:06 +11:00
Skud 68dfdbeba1 Merge branch 'finish-plantings-javascript' of github.com:tygriffin/growstuff into tygriffin-finish-plantings-javascript
Conflicts:
	Gemfile
	Gemfile.lock
2014-11-13 10:57:55 +11:00
Skud 0ffa3a6d0f Merge pull request #438 from tygriffin/byebug
replace debugger with byebug
2014-11-13 10:51:53 +11:00
Taylor Griffin c6f56a23d6 Adds binstubs for rails and rake 2014-11-13 07:26:10 +11:00
Kevin Rio 8d74fd52db Rearrange titles on RSS feeds
https://www.pivotaltracker.com/n/projects/646869/stories/50492161
2014-11-12 13:54:01 -05:00
Yoong Kang Lim 77f40a3dc2 Fixed comment + code style 2014-11-13 02:10:54 +11:00
Kevin Rio 43fa356670 Add edit button to seeds index page
https://www.pivotaltracker.com/n/projects/646869/stories/53958137
2014-11-12 09:56:05 -05:00
Yoong Kang Lim 03fea2a785 Remove dependent detroy as this wipes out both users. Woops. 2014-11-13 01:52:43 +11:00
Yoong Kang Lim e687bd43dc Added model tests for follows 2014-11-13 01:22:28 +11:00
Yoong Kang Lim b5e1b6bc22 Delete unused views, add feature tests 2014-11-13 00:46:34 +11:00
Skud 1749bc52f8 Merge pull request #446 from krio/switch-activity-contact
Switch "activity" and "contact" on member profile page
2014-11-12 17:59:37 +11:00
Kevin Rio b6d2a078b1 Adding to contributors list 2014-11-11 23:28:22 -05:00
Kevin Rio 7023b4969b Update position of activity on member details page
Switched activity and contact.
2014-11-11 22:42:01 -05:00
pozorvlak f233d502f7 Merge pull request #445 from yoongkang/plantingsfix
Plantings index should display finished at date instead of planted at under the finished column
2014-11-11 20:55:23 +00:00
Yoong Kang Lim 3c3eb1fd78 Fixed/improved method in member model 2014-11-12 01:53:47 +11:00
Yoong Kang Lim cacc002a01 Added follow/unfollow buttons 2014-11-12 01:47:26 +11:00
Yoong Kang Lim a9fdab5d7c Basic follower relationship 2014-11-12 00:23:01 +11:00
Yoong Kang Lim caad748d08 Plantings index should display finished at date instead of planted at under the finished column.
Added feature test for plantings index page.
2014-11-11 22:41:29 +11:00
Taylor Griffin 5b13e8c797 Merge pull request #444 from Skud/plantingreminder
cweek not cw_week
2014-11-11 20:55:37 +11:00
Skud 267c671259 cweek not cw_week 2014-11-11 20:55:04 +11:00
Taylor Griffin f8df8803ab catch up with upstream dev 2014-11-11 19:57:16 +11:00
Taylor Griffin 1d071c197a Merge branch 'dev' of https://github.com/Growstuff/growstuff into finish-plantings-javascript 2014-11-11 19:53:00 +11:00
Taylor Griffin 50b8acc67c put finished at bottom of list to make it more obvious when marking a planting finished 2014-11-11 19:52:31 +11:00
Taylor Griffin 3f23dd194d Merge pull request #443 from Skud/plantingreminder
Planting reminder - only send to confirmed accounts
2014-11-11 19:48:10 +11:00
Skud 98c07ff3f1 Merge branch 'dev' of https://github.com/Growstuff/growstuff into plantingreminder 2014-11-11 19:45:51 +11:00
Skud eb98910bea Only send planting reminders to confirmed accounts 2014-11-11 19:45:07 +11:00
Taylor Griffin 954d5b8427 Merge pull request #442 from Skud/destroy_photo_destroyer
Fixed bug in deleting unused photos
2014-11-11 19:42:22 +11:00
Skud 2426c51951 Fixed bug in deleting unused photos
... and wow, my tests were really not testing what I thought they were
testing :-/
2014-11-11 19:29:32 +11:00
Taylor Griffin af9aa690ba Merge branch 'dev' of https://github.com/Growstuff/growstuff into finish-plantings-javascript 2014-11-11 18:37:30 +11:00
pozorvlak 24d276da37 Merge pull request #420 from Skud/plantingreminder
Planting reminder
2014-11-07 14:31:43 +00:00
Skud 7b80db9596 Merge pull request #5 from pozorvlak/plantingreminder
Fix broken Capybara tests
2014-11-07 09:28:46 +11:00
Miles Gould b989168887 Fix "shared example group previously defined" warning
We were getting the warning

```
WARNING: Shared example group 'crop suggest' has been previously defined
at:
  /Users/miles/src/growstuff/spec/features/shared_examples/crop_suggest_spec.rb:3
...and you are now defining it at:
  /Users/miles/src/growstuff/spec/features/shared_examples/crop_suggest_spec.rb:3
The new definition will overwrite the original one.
```

Following the suggestion at
https://github.com/rspec/rspec-core/issues/828#issuecomment-38789977,
I've renamed crop_suggest_spec.rb to crop_suggest.rb, which made the
error go away without reducing the number of tests run. RSpec must
have thought it was a spec file and loaded it directly, then loaded it
again when it was first required by an actual spec file.
2014-11-02 22:57:29 +00:00
Miles Gould 6921119301 Make Capybara actually hit the server.
Background:
http://talk.growstuff.org/t/mysteriously-broken-feature-tests/120

@oshiho3's suggested fix didn't work, so I tried all the suggestions at
http://stackoverflow.com/questions/6536503/capybara-with-subdomains-default-host
until I found one that fixed the problem.
2014-11-02 22:21:32 +00:00
Taylor Griffin 0ccd6e843a implement confirm without date functionality on appty on append date js 2014-10-23 22:43:38 +11:00
Taylor Griffin 9b10a7c3ce write shared example group for append date 2014-10-23 22:18:52 +11:00
Taylor Griffin 36e827b445 Merge branch 'dev' of https://github.com/Growstuff/growstuff into finish-plantings-javascript 2014-10-23 19:01:58 +11:00
Taylor Griffin f62ce257da catch up with upstream dev 2014-10-23 19:00:55 +11:00
Skud 0d893470de Merge pull request #439 from tygriffin/I18n
I18n
2014-10-23 10:06:33 +11:00
Taylor Griffin e9d1d11535 add append date functionality for planting finished on garden show page and planting list page 2014-10-21 19:43:51 +11:00
Taylor Griffin c244da8b73 make English fallback language 2014-10-21 07:24:08 +11:00
Taylor Griffin 48875dacb3 remove pry because it's redundant with byebug 2014-10-21 06:53:21 +11:00
Taylor Griffin a6508b5c9f replace debugger with byebug 2014-10-20 22:47:13 +11:00
Taylor Griffin 0e11f20910 Merge branch 'dev' of https://github.com/Growstuff/growstuff into I18n 2014-10-20 21:27:59 +11:00
Taylor Griffin ab449a65f8 remove 'to be translated' message from ja locale file 2014-10-20 21:27:39 +11:00
Miles Gould f795918e17 Remove alternate names for crops without IDs. 2014-10-19 22:49:18 +01:00
Miles Gould badb0c4fe7 Make load altnames task idempotent. 2014-10-19 22:21:29 +01:00
Miles Gould 7c3059fcae Fix typo in altname CSV 2014-10-19 22:21:10 +01:00
Miles Gould 06a4fcab71 Remove superfluous* error-checks from load_altnames
* /me crosses fingers...
2014-10-19 22:19:41 +01:00
Miles Gould 36be5e9533 Hardcode alternate-name CSV file path. 2014-10-19 21:54:46 +01:00
pozorvlak 4a8297360c Merge pull request #434 from Skud/memberprofile
Member profile
2014-10-19 17:32:27 +01:00
Miles Gould 0aea1721d8 Add altname data and include load in deploy-tasks. 2014-10-19 17:24:18 +01:00
Miles Gould 3d10553373 Add Rake task to load altnames. 2014-10-19 17:24:18 +01:00
Miles Gould af87c9db47 Remove debugger gem
It wouldn't install under Ruby 2.1.2, and we weren't using it anyway.
2014-10-19 17:24:18 +01:00
Skud e8daba750d Merge pull request #433 from pozorvlak/feature_tests_for_scinames
Feature tests for scientific names
2014-10-19 16:54:31 +01:00
Skud a79a8dc927 Merge branch 'dev' of https://github.com/Growstuff/growstuff into memberprofile
Conflicts:
	app/views/scientific_names/index.html.haml
2014-10-19 16:54:10 +01:00
Skud a25eb2d631 Deleted old view tests for crops 2014-10-19 16:52:45 +01:00
Skud 58f1bca683 removed spurious console.log calls 2014-10-19 16:51:08 +01:00
Miles Gould b17aaf262d Test HTTP statuses in sciname feature tests
This makes it easier to tell the difference between "test failed because
the expected content isn't there" and "test failed because the whole
page is broken". It also guards against "test passed incorrectly because
the expected content was part of the error message".
2014-10-19 16:36:10 +01:00
Miles Gould 56b7d89d9e Link scinames to crops, don't show numeric crop IDs 2014-10-19 16:36:10 +01:00
Miles Gould 6de2112c4d Display note on successful sciname deletion. 2014-10-19 16:36:10 +01:00
Miles Gould 2aabcce70d Feature tests for scientific names. 2014-10-19 16:36:10 +01:00
Skud 7595d75d20 Merge pull request #432 from pozorvlak/alternate_crop_names
Model and CRUD for alternate crop names
2014-10-19 16:34:44 +01:00
Skud de6d3589d1 Merge pull request #436 from pozorvlak/ruby212
Upgrade Ruby to v2.1.2
2014-10-19 16:18:33 +01:00
pozorvlak 9e9aa82099 Merge pull request #435 from emmawinston/album
Changed set to album on photo page
2014-10-19 15:24:24 +01:00
Miles Gould ef8d552301 Update Ruby to 2.1.2 in .travis.yml 2014-10-19 15:06:34 +01:00
emmawinston e5cd14cd45 Added myself to the contributors file 2014-10-19 14:56:44 +01:00
emmawinston 1daee9612c Changed set to album on photo page 2014-10-19 14:52:10 +01:00
Skud dc1afb8913 Added seeds_by_crop_path routes and stuff 2014-10-19 14:25:47 +01:00
Skud 496c070efd Tweaked layout of crop page sidebar 2014-10-19 14:14:24 +01:00
Skud f468a8b77b Changed all h1 to content_for :title 2014-10-19 14:04:55 +01:00
Skud 16677a3b86 Removed underline on header area 2014-10-19 14:04:32 +01:00
Skud 41566d39f3 Added map to member profile page 2014-10-19 13:50:43 +01:00
Miles Gould e613907506 Check status codes on page visits. 2014-10-19 13:21:30 +01:00
Skud 82a61387a3 Improved layout of member profile page
In doing this, I added some content areas for all pages on the site:

1) subtitle
2) buttonbar

These are intended to help standardise the layout of all pages.  On the
member page, the subtitle is the location, and the buttonbar has links
like "edit profile", "upgrade account", etc (or if looking at someone
else's page, then "send message" etc).

I also implemented subtitle/buttonbar on the crop detail page (the
subtitle is the default scientific name).

The rest is just refactoring and tests.  I've removed some view tests
and put them in feature tests instead.
2014-10-19 12:23:19 +01:00
Miles Gould 29d53a8f8b Test for notices in altname CRUD features. 2014-10-19 12:02:31 +01:00
Miles Gould d0f7169c59 Put alternate name features in their own file. 2014-10-19 11:50:21 +01:00
Miles Gould 3a797d4434 Use content_for :title in scientific names index. 2014-10-19 11:42:49 +01:00
Miles Gould 1d3c24ae27 Use content_for :title on altname index page. 2014-10-19 11:28:51 +01:00
Miles Gould 006bc54f3f Oops, add the altname index HAML file. 2014-10-18 18:13:04 +01:00
Miles Gould 792062e0d2 Make add-altname test more featurey. 2014-10-18 18:02:59 +01:00
Miles Gould 52fd2b86d6 Test altname deletion end-to-end. 2014-10-18 18:01:54 +01:00
Miles Gould 110ae99d83 Fix and test altname index page. 2014-10-18 17:55:56 +01:00
Miles Gould c447c1cb3a Make edit-altname test more featurey. 2014-10-18 17:49:13 +01:00
Miles Gould 0ae68737c3 Use login_as helper method in altname feature tests. 2014-10-18 17:43:59 +01:00
Miles Gould 96d2fa1cb6 Put alternate names controller in standard order. 2014-10-18 17:41:52 +01:00
Miles Gould 8a97aa1a9b Delete redundant old-style test. 2014-10-18 17:34:33 +01:00
Miles Gould dc2cf5275c Fix model tests for alternate names. 2014-10-18 17:30:22 +01:00
Miles Gould c7c85aaa66 Creation and deletion of alternate names 2014-10-18 17:03:54 +01:00
Cesy Avon edf2f36bcd Upgrading to ruby 2.1.2 2014-10-18 16:58:23 +01:00
Miles Gould b009603581 Fix link to crop on alternate name page 2014-10-18 16:54:02 +01:00
Miles Gould eacfadae20 Make editing alternate names actually do something. 2014-10-18 16:51:43 +01:00
Miles Gould 37eb2a0e34 Show alternate names on their own page. 2014-10-18 16:49:27 +01:00
Miles Gould 10f6214c6c Views for adding/editing alternate names. 2014-10-18 16:34:38 +01:00
Skud 29a5fe07c2 use rails paths when visiting pages 2014-10-18 16:01:00 +01:00
Miles Gould 77d1d067fa Crop wranglers can add alternate names 2014-10-18 15:35:57 +01:00
Miles Gould cdf6d4b09a Delete alternate name button on crops page. 2014-10-18 15:29:21 +01:00
Miles Gould 7e4b51d1cb Add "Edit" link for alternate names on crops page. 2014-10-18 15:18:23 +01:00
Skud 864ce95f11 Merge pull request #430 from Skud/tomatoes
Added some additional hierarchy around cherry tomatoes
2014-10-18 14:40:02 +01:00
Skud ae27a0a5b5 Added some additional hierarchy around cherry tomatoes 2014-10-18 14:38:00 +01:00
Miles Gould 627587ee1b Show alternate names on crop page 2014-10-18 14:34:53 +01:00
Skud 9ededef54d Added tests for content of planting reminder email 2014-10-18 14:00:22 +01:00
Miles Gould 83fa291060 Fetch alternate names for a crop. 2014-10-18 13:50:28 +01:00
Miles Gould e85cb4598d Add alternate name model. 2014-10-18 12:38:44 +01:00
Skud f18feaa131 Merge branch 'dev' of https://github.com/Growstuff/growstuff into plantingreminder 2014-10-18 11:23:30 +01:00
pozorvlak 41d63f8f92 Merge pull request #417 from tygriffin/I18n
I18n
2014-10-18 11:11:25 +01:00
pozorvlak 7c783ecda3 Merge pull request #428 from tygriffin/finish-plantings-javascript
Finish plantings javascript
2014-10-18 10:54:50 +01:00
pozorvlak 26e592db88 Merge pull request #429 from Skud/tomatoes
Tomatoes - scientific name upload bugfix
2014-10-18 10:35:50 +01:00
Taylor Griffin 2515d34277 add teardown to reset locale to default en 2014-10-16 08:09:20 +11:00
Taylor Griffin 8994bcf28c ok, we'll just remove all references to environment 2014-10-16 07:14:03 +11:00
Taylor Griffin d627d8394e forgot which env I was in 2014-10-16 06:56:39 +11:00
Taylor Griffin a4e7f93421 Merge branch 'dev' of https://github.com/Growstuff/growstuff into I18n 2014-10-16 06:39:10 +11:00
Taylor Griffin 0f75a96944 write spec to test that setting a different locale fundamentally works 2014-10-16 06:37:50 +11:00
Taylor Griffin 6a7c935d43 try setting locale from query parameter first 2014-10-16 06:37:02 +11:00
Skud a3e02a3e61 Actually delete Crop.random, don't just comment it out 2014-10-15 16:47:43 +01:00
Skud 8e6a57c442 Attempt at writing tests for planting reminder email
(Test are broken)

OK, so I decided to use the capybara_email gem to write these tests.
It's basically working but there's a problem with the has_link matcher.
Basically the emails sent by ActionMailer have URLs like
http://localhost:8080... whereas the tests asking for planting_url() or
similar are looking for http://example.com...

I don't understand AT ALL why there is this discrepancy, but it looks
like ActionMailer is using the settings from the development
environment, instead of the testing environment.

WHYYYYYY???

I'm pushing this up so that maybe someone else can figure it out,
because I'm stumped.
2014-10-15 15:52:13 +01:00
Skud e4cf636bef Merge branch 'dev' of https://github.com/Growstuff/growstuff into plantingreminder
Conflicts:
	app/models/harvest.rb
	db/schema.rb
	spec/models/harvest_spec.rb
2014-10-15 14:20:16 +01:00
Skud 75e076cef5 Merge branch 'dev' of https://github.com/Growstuff/growstuff into tomatoes
Conflicts:
	spec/models/crop_spec.rb
2014-10-15 14:07:03 +01:00
Skud 1d81064ced removed unused Crop.random method 2014-10-15 14:03:00 +01:00
Skud 25cb3fd469 Fixed scientific name upload bug and wrote tests
Wrote unit tests and refactored Crop.create_from_csv

The actual bug (now fixed) is that if you didn't specify a SN in the
CSV, it would try and pick it up from the parent crop, but then the
testing for "is this a dup?" was based on what was in the CSV and didn't
take that parent SN into account.  This is now fixed.
2014-10-15 13:58:21 +01:00
Skud 694bc56f68 Merge pull request #427 from oshiho3/PT60321968_corps_posts
Added crops-posts association as well as updated GUI for crop show
2014-10-15 12:18:54 +01:00
Taylor Griffin 6bcb9dae4a trigger datepicker when planting finished checkbox is ticked 2014-10-15 06:41:28 +11:00
Taylor Griffin 3a46a5bd18 add comments to javascripts 2014-10-13 06:48:46 +11:00
Taylor Griffin c405639f22 write test for marking a planting finished from show page 2014-10-13 06:42:57 +11:00
Taylor Griffin aaf08469e6 add date when planting is marked finished from planting show page 2014-10-12 23:14:02 +11:00
Taylor Griffin d1e0bdb534 toggling planting finished clears the finished at field or populates it with a cached value 2014-10-12 09:53:09 +11:00
Skud ff61739716 s/boring_planting/no_photo_planting for clarity 2014-10-08 18:59:10 +01:00
Shiho Takagi cf07ecfa4a improved test spec, crop page and added rake task 2014-10-05 23:16:46 +11:00
Shiho Takagi 6e02f40e0a merging from dev 2014-10-05 13:47:12 +11:00
Shiho Takagi 14d039ee01 Added crops-posts association as well as updated GUI for crop show 2014-10-05 13:32:08 +11:00
pozorvlak 14cf82f1d2 Merge pull request #426 from maco/dev
Put back oshiho3's fix, modified for new parameters
2014-10-02 17:04:03 +01:00
Mackenzie Morgan a2f2508f0d don't lose the thing we're attaching the photo to when we change sets. This is a modification of oshiho3's previous fix. 2014-10-02 09:38:02 -04:00
pozorvlak 494a600766 Merge pull request #423 from Skud/removebrokentest
Removing tests for migrations
2014-10-02 13:42:07 +01:00
Skud 45d34f7f79 Merge pull request #424 from wsmoak/testing
Rename Sign in tests and add Sign up tests.
2014-10-02 17:53:22 +10:00
Skud 9b43bdd29b Merge pull request #425 from Skud/removeunusephotos
added deploy task to remove unused photos
2014-10-02 17:48:44 +10:00
Skud e002cb2d35 added deploy task to remove unused photos 2014-10-02 17:48:19 +10:00
Skud a5b856b506 Merge pull request #410 from maco/dev
Harvest photos
2014-10-02 17:45:59 +10:00
Mackenzie Morgan 48ad561b76 convert tabs to spaces 2014-10-01 23:58:54 -04:00
Mackenzie Morgan fcda8742d8 go back to the nested error handling in the photos controller and add a migration for indexing harvests_photos 2014-10-01 22:52:52 -04:00
Mackenzie Morgan 57abfa04b3 fix whitespace 2014-10-01 21:46:15 -04:00
Wendy Smoak 557d07d2f1 Rename Sign in tests and add Sign up tests. 2014-10-01 20:24:15 -04:00
Mackenzie Morgan 51d8b2d475 Merge branch 'dev' of github.com:maco/growstuff into dev 2014-10-01 20:17:23 -04:00
Mackenzie Morgan a29d11a07c refactor error handling on photo upload to be easier to read 2014-10-01 20:17:11 -04:00
Mackenzie Morgan 0ad217c9a2 add index to harvest_photo 2014-10-01 20:16:53 -04:00
Mackenzie 271d178cc8 Merge pull request #1 from Skud/maco-harvestphotos
Delete unused photos
2014-10-01 20:14:23 -04:00
Skud 9a9eeecb46 Removing tests for migrations
These were never run anyway (they don't have _spec.rb in their names)
and were obviously written when we had no idea what we were doing.
They're full of syntax errors and all sorts of stuff that just won't
work.  The best thing is to remove them so they don't confuse people!
2014-10-02 10:09:21 +10:00
pozorvlak 41a4de7e74 Merge pull request #422 from Skud/crophierarchycache
Clear crop hierarchy view cache after uploading crops
2014-09-30 17:43:06 +01:00
Skud 8497782847 Clear crop hierarchy view cache after uploading crops
The crop_sweeper only acts in response to things that happen in the
controller.  Since this works directly with the model, we need to clear
the cache fragment manually.
2014-09-30 23:02:09 +10:00
Skud 97699e5e6a Removed feature test that doesn't really test anything featurelike 2014-09-30 22:38:24 +10:00
Skud 98da785d8a Removed spurious debugging puts 2014-09-30 22:37:58 +10:00
Skud e2571e9261 Replaced ENV vars with site_name 2014-09-30 22:37:19 +10:00
Skud 65c46c334b Delete unused photos
Make sure the models are setup so that if a photo is not used for
anything, it's removed from the system.

Also wrote a rake task (which should be run on deploy) to remove older
unused photos.
2014-09-29 09:18:28 +10:00
pozorvlak dbfa080609 Merge pull request #421 from tygriffin/customize-generators
stop generating helpers, constroller specs, view specs, and javascripts
2014-09-28 23:06:41 +01:00
Taylor Griffin aebd9e1d4e remove a file that accidentally found its way in from another unrelated branch 2014-09-28 22:03:50 +10:00
Taylor Griffin 87b6780220 stop generating helpers, constroller specs, view specs, and javascripts 2014-09-28 21:57:05 +10:00
Taylor Griffin a7da4b9ce4 no longer necessary to pass locale quuery param in every url 2014-09-28 21:38:28 +10:00
Taylor Griffin f9dc17c587 no longer raise exception on missing g translation in dev / test envs 2014-09-28 21:34:26 +10:00
Taylor Griffin d10a62d336 set locale from subdomain 2014-09-28 21:32:15 +10:00
pozorvlak a34a54d995 Merge pull request #419 from Skud/tomatoes
Upload tomato varieties to crop database
2014-09-28 11:22:44 +01:00
Skud baeb5d3525 Remove old planting reminder sending stuff 2014-09-28 16:03:58 +10:00
Skud 05400a081f tiny bit of whitespace cleanup 2014-09-28 16:02:02 +10:00
Skud d8b75eaa66 Fixed up db migration and tests for planting reminders 2014-09-28 15:55:55 +10:00
Skud 4a62add88e Merge branch 'dev' of https://github.com/Growstuff/growstuff into plantingreminder
Conflicts:
	spec/models/planting_spec.rb
2014-09-28 15:32:53 +10:00
Skud 529c98f5dc Move actual sending of planting reminder to rake task 2014-09-28 15:28:53 +10:00
Skud e011b54cba Nicer phrasing for the no-plantings use case 2014-09-28 14:35:54 +10:00
Skud 1b1f1d33e0 Add planting reminder checkbox to email settings 2014-09-28 14:35:32 +10:00
Skud 25abcdc923 Upload tomato varieties to crop database 2014-09-28 13:50:55 +10:00
pozorvlak 126cb1d191 Merge pull request #418 from wsmoak/dev
Renamed gardens.rb to gardens_spec.rb so that these tests will run.
2014-09-26 20:12:39 +01:00
Wendy Smoak 8ab4f885f1 Renamed gardens.rb to gardens_spec.rb so that these tests will run. 2014-09-26 10:32:06 -04:00
Taylor Griffin 984503480f remove necessity to add locale to url if current locale is English 2014-09-25 07:00:11 +10:00
Taylor Griffin 5e48c4392a move site name into localization 2014-09-24 18:29:59 +10:00
Taylor Griffin d462254021 add missing translation 2014-09-21 10:26:30 +10:00
Taylor Griffin 1acba65a8b clean up haml a bit 2014-09-21 10:22:46 +10:00
Taylor Griffin 8f14ffe560 catch up with dev 2014-09-20 23:01:35 +10:00
Taylor Griffin 93cd067fff add two contributors 2014-09-20 21:59:05 +10:00
Taylor Griffin e3a6742574 add sample japanese locale file to test changing languages 2014-09-20 21:56:14 +10:00
Taylor Griffin 659a68cf39 remove missing translations spec in favor of running dedicated task 2014-09-20 21:49:30 +10:00
Taylor Griffin e3f590ede5 abstract strings in home views into locale file 2014-09-20 21:47:18 +10:00
pozorvlak 6efeb04449 Merge pull request #416 from oshiho3/bugfix_markdown
updated regex for crop in markdown
2014-09-19 23:45:16 +01:00
pozorvlak 52b4e27d8c Merge pull request #415 from oshiho3/bugfix_plantphoto
added planting_id param to Flickr set search (new_photo_path form).
2014-09-19 16:42:49 +01:00
Shiho Takagi 60354264d6 Included PT bug# to its test description. Test using the case from the bug 2014-09-19 16:00:25 +10:00
Shiho Takagi 87643c3d1a Merge branch 'bugfix_plantphoto' of https://github.com/oshiho3/growstuff into bugfix_plantphoto 2014-09-19 15:33:35 +10:00
Shiho Takagi aa028db2dc added planting_id param to Flickr set search (new_photo_path form). 2014-09-19 15:29:12 +10:00
Taylor Griffin 983fa8ede0 abstract strings out of blurb partial 2014-09-19 07:29:04 +10:00
Taylor Griffin 16f4d2f80e fix spec to check href with newly added locale query param 2014-09-19 07:17:08 +10:00
Shiho Takagi dd75f2aef9 updated regex for crop in markdown 2014-09-18 14:18:18 +10:00
Taylor Griffin f8ee9d0589 don't scope routes to locale to make url prettier because it breaks tests like whoa 2014-09-18 07:14:35 +10:00
Taylor Griffin 87df8661c7 raise exception on missing translations in test and dev environment 2014-09-18 06:24:59 +10:00
Taylor Griffin f355c393f0 basic setup 2014-09-18 06:15:59 +10:00
Shiho Takagi eeb2bf9938 added planting_id param to Flickr set search (new_photo_path form). 2014-09-17 21:38:43 +10:00
Skud 3cf2a50a34 modified Planting.interesting to have some options re: howmany and photos 2014-09-12 13:20:41 +10:00
Skud 09bef3f9d8 Added options for if you didn't plant/harvest anything 2014-09-12 12:30:27 +10:00
Skud 2bbccfc44d Added tests for planting reminder email 2014-09-12 12:30:04 +10:00
Skud 00f58511ac Merge pull request #414 from Growstuff/dev
Production push: finished plantings, crowdfunding banner, etc
2014-09-12 10:13:44 +10:00
Skud 374c17c928 Merge pull request #413 from Skud/talklinks
Fixed mailing list link to point to Talk instead
2014-09-12 09:10:42 +10:00
Skud 46eaf37437 Fixed mailing list link to point to Talk instead 2014-09-12 09:10:13 +10:00
Skud 9bd4160102 Merge branch 'Skud-finished2' into dev 2014-09-12 08:41:46 +10:00
Skud 29d43f4e5b Merge branch 'finished' of github.com:Skud/growstuff into Skud-finished2 2014-09-12 08:40:57 +10:00
Skud aefbce3b1f Merge pull request #411 from Skud/crowdfunding
added sitewide crowdfunding banner
2014-09-12 08:39:27 +10:00
Skud 374987488f Fixed broken tests. 2014-09-12 08:30:44 +10:00
Skud fa9c029493 added sitewide crowdfunding banner 2014-09-12 08:10:58 +10:00
Skud 85b5ac12ca added validation for finished_at (must be after planted_at) 2014-09-12 07:50:25 +10:00
Skud 03235f3952 Add warning about plantings being marked as finished 2014-09-12 07:43:41 +10:00
Mackenzie Morgan 550f3c5326 removing unneeded photo-related files 2014-09-09 22:18:43 -04:00
Mackenzie Morgan ed537e583b whitespace fixes and um oops no there shouldn't be a secret key in that config file 2014-09-09 20:31:14 -04:00
Mackenzie Morgan 2b7b5bad63 including all the new files needed for harvest photos, this time 2014-09-09 20:21:16 -04:00
Mackenzie Morgan 512ccdbaa2 merging the schema changes from finished plantings and making the timestamp newer, then making the styling on harvest photos match the new styling (no li) on planting photos 2014-09-09 20:19:25 -04:00
Mackenzie Morgan 7d54ab347f Adding photo functionality to harvests 2014-09-09 19:55:40 -04:00
Skud 51d9bfe97e Merge branch 'Skud-finished' into dev 2014-09-10 09:12:44 +10:00
Skud 9d5c15a7da Merge branch 'finished' of github.com:Skud/growstuff into Skud-finished
Conflicts:
	spec/features/plantings/planting_a_crop_spec.rb
2014-09-10 09:12:27 +10:00
Skud e0485ade1d Added test to make sure the wrong plantings aren't finished 2014-09-10 08:06:07 +10:00
Skud fb91c78933 Merge pull request #409 from tygriffin/prefill-crop-bug
Prefill crop bug
2014-09-09 22:05:15 +10:00
Taylor Griffin 138904bd82 write regression test for creating plantings, harvests and seeds form crop page 2014-09-09 21:52:50 +10:00
Taylor Griffin 00b24890f4 accept a default value in options hash of autosuggest helper 2014-09-09 21:27:21 +10:00
Skud 0c944357c0 Merge pull request #408 from catfriend/dev
Added placeholder text for crop auto suggest
2014-09-06 15:15:17 +10:00
catfriend 885ffab012 added contributor info 2014-09-05 20:36:58 -07:00
catfriend b0ee83bc3e added test for adding placeholder text 2014-09-05 16:23:33 -07:00
catfriend 4caf7b9b28 added placeholder text per 78178814 2014-09-05 15:30:34 -07:00
Skud 1c33ab280f Merge pull request #407 from Growstuff/dev
Production push: branding, crop and photo display bugfixes
2014-09-05 11:11:58 +10:00
Skud 56eaea9c06 Merge pull request #405 from Skud/cropmess
Crop and photo bugfixes
2014-09-04 21:23:31 +10:00
Skud 3c968ea6be Merge pull request #406 from Skud/branding2
Branding
2014-09-04 20:02:16 +10:00
Skud a3213a99e8 Added apple icon for iOS users 2014-09-04 19:03:07 +10:00
Skud 495f4194e7 Fixed test for branding in navbar 2014-09-04 19:02:38 +10:00
Skud 7543221f73 Added 'skip navigation menu' link for screenreaders 2014-09-04 18:40:51 +10:00
Skud 7184b04397 Added favicon 2014-09-04 18:37:27 +10:00
Skud 0e0a13bbd1 Made sure all headings are sans-serif 2014-09-04 18:31:13 +10:00
Skud 4f4aad7626 Added pear logo to top nav 2014-09-04 18:14:49 +10:00
Skud baf8b91a4e Removed fairly pointless test for markup 2014-09-04 18:05:10 +10:00
Skud 579f79760b remove bullet points from new photo page 2014-09-04 17:51:13 +10:00
Skud cdbc4611c9 Fix up crop photo wrapping mess 2014-09-04 17:48:00 +10:00
Skud 823dfe8000 Merge pull request #404 from Growstuff/dev
Production push: crop popularity, crop suggest, harvest improvements, wrangler improvements, bootstrap 3, and more
2014-09-03 15:54:26 +10:00
Skud ea9597ba75 Merge pull request #403 from Skud/readmeupdate
Readme update
2014-09-03 09:09:03 +10:00
Skud 591b8e03d6 we don't always work in pairs, just often 2014-09-03 09:08:18 +10:00
Skud 35470acb86 updated CONTRIBUTING.md with more up to date info 2014-09-03 09:06:59 +10:00
Skud 326248797e Updated readme and contributors 2014-09-03 09:00:55 +10:00
Skud 6704b97542 Merge pull request #399 from tygriffin/fix-layout
Fix layout
2014-09-03 08:32:43 +10:00
Taylor Griffin 982572d2bd slight change to width of index card 2014-09-03 08:02:53 +10:00
Taylor Griffin 1fc100eca4 update gem and finesse signup widget 2014-09-03 07:52:45 +10:00
Taylor Griffin 1224bd0ebb import original variables into custom 2014-09-03 07:28:27 +10:00
Taylor Griffin c95619117b Merge branch 'dev' of https://github.com/Growstuff/growstuff into fix-layout 2014-09-02 06:34:38 +10:00
Skud 919cc45d13 Merge pull request #401 from Skud/moreb3
Quick and dirty fix for layout of settings tabs
2014-09-01 23:06:55 +10:00
Skud 0687625049 Quick and dirty fix for layout of settings tabs 2014-09-01 22:30:08 +10:00
Skud 551e4cbe6f Merge pull request #400 from tygriffin/fix-styles
Fix styles
2014-09-01 21:08:52 +10:00
Taylor Griffin 7518fbec1c add styles for alerts 2014-09-01 20:58:48 +10:00
Taylor Griffin 703de07647 add crop image class to prevent smooshing again neighboring div 2014-09-01 20:55:54 +10:00
Taylor Griffin c9cd82d7fd increase z-index of autosuggest dropdown 2014-09-01 20:53:48 +10:00
Taylor Griffin 0af550b6e7 make top nav collapse threshold larger to prevent it from becoming too big at some browser sizes 2014-09-01 20:45:45 +10:00
Taylor Griffin c4bd4c178d add a little offset on crop index card to prevent info from smooshing against pic 2014-09-01 20:40:16 +10:00
Skud b242e0fb99 Merge pull request #398 from Skud/devisetoken
Additional fixes for devise login stuff
2014-08-31 18:37:34 +10:00
Skud a8a34d8dc8 s/user/member/g in crop wrangler tests
We don't use the term "user" in Growstuff -- this should ideally have
been caught in code review but I missed it :-/
2014-08-31 18:28:50 +10:00
Skud 965a3bf2a1 Modernise redirection after signup to use devise's stored_location_for 2014-08-31 18:28:26 +10:00
Skud 07fcdf9bb7 Merge pull request #397 from Skud/devisetoken
Updated devise tokens in emails for devise 3.2
2014-08-31 17:56:15 +10:00
Skud 474b56cf6b Updated devise tokens in emails for devise 3.2 2014-08-31 17:54:07 +10:00
Skud 99ffa3775e Remove puts used for debugging 2014-08-30 18:38:16 +10:00
Skud ecbeb986c3 Merge pull request #396 from Skud/moreb3
b3ify 'sort by' dropdown on crops page
2014-08-30 18:19:51 +10:00
Skud e7d9ebe37a b3ify 'sort by' dropdown on crops page 2014-08-30 18:05:11 +10:00
Skud db7729920b Merge pull request #386 from Skud/coverage
Coverage
2014-08-30 17:50:49 +10:00
Skud 2be199abbc Merge branch 'dev' of https://github.com/Growstuff/growstuff into plantingreminder
Conflicts:
	Gemfile
	Gemfile.lock
	app/views/devise/registrations/edit.html.haml
2014-08-30 17:45:19 +10:00
Skud 597e878413 Removed spurious seeds tests (moved to subdir) 2014-08-30 17:40:16 +10:00
Skud 29f83b8c18 Merge branch 'coverage' of github.com:Skud/growstuff into coverage
Conflicts:
	Gemfile.lock
	app/views/gardens/_form.html.haml
	spec/spec_helper.rb
2014-08-30 17:32:50 +10:00
Skud b0378fab69 Cleaned up tests a little bit 2014-08-30 17:30:24 +10:00
Skud d35639d7cb Add page content test suggested by tygriffin 2014-08-30 17:10:36 +10:00
Skud d991765edb Fixed up label with link to field it relates to 2014-08-30 17:10:36 +10:00
Skud d55d2c6409 Ongoing coverage improvements 2014-08-30 17:09:47 +10:00
Skud 082663c885 Show coverage locally and send to coveralls 2014-08-30 17:09:47 +10:00
Skud 0c89413f92 Merge pull request #395 from tygriffin/crop-suggest
Fix edit bug
2014-08-30 17:04:59 +10:00
Taylor Griffin 1cd2fd9b07 Merge branch 'dev' of https://github.com/Growstuff/growstuff into crop-suggest 2014-08-30 12:15:02 +10:00
Taylor Griffin 3fbae6a5ee write regression spec for resource id bug when editing resource 2014-08-30 12:14:36 +10:00
Skud fbeafd4299 Improving test coverage for gardens 2014-08-30 11:28:52 +10:00
Skud 4ebc184188 Add finished planting data (and buttons) to plantings index
I also removed description from the table as it was getting way too full
2014-08-30 11:11:19 +10:00
Skud 46e20f0562 Add finished planting data (and buttons) to plantings index 2014-08-30 11:04:31 +10:00
Skud af2d0e22ee Automatically set plantings to finished when a garden is marked inactive 2014-08-30 10:51:33 +10:00
Skud 170d6b474e Updated garden page with "finished" plantings
Also added a similar "mark as inactive" button for the garden itself
and rearranged some things on the page.
2014-08-30 10:42:16 +10:00
Taylor Griffin 480e67bf2f add default id to hidden input in auto suggest view helper to make edit work 2014-08-30 10:20:29 +10:00
Skud facba15154 Added a button on the planting details page to mark as finished 2014-08-30 10:14:11 +10:00
Skud 9f9ef10b6a Added finished fields to planting form and display 2014-08-30 09:52:26 +10:00
Skud e7dd50c3f1 Added scopes for finished and current plantings 2014-08-30 09:28:02 +10:00
Skud b07d9d8db0 Added finished fields for plantings 2014-08-30 09:27:41 +10:00
Skud 40c7124769 Merge pull request #379 from tygriffin/crop-suggest
Crop suggest
2014-08-29 11:35:25 +10:00
Skud 19a0a914c5 Merge pull request #393 from Skud/moreb3
A few bootstrap3 tweaks
2014-08-29 10:44:55 +10:00
Skud 8a5d1f2e5e Fixed crop wrangler tests to not be order dependent 2014-08-29 10:38:35 +10:00
Skud 30d436cb5d Fixed inline form on places page to make it b3-ish 2014-08-29 10:19:37 +10:00
Skud e3627f6dcd Fixed devise forms to make them b3ish and pretty 2014-08-29 10:02:56 +10:00
Taylor Griffin 3beae6f500 add request crop link to seeds 2014-08-29 08:43:02 +10:00
Taylor Griffin 83d3c369c2 style noscript warning 2014-08-29 08:42:43 +10:00
Taylor Griffin 7fa05d81e9 fix tests to match new implementation of of auto_suggest 2014-08-29 07:38:55 +10:00
Taylor Griffin d8c7aba725 pass options hash into auto_suggest helper to allow setting class 2014-08-29 07:31:32 +10:00
Taylor Griffin 6bb74039a7 fix slug bug 2014-08-29 07:31:02 +10:00
Taylor Griffin 2c50c3b703 merge in a bunch of (mostly bootstrap 3) changes 2014-08-29 07:14:44 +10:00
Taylor Griffin 550cb4b265 put validation in the correct place this time 2014-08-29 06:56:02 +10:00
Taylor Griffin 62e1c3bb93 add server side validation 2014-08-29 06:45:37 +10:00
Taylor Griffin cd6fc7e804 add noscript tag 2014-08-29 06:45:11 +10:00
Taylor Griffin 4e0d62b28d remove client side validation 2014-08-29 06:44:48 +10:00
Skud 028e1194e5 Merge pull request #392 from Skud/moreb3
changed layout of planting list on homepage
2014-08-28 12:10:42 +10:00
Skud 55c2fceffb changed layout of planting list on homepage
... as b3 seems to have more gutter space between columns
2014-08-28 12:09:43 +10:00
Skud 698a13ef70 Merge pull request #391 from Skud/moreb3
Tweak formatting of images with popovers (used mostly on homepage)
2014-08-28 12:01:24 +10:00
Skud 848b583d94 Tweak formatting of images with popovers (used mostly on homepage) 2014-08-28 11:46:36 +10:00
Skud b260169d2d Merge pull request #389 from Growstuff/bootstrap3
Bootstrap3
2014-08-28 11:15:53 +10:00
Skud d6e957e2fb Merge pull request #390 from Skud/cropwranglertests
Switch to match_array to get around spuriously failing tests
2014-08-28 10:44:36 +10:00
Skud c68b029d50 Switch to match_array to get around spuriously failing tests 2014-08-28 10:16:31 +10:00
Skud a3220653cf Merge branch 'dev' into bootstrap3 2014-08-28 08:00:48 +10:00
Skud 840a5efc4e Merge remote-tracking branch 'upstream/bootstrap3' into dev
Conflicts:
	Gemfile.lock
2014-08-28 08:00:10 +10:00
pozorvlak 5add85cd7c Merge pull request #387 from Skud/contact-twitter
Fixed contact page error
2014-08-27 19:52:22 +01:00
pozorvlak ea31d89bd0 Merge pull request #385 from Skud/b3forms
Fixed various forms to be bootstrap3-ified
2014-08-27 14:17:27 +01:00
Skud e5b15fae1a got rid of ugly scaffolding 'back' links 2014-08-27 19:02:49 +10:00
Skud 501fda3fc9 b3ified a few of the lesser-used forms 2014-08-27 19:02:06 +10:00
Skud f6c2873f97 Add page content test suggested by tygriffin 2014-08-27 18:43:44 +10:00
Skud 1103e2719f Fixed up label with link to field it relates to 2014-08-27 18:42:42 +10:00
Skud a5c2c0bb5c Fixed twitter link on contact page 2014-08-25 13:41:15 +10:00
Skud 03ecb7e238 Merge branch 'dev' of https://github.com/Growstuff/growstuff into dev 2014-08-25 09:30:46 +10:00
Taylor Griffin 2a51f66d88 fix seed view tests 2014-08-24 12:11:10 +10:00
Taylor Griffin fd651de7ea implement auto suggest on new seed page 2014-08-24 12:02:53 +10:00
Taylor Griffin d038ac6d8a test that input value is not affected by auto suggest 2014-08-24 10:53:24 +10:00
Skud b91bab117f Merge pull request #383 from Marlena/pg_crop_wranglers
created list of crop wranglers on the crop wranglers page
2014-08-22 14:50:52 +10:00
Skud 1250206c5e Ongoing coverage improvements 2014-08-22 14:44:00 +10:00
Skud 9c5f7753ca Show coverage locally and send to coveralls 2014-08-22 14:09:12 +10:00
Marlena Compton 36199054c0 changed method so that you can now call crop_wranglers and admins. meta-programming ftw 2014-08-21 20:11:10 -07:00
Marlena Compton 13e015b441 fixed role factory to not create extra roles when new members 2014-08-21 20:11:10 -07:00
Marlena Compton 38b9207122 remove extra method 2014-08-21 20:11:10 -07:00
Marlena Compton ec25f2ab91 created list of crop wranglers on the crop wranglers page 2014-08-21 20:11:10 -07:00
Skud 793eecfcb7 Fixed typo 2014-08-22 10:25:40 +10:00
Taylor Griffin ca41f86d93 add validation for case when user input is not in the database 2014-08-17 11:34:00 +10:00
Skud 25d19a25d3 err, make that secret token 2014-08-11 15:00:46 +10:00
Skud 8669907319 add secret key to travis config (needed for devise update) 2014-08-11 14:55:43 +10:00
Skud f02f2ae77e b3ify the signup/signin pages 2014-08-11 14:49:05 +10:00
Skud 561b7c45ac b3ify and improve design of edit profile page 2014-08-11 14:42:00 +10:00
Skud a684efcf2a b3ified some of the forms 2014-08-11 13:02:08 +10:00
Skud 0969419c84 Merge branch 'dev' of https://github.com/Growstuff/growstuff into dev 2014-08-11 12:02:42 +10:00
Skud eaaceb5951 Merge pull request #384 from maco/dev
test & task for the ping -> pint change
2014-08-11 11:23:17 +10:00
Mackenzie Morgan f3c3d73ef1 updating test for harvest units to list the valid units and adding a task to correct misspelled pint harvests already in the database 2014-08-10 19:49:10 -04:00
Taylor Griffin e0d81f5693 improve and abstract auto_suggest api 2014-08-02 22:14:10 +10:00
Taylor Griffin 7aef1264ce fix edge case where user types in full name of crop and doesn't use autocomplete suggestions 2014-08-02 20:44:19 +10:00
Taylor Griffin 957fa3417d remove exclusion of assets group gems 2014-08-01 20:27:26 +10:00
Taylor Griffin c282b3b208 abstract crop suggest autocomplete tests into a shared example 2014-08-01 20:18:28 +10:00
Taylor Griffin 69162cf228 write feature specs for harvesting a crop 2014-08-01 19:38:47 +10:00
Taylor Griffin 1bed42876c write instructions for using crop_suggest.js in a view 2014-08-01 19:30:30 +10:00
Taylor Griffin 8352807d5a add presence validation for crop association on harvest 2014-08-01 19:27:51 +10:00
Taylor Griffin 63673112a7 repair failing view tests after implementing crop-suggest on harvest 2014-08-01 19:26:33 +10:00
Taylor Griffin a49880d4da make crop_suggest.js more abstract so it works for other resources, not just planting 2014-08-01 19:19:27 +10:00
Taylor Griffin b4fdf97056 switch to poltergeist-phantomjs from selenium for js webdriver 2014-07-31 14:48:35 +10:00
Skud 59608c5851 Merge branch 'dev' of https://github.com/Growstuff/growstuff into dev 2014-07-31 10:19:08 +10:00
pozorvlak e865fc1c82 Merge pull request #382 from maco/dev
update harvest model test for oz
2014-07-30 15:01:02 +01:00
Mackenzie Morgan d17ab658c8 fix typo. pint was ping 2014-07-30 09:28:08 -04:00
Mackenzie Morgan 0a256a2dd0 update harvest model test for oz 2014-07-30 09:15:53 -04:00
pozorvlak f280ff968b Merge pull request #381 from maco/dev
Add 'oz' as a weight unit for harvesting
2014-07-30 11:22:58 +01:00
Mackenzie Morgan 1716de2dfc Add 'oz' as a weight unit for harvesting 2014-07-30 01:31:39 -04:00
Taylor Griffin 094d9c509a write feature spec for create planting functionality 2014-07-29 10:14:20 +10:00
Taylor Griffin 012f37f366 set autoFocus to true for jquery autocomplete 2014-07-29 08:42:35 +10:00
Taylor Griffin 1054f08206 write feature spec for crop-suggest functionality on new planting form 2014-07-28 00:23:13 +10:00
Taylor Griffin a707d9a2ea write feature spec that tests crop suggest functionality in new planting form 2014-07-28 00:15:31 +10:00
Taylor Griffin 9d6e787883 set up database_cleaner so js specs will use the same database connection as regular specs 2014-07-28 00:14:06 +10:00
Taylor Griffin b28ce28703 replace mapbox_map_id and nominatim_user_agent_email with benign values if Rails env is test 2014-07-28 00:12:40 +10:00
Taylor Griffin ec060b9cc0 fix most view tests that broke after changing new planting form to auto-suggest crop name 2014-07-27 22:40:14 +10:00
Taylor Griffin 948aeb1289 working on getting Selenium tests to pass 2014-07-27 21:04:52 +10:00
Taylor Griffin 1ee79c25f1 set up selenium test but encountering jQuery not defined error 2014-07-27 07:38:56 +10:00
Taylor Griffin 29752e049e remove stray reference to capybara 2014-07-26 20:19:46 +10:00
Taylor Griffin 8a1dd9d171 implement autocomplete for crop name on new planting form 2014-07-26 20:16:22 +10:00
Taylor Griffin 5df0c9c71a sketch feature test for planting a crop 2014-07-26 08:36:48 +10:00
Taylor Griffin b940644ef3 add capybara and selenium gems 2014-07-26 07:58:05 +10:00
Skud bb0f88bc0b Small amount of b3ification when merging dev into b3 branch 2014-07-22 14:26:22 +10:00
Skud d03bb5e849 Merge branch 'dev' into bootstrap3 2014-07-22 14:24:24 +10:00
Skud 250a2b7d02 Merge branch 'bootstrap3' into dev
Conflicts:
	app/assets/stylesheets/overrides.css.less
2014-07-22 14:24:07 +10:00
Skud c0ea08ddc1 s/btn-large/btn-lg/ for bootstrap 3 2014-07-22 12:11:33 +10:00
Skud 4e9679b22a make sure all buttons are either btn-default or btn-primary 2014-07-22 12:09:08 +10:00
Skud 117fd23bea add btn-default to all btn-xs 2014-07-22 12:06:28 +10:00
Skud 0294daf423 s/btn-mini/btn-xs/ for bootstrap3 2014-07-22 12:01:49 +10:00
Skud 6e48b7d224 Merge branch 'Skud-scinames' into dev 2014-07-22 11:23:38 +10:00
Skud d558353e4c Merge branch 'scinames' of github.com:Skud/growstuff into Skud-scinames
Conflicts:
	CONTRIBUTORS.md
2014-07-22 11:23:08 +10:00
Skud 817663bdaf Merge branch 'dev' of https://github.com/Growstuff/growstuff into regularemail
Conflicts:
	db/schema.rb
2014-07-20 19:30:20 +10:00
Skud bac836329c Merge pull request #376 from Skud/cropbrowse
Show most popular crops on "browse crops" page
2014-07-20 19:29:32 +10:00
Skud 846a2c89c5 Tweaked FactoryGirl to use create_list 2014-07-20 19:29:06 +10:00
Skud f67732e125 Added checkbox for whether to send planting reminder 2014-07-20 19:17:59 +10:00
Skud 7c09188bb8 Renamed email to planting_reminder 2014-07-20 18:54:58 +10:00
Skud f4c2c2481d Include plantings/harvests in regular email 2014-07-20 18:45:48 +10:00
Skud a7d56d4f92 Added stub code for sending regular (eg. weekly) emails 2014-07-20 17:39:27 +10:00
Skud a0fc8802b2 Allow selection of crop display order (popularity or alphabetical)
Had some trouble with tests; apparently the counter_cache behaves
differently when it starts counting from 0, which meant that some tests
started failing unless you do @crop.reload to refresh the
plantings_count.  Weird, but oh well.
2014-07-18 18:37:47 +10:00
Skud aeb14021f3 Removed unpopular scope (guess it really was unpopular) 2014-07-18 18:17:37 +10:00
Skud 8223025d35 Set default plantings_count to 0 not nil 2014-07-18 18:06:43 +10:00
Skud 573e555bcf Added unpopular scope to crop 2014-07-18 17:52:11 +10:00
Skud c9857bf1c8 popular scope for crops 2014-07-18 17:38:15 +10:00
Skud 6c048dec77 Merge pull request #371 from tygriffin/dev
Fix for bug when redirecting after password reset
2014-07-18 17:30:14 +10:00
Skud 7184a0d5d5 Added scientific name field tests for edit form 2014-07-18 17:29:10 +10:00
Skud e63b2fb472 Set up sci names in spec file so fields are shown 2014-07-18 17:27:25 +10:00
Skud e412184737 Merge pull request #374 from Growstuff/dev
Production push: crop map, crop images, case insensitive search, navbar tweaks
2014-07-18 17:00:51 +10:00
Skud 6cbe194615 Merge pull request #373 from Skud/brandfix
Make centering specific to footer
2014-07-18 16:47:39 +10:00
Skud 48bc019419 Make centering specific to footer 2014-07-18 16:45:42 +10:00
Skud aeba4acf0d Merge pull request #372 from Skud/brandfix
fixed broken brand link in navbar
2014-07-18 16:34:59 +10:00
Skud 90c43336ca fixed broken brand link in navbar
the "float:none" was causing trouble; removing it doesn't seem to change
the display at all.
2014-07-18 16:34:07 +10:00
Taylor Griffin 82598e75f8 fix redirect after reset password bug 2014-07-15 22:57:07 +10:00
Skud 7ef6942694 Merge pull request #370 from sabreuse/bootstrap3
Initial Bootstrap3 push
2014-07-15 12:59:44 +10:00
Amy Hendrix 863f1dfae7 Update planting form 2014-07-14 22:19:07 -04:00
Taylor Griffin 3509b6e403 Merge branch 'master' of https://github.com/Growstuff/growstuff into dev 2014-07-15 11:52:00 +10:00
Amy Hendrix 8da3430852 override some thumbnail styles 2014-07-14 21:42:44 -04:00
Amy Hendrix 98cbac8a70 Remove an extra class on member thumbs 2014-07-14 21:18:15 -04:00
Amy Hendrix 81a996b8cc New markup for thumbnails 2014-07-14 20:50:35 -04:00
Amy Hendrix 8004632b41 Thumbnail style on individual planting page 2014-07-14 20:39:40 -04:00
Amy Hendrix 48d3488b2d B3 thumbnails for crops 2014-07-14 00:06:40 -04:00
Amy Hendrix e93d4df3c0 Responsive thumbnails for members 2014-07-14 00:02:53 -04:00
Amy Hendrix 6503b2ec7c Turn off caching in dev 2014-07-13 23:54:37 -04:00
Amy Hendrix d910b5629a Make thumbnail avatar responsive 2014-07-13 22:39:58 -04:00
Amy Hendrix 2fbd596811 Hidden class (not visible), to disable jumbotron class on home 2014-07-13 22:25:21 -04:00
Amy Hendrix 005a31c880 Use a hidden class for phones only, rather than multiple visible classes, on member block 2014-07-13 22:19:57 -04:00
Skud 0fd10643ce Merge pull request #369 from sabreuse/dev
Fix an issue with menu item layout at small screen sizes
2014-07-14 12:00:59 +10:00
Amy Hendrix 4be08e261a Merge branch 'dev' into bootstrap3 2014-07-13 21:55:43 -04:00
Amy Hendrix 10af60f30d Cleanup crops.js.erb 2014-07-13 21:46:33 -04:00
Amy Hendrix 191363402a Replace crops.js.erb 2014-07-13 21:45:19 -04:00
Amy Hendrix 0714c2a38c Menu items should be block, not inline-block, at mobile screen sizes 2014-07-13 21:30:08 -04:00
Amy Hendrix bf1821f8ce Force bootstrap overrides into sync with upstream/dev 2014-07-13 21:26:07 -04:00
Amy Hendrix c2435cfb8a catch up with upstream 2014-07-13 21:08:44 -04:00
Amy Hendrix db9ef0bc83 Full-width form elements 2014-07-13 20:28:20 -04:00
Amy Hendrix b374beae35 Tweaks for bottom navbar 2014-07-13 20:20:58 -04:00
Amy Hendrix fdd3951ed7 Green is the primary brand color 2014-07-13 20:13:44 -04:00
Amy Hendrix 84f6635679 Continue cleaning up header styling 2014-07-13 20:07:42 -04:00
Amy Hendrix 27062d2537 Button group styling for homepage plant/harvest/etc actions 2014-07-13 20:07:20 -04:00
Amy Hendrix 0263e361c5 Update footer markup to use bootstrap3 navbar classes 2014-07-13 20:06:31 -04:00
Amy Hendrix 17c822f6f3 Unitless line-height 2014-07-13 19:44:21 -04:00
Amy Hendrix 4728de5dd8 Clean up header markup for Bootstrap 3 2014-07-13 19:27:06 -04:00
Amy Hendrix 4436562dec Bootstrap3: fix vars for nav & dropdowns 2014-07-13 19:05:51 -04:00
Amy Hendrix 155d68bab1 Bootstrap3: inline lists 2014-07-13 18:46:08 -04:00
Amy Hendrix b7fbe60b83 Bootstrap3: form control groups 2014-07-13 18:45:56 -04:00
Amy Hendrix 76f2d003c5 visible and hidden elements to bootstrap3 2014-07-13 18:37:33 -04:00
Amy Hendrix 0d7fbc9b76 update button class to bootstrap3 2014-07-13 18:33:19 -04:00
Amy Hendrix 6ec7b8f897 Jumbotron classes to bootstrap3 2014-07-13 18:27:48 -04:00
Amy Hendrix bf217b1618 correct navbar-btn 2014-07-13 18:25:02 -04:00
Amy Hendrix bb458c17e8 another navbar-collapse instance 2014-07-13 18:23:53 -04:00
Amy Hendrix 6cb89d1c75 correct navbar-nav class in header 2014-07-13 18:22:01 -04:00
Amy Hendrix e9b3c33022 Navbar centering style for bootstrap3 2014-07-13 18:21:04 -04:00
Amy Hendrix d7145b327f Update .brand to bootstrap3 2014-07-13 18:19:22 -04:00
Amy Hendrix f0cd8df6e0 Update column classes 2014-07-13 18:16:57 -04:00
Amy Hendrix 8d0d01991b Bootstrap3 update: row classes 2014-07-13 15:15:08 -04:00
Amy Hendrix df9169c13d Get stylesheet includes working 2014-07-13 15:11:59 -04:00
Amy Hendrix 088cd36d6f Update variable names to bootstrap 3 versions 2014-07-13 15:11:35 -04:00
Amy Hendrix e226ce406c Rename bootstrap_and_overrides file 2014-07-13 15:11:21 -04:00
Amy Hendrix bc38359219 Didn't need to specify including custom bootstrap - require_tree takes care of it 2014-07-13 14:23:35 -04:00
Amy Hendrix 471ecbc458 Require the new custom bootstrap the main stylesheet 2014-07-13 14:15:27 -04:00
Amy Hendrix 9a09d8a0ae Switch from twitter-bootstrap-rails gem to less-rails-bootstrap 2014-07-13 14:12:36 -04:00
Taylor Griffin ded464ad4c removed call to for debugging 2014-07-13 18:00:46 +10:00
Taylor Griffin 8b45a1759c got scientific names working on the crop page but view tests are failing 2014-07-13 17:57:55 +10:00
Amy Hendrix 21d5156137 Merge branch 'master' of https://github.com/Growstuff/growstuff into dev 2014-07-10 19:43:47 -04:00
Skud 8ee1499a07 Merge pull request #367 from Skud/new-contributors
added a few recent contributors
2014-07-10 10:53:17 +10:00
Skud 0558d854af added a few recent contributors 2014-07-10 10:52:20 +10:00
Joseph Caudle c89e1ec096 Merge pull request #365 from Skud/case-insensitive-search
Case insensitive search
2014-07-08 16:22:37 -04:00
Joseph Caudle 95130bda67 Merge pull request #366 from Skud/wrangler-rake-task
Added rake task to add new crop wranglers
2014-07-08 16:20:40 -04:00
Skud e560258b39 install pg in all environments 2014-07-06 21:40:10 +10:00
Skud 60b407986d One more try to get travis working with postgres 2014-07-06 21:34:23 +10:00
Skud cf41a9b866 don't install production gems in test 2014-07-06 21:30:20 +10:00
Skud c2f7cf08ca trying to revert to the simplest travis config 2014-07-06 21:25:12 +10:00
Skud 7d624fd9ca Attempting to get scientific name editing on one page (doesn't work yet) 2014-07-06 21:21:51 +10:00
Skud 0718b5818a looks like we needed that postgres creation line after all 2014-07-06 20:52:42 +10:00
Skud 5744499182 Added rake task to add new crop wranglers
Also changed code for admin and crop wrangler to assume we already have
those roles set up, as they're part of db/seeds.rb
2014-07-06 20:37:54 +10:00
Skud 0174202ef0 Remove travis environment
We had this special environment because we wanted travis to be different
to our test environment -- specifically, to use postgres, while we used
sqlite in dev/test.  We now use postgres in dev/test so this is no
longer necessary.
2014-07-06 20:27:35 +10:00
Skud 77d2b0e950 make crop search case insensitive 2014-07-06 20:16:59 +10:00
Skud 8897e5149d switch to using postgres in dev and test 2014-07-06 20:14:12 +10:00
Skud dd381378f1 Merge pull request #364 from Skud/crop-map3
Finally got crop maps AND community map working
2014-07-04 11:42:17 +10:00
Skud 34c45c8935 Fixed bug with specific place map
(it was still referring to div#map not #placesmap)

also changed the headings a bit on that page
2014-07-04 11:17:04 +10:00
Skud 99c473ab40 Changed headings on places maps to match new menu ('Community map') 2014-07-04 11:13:35 +10:00
Skud 0dac36df74 fixed tests to pass with new map div ids 2014-07-04 11:08:13 +10:00
Skud 828e9d318a check that map exists on page before drawing it 2014-07-04 11:02:23 +10:00
Skud 890a21ddb2 small refactoring to clean up js 2014-07-04 10:49:52 +10:00
Skud c8dbdbe298 Rename map on /places to #placesmap
The way the javascript is compiled means it's a good idea to make sure
everything is as distinct as possible.
2014-07-04 10:47:50 +10:00
Skud 9f1a7aad63 Merge pull request #363 from Skud/crop-map2
fixed error with crop map on staging
2014-07-04 10:39:34 +10:00
Skud f28ddaded1 renamed div#map to #cropmap on crop page
this prevents confusion when assets are compiled (i.e. it worked in dev
but not on staging; this fixes the problem.)
2014-07-04 10:38:37 +10:00
pozorvlak ec9bd2bd7b Merge pull request #361 from Skud/crop-map
Crop map
2014-07-03 10:44:01 +01:00
Skud 67dae650bc Merge pull request #362 from Skud/navbar-visual-tweaks
Navbar visual tweaks
2014-07-02 07:33:17 +12:00
Amelia Greenhall a5e4b0816c fix centering on top nav 2014-07-02 07:16:22 +12:00
Amelia Greenhall adb275737f update the navbar and footer to more modern design and colors 2014-07-02 07:16:22 +12:00
Amelia Greenhall c489c6ac70 remove 1px wide black line on borders 2014-07-02 07:16:22 +12:00
Skud fea7da3546 rearranged crop page headings and added tests 2014-06-30 12:14:06 -07:00
Skud f8cb7248b7 Reduced cluster radius for maps
on both crops and places pages

Did this because the clusters were annoyingly over-general, eg. showing
164 people in the eastern part of North America.  Cluster radius of 20px
is about the radius of the cluster icon itself.  Seems to work better
eg. for separating Melbourne from Sydney on the world map.
2014-06-30 11:56:46 -07:00
Skud 4972127957 Display crop plantings on a map 2014-06-30 11:51:01 -07:00
Skud 3abaca3136 Tweak what's emitted as JSON
(let's just emit plantings for now, as that's all we're using)
2014-06-30 11:48:58 -07:00
Skud 8eb644fc66 Add map, move info to sidebar 2014-06-30 11:48:13 -07:00
Skud 2f8e060b49 added plantings, seeds, and harvests to the crops JSON 2014-06-30 10:56:58 -07:00
pozorvlak cdb146c7d7 Merge pull request #360 from Skud/crop-images
Crop images
2014-06-28 20:04:52 +01:00
Skud 1ac35e7d4e Darkened text background for readability 2014-06-28 11:29:51 -07:00
Skud 0560172565 Fixed incorrect env variable 2014-06-28 11:28:21 -07:00
Skud 343e7963f2 Use the latest omniauth-flickr
Something seems to have chagned in the API (requiring https?) which was
breaking things.
2014-06-28 11:27:45 -07:00
Skud d10c9d96f1 Fixed whitespace issues and tests 2014-06-28 11:27:26 -07:00
Barbara Natali 174b98b118 Improve display of images on crop page 2014-06-18 21:54:30 -07:00
Skud b2948b4367 Merge pull request #357 from Growstuff/dev
Production push: improved navbar, fixed maps bug
2014-06-18 21:02:02 -07:00
Skud 6e1101576e Merge pull request #356 from ameliagreenhall/smallsearch
Smallsearch
2014-06-18 20:49:57 -07:00
Amelia Greenhall 360ca96526 change to input class, not input-append 2014-06-18 19:55:57 -07:00
Amelia Greenhall ef39d26fbd smaller search box in top nav 2014-06-18 19:49:10 -07:00
pozorvlak 6858ec3f17 Merge pull request #354 from Skud/places-name-bug
Fixed bug with capitalisation of usernames in map popups
2014-06-15 00:20:30 +01:00
pozorvlak 22d67083f6 Merge pull request #355 from Skud/admin-menus
Rearranged menus to save space
2014-06-14 23:44:35 +01:00
Skud 997186a701 Rearranged menus to save space 2014-06-12 19:27:02 -07:00
Skud 050834734f Fixed bug with capitalisation of usernames in map popups 2014-06-12 18:49:06 -07:00
Skud ff03405289 Merge pull request #353 from Growstuff/dev
Production push: crop search, backend upgrades, roots/tubers, map fixes
2014-06-06 14:27:50 -05:00
pozorvlak 039eb5472a Merge pull request #352 from Skud/mapbox
Replace cloudmade maps with mapbox
2014-06-04 15:54:08 +01:00
Skud d90268bd16 Added note as to why mapbox config isn't in application.yml 2014-06-02 19:00:50 -05:00
Skud 5d587af8b0 replaced cloudmade maps with mapbox 2014-06-02 18:57:03 -05:00
pozorvlak 879e94fe06 Merge pull request #351 from Skud/root-tuber-csv
Added roots/tubers to the CSV output for crops
2014-05-30 18:27:48 +01:00
Skud 1d71afdb2f Added roots/tubers to the CSV output
Also rearranged their order on the planting form to put it nearer bulbs
2014-05-30 11:05:33 -05:00
Joseph Caudle 73a0ae402c Merge pull request #350 from Skud/ruby-version
switch from .rvmrc to .ruby-version
2014-05-13 09:12:30 -04:00
Alex Bayley 932cbbea26 switch from .rvmrc to .ruby-version 2014-05-13 13:51:16 +10:00
Joseph Caudle 34f3c74013 Merge pull request #348 from pozorvlak/delete_rails_secret
Delete commented-out code.
2014-05-06 11:24:08 -04:00
pozorvlak dcbfda02b9 Merge pull request #349 from maco/dev
Add 'root/tuber' to 'planted from:' list, for things like potatoes
2014-05-06 11:56:22 +01:00
Mackenzie Morgan 062add32dc Add 'root/tuber' to 'planted from:' list, for things like potatoes 2014-05-04 22:46:45 -04:00
Miles Gould 05a2c9080f Delete commented-out code. 2014-05-03 16:21:08 +01:00
pozorvlak 7da0d54487 Merge pull request #347 from Skud/devise-bug2
revert to devise 3.0.x due to confirmable misbehaviour
2014-05-02 10:28:21 +01:00
Skud b489fda18e revert to devise 3.0.x due to confirmable misbehaviour
as documented here: https://github.com/plataformatec/devise/issues/3009

also update mailer to use letter_opener and also localhost:8080 since
we're mostly using unicorn at this point.
2014-05-01 22:48:52 +10:00
pozorvlak f7411da5cf Merge pull request #345 from Skud/figaro
Figaro
2014-04-30 14:12:09 +01:00
Skud 53a4812571 oops, fixed incorrect syntax for env vars 2014-04-29 14:02:39 +10:00
Skud 9e5c5239a8 Need to put the site name in .travis.yml for tests to pass 2014-04-29 13:46:54 +10:00
Skud ee27b3bd6a updated docs in application.yml.example 2014-04-29 13:28:44 +10:00
Skud 8384233f4d Moved RAILS_SECRET_TOKEN to figaro
This is the last of the stuff that was in credentials.sh so I'm removing
the deprecated credentials.example at this point.
2014-04-29 13:18:02 +10:00
Skud 72ce69ea8f moved flickr and twitter api config to figaro 2014-04-29 13:14:47 +10:00
Skud b61bbc2170 moved mailchimp settings to figaro 2014-04-29 13:11:57 +10:00
Skud bf6bb7f620 Moved mandrill config to figaro 2014-04-29 13:07:23 +10:00
Skud bc36713449 Switched paypal settings to figaro 2014-04-29 13:01:04 +10:00
Skud 2cd5b1d2ed Changed one config setting (site name) over to figaro
Also massively simplified the original application.yml.example I
originally committed. Let's do this one step at a time.
2014-04-29 12:57:16 +10:00
Skud 923f943717 added application.yml to gitignore 2014-04-29 12:46:41 +10:00
Skud 13fcf9db4b added deprecation notice to credentials.example 2014-04-29 12:30:56 +10:00
Skud bacbaf756e added application.yml.example 2014-04-29 12:29:28 +10:00
Skud 3f92f1fb79 Added figaro gem 2014-04-29 12:25:07 +10:00
Skud 1c34d428f2 Merge branch 'crop-search' of https://github.com/Skud/growstuff into Skud-crop-search
Conflicts:
	spec/models/crop_spec.rb
2014-04-29 11:16:20 +10:00
Joseph Caudle b95647e353 Merge pull request #344 from Skud/ruby2
Ruby2
2014-04-28 13:47:08 -04:00
Skud c21310c4e2 tweaking less versions as heroku is complaining about later ones 2014-04-28 13:11:43 +10:00
Skud b86014b04f attempting to fix libv8 problem occurring on heroku 2014-04-28 13:02:23 +10:00
Skud 66a7dca5ab apparently leaflet.ie isn't a thing any more?
https://github.com/Leaflet/Leaflet/issues/2159
2014-04-28 12:54:07 +10:00
Skud 64d96f427f update travis.yml to use 2.1.1 2014-04-28 12:44:22 +10:00
Skud 74e1e07567 tweaking secret key settings to match what heroku already has 2014-04-28 12:42:23 +10:00
Skud 28c789f85c Update to ruby 2.1.1 and various gem tweaks to go with it 2014-04-28 12:33:43 +10:00
Skud d33d0c507b Upgrade to ruby 2.0.0 2014-04-28 12:08:13 +10:00
Skud 14318ec235 Merge pull request #342 from pozorvlak/harvest_grams
Allow harvesting non-integer quantities.
2014-04-28 11:02:08 +10:00
Skud 813b0da6ef Merge pull request #343 from pozorvlak/seed-transaction
Wrap rake db:seed in a transaction.
2014-04-28 11:01:54 +10:00
Miles Gould 79f96f5ef4 Insist that crops created by db:seed are new.
This shaves 2s off the 22s runtime of `rake db:seed` on my machine.
2014-01-10 18:11:27 +00:00
Miles Gould c50f345f1c Wrap rake db:seed in a transaction.
This gives about a 30% speedup on my machine (from 30s to 20s). See
http://stackoverflow.com/questions/1711631/how-do-i-improve-the-performance-of-sqlite
2014-01-10 14:10:27 +00:00
Miles Gould 4b88bf80f1 Test for spec=any in harvests/new. 2014-01-05 13:20:07 +00:00
Miles Gould deb706607e Explain step="any" in harvest _form view. 2014-01-05 12:27:10 +00:00
Miles Gould 96675e2eca Allow harvesting non-integer quantities.
Some browsers (grrr Firefox for Android grrrr) assume "number" means
"integer" unless you specify `step="any"`. Perhaps the developers were
inspired by Kronecker?
http://mathoverflow.net/questions/34445/meaning-of-kroneckers-comment-to-lindemann

This was reported as a bug for non-integer weights; I've allowed
non-integer quantities in the other field, because some allowable units
(eg litres) are obviously divisible.
2014-01-03 21:03:01 +00:00
Skud aa07928f1f Show crop thumbnails on search results page 2014-01-03 22:56:31 +11:00
Skud 47f182193f Added sexy search button to navbar search box 2014-01-03 22:48:06 +11:00
Skud 4ce071a0df Fixed a bug that was deleting crops from the database!
Best bug of the night. TIL: don't call delete on an activerecord
collection expecting it to act like an array. D'oh!
2014-01-03 22:47:18 +11:00
Skud 0a3ecdc5ad Added crop search controller and views 2014-01-03 22:29:44 +11:00
Skud addd9cbddf Added search method to crops
For now it just does a naive SQL LIKE query. We can make this fancier in
future, if we want to.
2014-01-03 21:50:41 +11:00
Skud 30c1129cab Added route for crop search 2014-01-03 21:28:08 +11:00
Skud 9b278ed05e Added crop search form to header 2014-01-03 21:26:35 +11:00
Skud 8588d0f901 Added a bit more info about mailchimp lists
(not really part of this story, was just hanging around, sorry)
2014-01-03 21:25:54 +11:00
pozorvlak 06f1d9cb7e Merge pull request #338 from Skud/crop-mentions
Crop mentions
2014-01-02 03:16:40 -08:00
Skud f45a8b346f Merge pull request #339 from pozorvlak/harvest-parts
Harvest parts
2014-01-02 03:05:56 -08:00
Miles Gould 338a7512e8 Explain reordering of plant_parts in a comment. 2014-01-02 11:04:57 +00:00
Skud e00ad7d5eb Merge pull request #340 from Growstuff/dev
Production push: harvest improvements, more RSS, crop uploads, new garden fields
2014-01-02 02:14:16 -08:00
Miles Gould 18ccb0d9fb Merge branch 'dev' into harvest-parts
Conflicts:
	spec/models/harvest_spec.rb
2013-12-03 13:25:18 +00:00
Miles Gould 2a260abf05 Fix Postgres problem with PlantParts#crops
Postgres complains if the ORDER BY clause of a SELECT DISTINCT query is
not precisely one of the SELECTed fields. The default sort order on
crops is lower(name), and Postgres is not smart enough to notice that it
can calculate this from fields which are selected. The solution is to
override PlantParts#crops to remove the ORDER BY clause, and replace it
with `ORDER BY name`. This is not perfect, because it means the crops
associated to plant parts will not be sorted in the same order as crops
on the rest of the site.
2013-12-03 12:56:57 +00:00
Skud 948cb37d26 Specify ruby version for heroku's benefit 2013-11-23 15:56:07 +11:00
Skud 9da92c8f71 Make growstuff HAML extensions case insensitive 2013-11-11 11:18:14 +11:00
Skud 11e7055497 Improved case (in-)sensitivity in tests 2013-11-11 11:11:35 +11:00
Skud 9c899e80a3 Updated help text for markdown 2013-11-11 11:11:12 +11:00
Skud 076db6dd07 Use growstuff markdown in RSS feeds 2013-11-11 10:33:35 +11:00
Skud 8620236cb0 Use growstuff markdown everywhere (except policy) 2013-11-11 10:33:20 +11:00
Skud ce7bf82336 Make growstuff markdown actually work 2013-11-11 10:20:52 +11:00
Skud 3a162e9b31 Fixed broken tests for markdown filter 2013-11-08 12:55:47 +11:00
Miles Gould 4add2f3dcf s/system_name/name 2013-11-07 12:03:43 +00:00
Skud f3779cd2c9 Quick links to crop pages in Markdown. 2013-11-07 11:43:25 +00:00
Skud c575638962 Added harvests and plant parts to crops CSV 2013-11-06 12:00:36 +11:00
Skud 5afaea90b9 Added plant part to harvest CSV 2013-11-06 11:23:52 +11:00
Skud 60eb4c7296 Show aggregate 'grown from' data on crop page 2013-11-06 11:21:08 +11:00
Skud 838f3c6e36 Add plant parts to harvest views 2013-11-06 10:45:03 +11:00
Skud a1ea1fd9c1 prettify plant part views 2013-11-06 10:39:32 +11:00
Skud 435cb4aed9 remove annoying scaffold-generated tests 2013-11-06 10:39:19 +11:00
Skud ba27bb6490 plant parts have crops through harvests 2013-11-06 10:38:50 +11:00
Skud ac5027ec27 Can't delete plant parts that are being used 2013-11-06 10:38:28 +11:00
Miles Gould 084bdc4f40 Add friendly URLs to plant parts. 2013-10-31 00:19:48 +00:00
Miles Gould 1b85326549 Test that only admins can manage plant parts. 2013-10-31 00:02:59 +00:00
Miles Gould f723fea4e2 Load plant parts in db:seed and rake task. 2013-10-30 23:49:34 +00:00
Miles Gould e9a3c0f4ee rails g scaffold PlantPart...
Also migration to remove the string plant_part.
2013-10-30 23:32:20 +00:00
Skud 40eac92013 Moved help text so it flows more nicely 2013-10-29 17:33:02 +11:00
Skud 5302dd58b1 Added pollen as a harvestable plant part 2013-10-29 17:31:16 +11:00
Skud f90da16cb1 Added plant part to harvest form 2013-10-29 17:29:01 +11:00
Skud 7a5bfa5e07 Added 'other' and 'whole plant' to harvestable plant parts 2013-10-29 17:28:51 +11:00
Skud 721692277d Added plant_part validation to harvest model 2013-10-29 17:17:12 +11:00
Skud f89c5e5b86 Added plant_part attribute to harvest 2013-10-29 17:00:32 +11:00
Skud 58bd464bca Merge pull request #327 from Growstuff/dev
Production push: Harvests
2013-10-15 01:20:20 -07:00
Skud 78ee229205 Merge pull request #321 from Growstuff/dev
Production push: order referral codes and some CSS fixes
2013-09-18 18:23:22 -07:00
Skud 065005395f Merge pull request #317 from Skud/crop-hierarchy-caching
Hotfix: Added caching of full crop hierarchy
2013-09-12 18:30:36 -07:00
Skud 22cb6d2ad5 Merge pull request #315 from Skud/one-more-places-fix
(hotfix) Removed deploy script reminders, as no longer necessary
2013-09-12 05:07:21 -07:00
Skud b02091bc00 Merge pull request #313 from Growstuff/dev
Production push: places
2013-09-12 05:03:21 -07:00
Skud b8cd4cc7cf Merge pull request #299 from Growstuff/dev
Production push: newsletter signup and some backend stuff
2013-08-29 16:37:58 -07:00
Skud e8d91c6404 Merge pull request #296 from Growstuff/dev
Production push: member bio, wrangler homepage, bugfixes
2013-08-26 17:09:18 -07:00
Skud 83f99dd32e Merge pull request #289 from Growstuff/dev
Production push: redesigned homepage, JSON API cleanup, RSS improvements, recent activity bugfix
2013-08-21 18:13:03 -07:00
Skud ec7ccd8500 Merge pull request #264 from Growstuff/dev
Production push: crop photos, rearranged navbars
2013-07-29 08:12:03 -07:00
1038 changed files with 21248 additions and 59373 deletions

No files matched your search

+40
View File
@@ -0,0 +1,40 @@
engines:
rubocop:
enabled: true
scss-lint:
enabled: true
shellcheck:
enabled: true
eslint:
enabled: true
coffeelint:
enabled: true
brakeman:
enabled: true
bundler-audit:
enabled: true
duplication:
enabled: true
config:
languages:
- ruby
- javascript
fixme:
enabled: true
exclude_fingerprints: # rubocop_todo filename
- 63b8552079d106832fbe281566b6d028
- d38afbaaea3ecaa9a4cf046b07a01cec
- 57ff3968fd371d3e1f75c237d6c78acf
ratings:
paths:
- "**.rb"
- "**.js"
- "**.coffee"
- "**.sass"
- "**.haml"
- Gemfile.lock
exclude_paths:
- config/
- db/
- spec/
- public/
+3
View File
@@ -7,8 +7,11 @@ coverage
.*.sw*
*~
*.DS_Store
config/application.yml
config/database.yml
credentials*.sh
Pathogen:
custom_plan.rb
zeus.json
.bundle
.idea/**
+1
View File
@@ -1 +1,2 @@
--color
--require spec_helper
+48
View File
@@ -0,0 +1,48 @@
inherit_from: .rubocop_todo.yml
AllCops:
Include:
- 'Rakefile'
- 'config.ru'
- 'lib/**/*.rake'
Exclude:
- 'db/schema.rb'
- 'vendor/**/*'
Style/StringLiterals:
Enabled: false
Metrics/MethodLength:
Description: 'Avoid methods longer than 30 lines of code.'
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#short-methods'
# Set to 30 once all methods are fixed.
# Max: 30
Max: 104
# Remove the following once the code style matches
# Offense count: 59
Metrics/AbcSize:
Max: 115
# Offense count: 5
# Configuration parameters: CountComments.
Metrics/BlockLength:
Max: 62
# Offense count: 6
# Configuration parameters: CountComments.
Metrics/ClassLength:
Max: 275
# Offense count: 6
Metrics/CyclomaticComplexity:
Max: 11
# Offense count: 1108
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives.
# URISchemes: http, https
Metrics/LineLength:
Max: 223
# Offense count: 8
Metrics/PerceivedComplexity:
Max: 12
+2504
View File
File diff suppressed because it is too large. Load diff
+1
View File
@@ -0,0 +1 @@
growstuffdev
+1
View File
@@ -0,0 +1 @@
2.3.1
-52
View File
@@ -1,52 +0,0 @@
#!/usr/bin/env bash
# This is an RVM Project .rvmrc file, used to automatically load the ruby
# development environment upon cd'ing into the directory
# First we specify our desired <ruby>[@<gemset>], the @gemset name is optional,
# Only full ruby name is supported here, for short names use:
# echo "rvm use 1.9.3" > .rvmrc
environment_id="ruby-1.9.3-p194@growstuffdev"
# Uncomment the following lines if you want to verify rvm version per project
# rvmrc_rvm_version="1.14.10 (stable)" # 1.10.1 seams as a safe start
# eval "$(echo ${rvm_version}.${rvmrc_rvm_version} | awk -F. '{print "[[ "$1*65536+$2*256+$3" -ge "$4*65536+$5*256+$6" ]]"}' )" || {
# echo "This .rvmrc file requires at least RVM ${rvmrc_rvm_version}, aborting loading."
# return 1
# }
# First we attempt to load the desired environment directly from the environment
# file. This is very fast and efficient compared to running through the entire
# CLI and selector. If you want feedback on which environment was used then
# insert the word 'use' after --create as this triggers verbose mode.
if [[ -d "${rvm_path:-$HOME/.rvm}/environments"
&& -s "${rvm_path:-$HOME/.rvm}/environments/$environment_id" ]]
then
\. "${rvm_path:-$HOME/.rvm}/environments/$environment_id"
[[ -s "${rvm_path:-$HOME/.rvm}/hooks/after_use" ]] &&
\. "${rvm_path:-$HOME/.rvm}/hooks/after_use" || true
if [[ $- == *i* ]] # check for interactive shells
then echo "Using: $(tput setaf 2)$GEM_HOME$(tput sgr0)" # show the user the ruby and gemset they are using in green
else echo "Using: $GEM_HOME" # don't use colors in non-interactive shells
fi
else
# If the environment file has not yet been created, use the RVM CLI to select.
rvm --create use "$environment_id" || {
echo "Failed to create RVM environment '${environment_id}'."
return 1
}
fi
# If you use bundler, this might be useful to you:
# if [[ -s Gemfile ]] && {
# ! builtin command -v bundle >/dev/null ||
# builtin command -v bundle | GREP_OPTIONS= \grep $rvm_path/bin/bundle >/dev/null
# }
# then
# printf "%b" "The rubygem 'bundler' is not installed. Installing it now.\n"
# gem install bundler
# fi
# if [[ -s Gemfile ]] && builtin command -v bundle >/dev/null
# then
# bundle install | GREP_OPTIONS= \grep -vE '^Using|Your bundle is complete'
# fi
+47 -25
View File
@@ -1,29 +1,51 @@
---
sudo: false
language: ruby
bundler_args: --without development assets
env: RAILS_ENV=travis
cache:
bundler: true
directories:
- travis_phantomjs
env:
matrix:
- GROWSTUFF_SITE_NAME="Growstuff (travis)" RAILS_SECRET_TOKEN='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' GROWSTUFF_ELASTICSEARCH='true'
- GROWSTUFF_SITE_NAME="Growstuff (travis)" RAILS_SECRET_TOKEN='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' GROWSTUFF_ELASTICSEARCH='false'
global:
secure: "Z5TpM2jEX4UCvNePnk/LwltQX48U2u9BRc+Iypr1x9QW2o228QJhPIOH39a8RMUrepGnkQIq9q3ZRUn98RfrJz1yThtlNFL3NmzdQ57gKgjGwfpa0e4Dwj/ZJqV2D84tDGjvdVYLP7zzaYZxQcwk/cgNpzKf/jq97HLNP7CYuf4="
rvm:
- 1.9.3
- 2.3.1
before_install:
- export PATH=$PWD/travis_phantomjs/phantomjs-2.1.1-linux-x86_64/bin:$PATH
- if [ $(phantomjs --version) != '2.1.1' ]; then rm -rf $PWD/travis_phantomjs; mkdir -p $PWD/travis_phantomjs; fi
- if [ $(phantomjs --version) != '2.1.1' ]; then wget https://assets.membergetmember.co/software/phantomjs-2.1.1-linux-x86_64.tar.bz2 -O $PWD/travis_phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2; fi
- if [ $(phantomjs --version) != '2.1.1' ]; then tar -xvf $PWD/travis_phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2 -C $PWD/travis_phantomjs; fi
- phantomjs --version
before_script:
- psql -c 'create database growstuff_test;' -U postgres
- psql -c 'create database growstuff_test;' -U postgres
script:
- bundle exec rake db:migrate --trace
- bundle exec rspec spec/
# after_success:
# - if [[ "$TRAVIS_BRANCH" == "dev" ]]; then git remote add heroku git@heroku.com:growstuff-dev.git
# - wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh
# - echo "Host heroku.com" >> ~/.ssh/config
# - echo " StrictHostKeyChecking no" >> ~/.ssh/config
# - echo " CheckHostIP no" >> ~/.ssh/config
# - echo " UserKnownHostsFile=/dev/null" >> ~/.ssh/config
# - heroku keys:clear
# - yes | heroku keys:add
# - yes | git push heroku dev:master
# - heroku run rake db:migrate
# - heroku restart
# - fi
# env:
# global:
# secure: "QFQbCdNGyjeatp/H0j0y0oGiue45fpG2w6eA2QAbq2RmvhabgXbd5WIobN90\ndrae3S7TRxPDpMpus90icykX6EzOTLXCEvaC4rh9pCcRktj3SZqq5b9rVTvs\n1MvlS6HhtsVqsrKjQUb0WmPpnganIzTs0RtGaQspo2joPJO18A4="
- bundle exec rubocop --display-cop-names --rails
- script/gemfile_check
- bundle exec script/check_contributors_md
- bundle exec rake db:migrate --trace
- bundle exec rspec spec/
services:
- elasticsearch
before_deploy:
- bundle exec script/heroku_maintenance.rb on
deploy:
provider: heroku
api_key:
secure: WrQxf0fEKkCdXrjcejurobOnNNz3he4dDwjBbToXbQTQNDObPp7NetJrLsfM8FiUFEeOuvhIHHiDQtMvY720zGGAGxDptvgFS+0QHCUqoTRZA/yFfUmHlG2jROXTzk5uVK0AE4k6Ion5kX8+mM0EnMT/7u+MTFiukrJctSiEXfg=
on:
repo: Growstuff/growstuff
app:
dev: growstuff-staging
travis_deploy: tranquil-basin-3130
travis_containers: tranquil-basin-3130
run:
- "rake db:migrate"
- "script/deploy-tasks.sh"
- restart
after_deploy:
- bundle exec script/heroku_maintenance.rb off
addons:
code_climate:
repo_token: 462e015bbdaabfb20910fc07f2fea253410ecb131444e00f97dbf32dc6789ca6
+10 -32
View File
@@ -1,35 +1,13 @@
Thanks for contributing to Growstuff! We have different contribution
guidelines depending on whether your change is a small one (a one-line
bugfix or similar) or a larger one.
Thanks for contributing to Growstuff!
## Small changes
When you create a pull request, please include the following:
Send us a pull request! We will get one of our pairs of coders to
review it.
If you are interested in becoming a more regular contributor or working
on larger features, please see the [Growstuff
wiki](http://wiki.growstuff.org/) for more information.
## Larger changes
Growstuff does pair programming (two coders working together) for all
new features and other significant changes. This means that if you
submit a pull request and weren't working in a pair, we're unlikely to
merge it into the project as-is.
If you would like to work on any larger change, we would appreciate it
if you would get in touch with us, preferably via our [mailing
list](http://lists.growstuff.org/mailman/listinfo/discuss), and talk to
us about it first. We'll try and hook you up with a partner so you can
work as a pair, either in person or remotely depending on where you are.
The [Growstuff wiki](http://wiki.growstuff.org/) has lots more
information on our dev process, to get you started if you would like to
join us.
If you submit a larger change without working in a pair, we will treat
your work as an experimental "spike" and get one of our pairs of
programmers to look over it and maybe use what you've done as the basis
for re-implementing it using our processes. **We'd much rather work
with you, so please talk to us first!**
* Mention the issue it solves (eg. #123)
* Your code should follow our [Coding style guide](http://wiki.growstuff.org/index.php/Coding_style_guide)
* Make sure you have automated tests for your work, where possible.
* Add your name (and that of your pair partner, if any) to [CONTRIBUTORS.md](CONTRIBUTORS.md).
If you would like to discuss your work before submitting a pull request,
please join any of our [Discussion
forums](http://wiki.growstuff.org/index.php/Discussion_forums), where
our dev team will be happy to help you.
+37 -3
View File
@@ -1,5 +1,5 @@
This is a list of contributors to Growstuff's codebase. We maintain
this list because we work in pairs, but Github only knows about the
this list because we often work in pairs, but Github only knows about the
person who actually does the commits. This gives credit to both members
of the pair.
@@ -11,10 +11,12 @@ submit the change with your pull request.
- Alex Bayley / [Skud](https://github.com/Skud)
- Cesy / [cesy](https://github.com/cesy)
- Miles Gould / [pozorvlak](https://github.com/pozorvlak)
- Joseph Caudle / [jcaudle](https://github.com/jcaudle)
- Taylor Griffin / [tygriffin](https://github.com/tygriffin)
- Mackenzie Morgan / [maco](https://github.com/maco)
## Contributors
- Joseph Caudle / [jcaudle](https://github.com/jcaudle)
- Ricky Amianym / [amianym](https://github.com/amianym)
- Juliet Kemp / [julietk](https://github.com/julietk)
- Federico Mena Quintero / [federicomenaquintero](https://github.com/federicomenaquintero)
@@ -22,7 +24,6 @@ submit the change with your pull request.
- Maia Sauren / [sauramaia](https://github.com/sauramaia)
- Norman Ancajas / [nbancajas](https://github.com/nbancajas)
- Jonathan "Duke" Leto / [leto](https://github.com/leto)
- Mackenzie Morgan / [maco](https://github.com/maco)
- Amy Hendrix / [sabreuse](https://github.com/sabreuse)
- CephLPod / [cephLpod](https://github.com/cephLpod/)
- Gemma Mason / [gemmaellen](https://github.com/gemmaellen)
@@ -38,3 +39,36 @@ submit the change with your pull request.
- Yaw Boakye / [yawboakye](https://github.com/yawboakye)
- Ryan Clark / [IAMRYO](https://github.com/IAMRYO)
- Marty Hines / [martyhines](https://github.com/martyhines)
- Amelia Greenhall / [ameliagreenhall](https://github.com/ameliagreenhall)
- Barb Natali / [barbnatali](https://github.com/barbnatali)
- Marlena Compton / [Marlena](https://github.com/marlena)
- Elizabeth A. Kari / [catfriend](https://github.com/catfriend)
- Cheri Allen / [cherimarie](https://github.com/cherimarie)
- Maki Sugita / [macckii](https:://github.com/macckii)
- Shiho Takagi / [oshiho3](https://github.com/oshiho3)
- Emma Winston / [emmawinston](https://github.com/emmawinston)
- Kevin Rio / [krio](https://github.com/krio)
- Yoong Kang Lim / [yoongkang](https://github.com/yoongkang)
- Kevin Yang / [kevieyang](https://github.com/kevieyang)
- Justin Hamman / [juzham](https://github.com/juzham)
- Rocky Jaiswal / [rocky-jaiswal](https://github.com/rocky-jaiswal)
- Robert Landreaux / [robertlandreaux](https://github.com/robertlandreaux)
- Savant Krishna / [sksavant](https://github.com/sksavant)
- Jake Yesbeck / [yez](https://github.com/yez)
- Mauricio Gonzalez / [mauricio-gonzalez](https://github.com/mauricio-gonzalez)
- Andrey Bazhutkin / [andrba](https://github.com/andrba)
- Gabriel Sandoval / [gabrielsandoval](https://github.com/gabrielsandoval)
- Cjay Billones / [CjayBillones](https://github.com/CjayBillones)
- Katy Ereira / [maccath](https://github.com/maccath)
- Gabrielle DeWitt / [gabrielle27](https://github.com/gabrielle27)
- Manmeet Singh / [manmeetsingh](https://github.com/manmeetsingh)
- Jym Paul Carandang / [jacarandang](https://github.com/jacarandang)
- Anthony Atkinson / [sha1sum](https://github.com/sha1sum)
- Terence Conquest / [twconquest](https://github.com/twconquest)
- Daniel O'Connor / [CloCkWeRX](https://github.com/CloCkWeRX)
- DV Dasari / [dv2](https://github.com/dv2)
- Eric Tillberg / [Thrillberg](https://github.com/Thrillberg)
- Lucas Nogueira / [lucasnogueira](https://github.com/lucasnogueira)
- Charley Lewittes / [ctlewitt](https://github.com/ctlewitt)
- Kristine Nicole Polvoriza / [polveenomials](https://github.com/polveenomials)
- Brenda Wallace / [br3nda](https://github.com/br3nda)
-4
View File
@@ -1,4 +0,0 @@
load 'deploy'
# Uncomment if you are using Rails' asset pipeline
# load 'deploy/assets'
load 'config/deploy' # remove this line to skip loading any of the default tasks
+80 -80
View File
@@ -1,84 +1,45 @@
# frozen_string_literal: true
source 'https://rubygems.org'
ruby "1.9.3"
ruby '2.3.1'
gem 'rails', '~> 4.2.1'
gem 'bundler', '>=1.1.5'
gem 'rails', '3.2.13'
gem 'rack', '~>1.4.5'
gem 'json', '~>1.7.7'
gem 'sass-rails', '~> 5.0.4'
gem 'coffee-rails', '~> 4.1.0'
gem 'haml'
gem 'leaflet-rails'
gem 'leaflet-markercluster-rails'
gem 'unicorn' # http server
gem 'cancan' # for checking member privileges
# CSS framework
gem 'bootstrap-sass', '~> 3.3.6'
gem 'font-awesome-sass'
gem 'gibbon' # for Mailchimp newsletter subscriptions
gem 'csv_shaper' # CSV export
# vendored activemerchant for testing- needed for bogus paypal
# gateway monkeypatch
gem 'activemerchant', '1.33.0',
:path => 'vendor/gems/activemerchant-1.33.0',
:require => 'active_merchant'
gem 'active_utils', '1.0.5',
:path => 'vendor/gems/active_utils-1.0.5'
group :production, :staging do
gem 'pg'
gem 'newrelic_rpm'
gem 'dalli'
gem 'memcachier'
gem 'rails_12factor' # supresses heroku plugin injection
end
# Gems used only for assets and not required
# in production environments by default.
group :assets do
# CSS preprocessor, used for app/assets/stylesheets/application.css
gem 'sass-rails', '~> 3.2.3'
# CoffeeScript is a Python-like language that compiles to JavaScript
gem 'coffee-rails', '~> 3.2.1'
# less-rails depends on a JavaScript engine; we use therubyracer.
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# long term, we'll probably want node.js for performance, but this will do
# for now as it's easier for new people to install
gem 'therubyracer', '~> 0.10.2', :platforms => :ruby
# Another CSS preprocessor, used for Bootstrap overrides
gem "less-rails"
# CSS framework
gem "twitter-bootstrap-rails",
:git => 'https://github.com/seyhunak/twitter-bootstrap-rails.git',
:ref => '2c7c52'
gem 'uglifier', '>= 1.0.3' # JavaScript compressor
gem 'compass-rails', '~> 1.0.3' # Yet Another CSS framework
end
gem 'uglifier', '~> 2.7.2' # JavaScript compressor
gem 'jquery-rails'
gem 'jquery-ui-rails', '~> 5.0.2'
gem 'js-routes' # provides access to Rails routes in Javascript
gem 'flickraw'
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
gem 'leaflet-rails'
gem 'leaflet-markercluster-rails'
gem 'unicorn' # http server
gem 'pg'
gem 'figaro' # for handling config via ENV variables
gem 'cancancan', '~> 1.9' # for checking member privileges
gem 'gibbon', '~>1.2.0' # for Mailchimp newsletter subscriptions
gem 'csv_shaper' # CSV export
gem 'ruby-units' # for unit conversion
# To use Jbuilder templates for JSON
# gem 'jbuilder'
gem 'comfortable_mexican_sofa', '~> 1.12.0' # content management system
# Use unicorn as the app server
# gem 'unicorn'
gem 'kaminari' # pagination
gem 'bootstrap-kaminari-views' # bootstrap views for kaminari
# To use debugger
group :development do
# Installation of the debugger gem fails on Travis CI,
# so we don't use it in the test environment
gem 'debugger'
gem 'better_errors'
gem 'binding_of_caller'
end
gem 'activemerchant'
gem 'active_utils'
gem 'sidekiq'
# Markdown formatting for updates etc
gem 'bluecloth'
@@ -87,18 +48,16 @@ gem 'bluecloth'
gem 'will_paginate', '~> 3.0'
# user signup/login/etc
gem 'devise'
gem 'devise', '>= 4.0.0'
# nicely formatted URLs
gem 'friendly_id'
gem 'friendly_id', '~> 5.0.4'
# gravatars
gem 'gravatar-ultimate'
# For geolocation
gem 'geocoder',
:git => 'https://github.com/alexreisner/geocoder.git',
:ref => '104d46'
gem 'geocoder'
# For easy calendar selection
gem 'bootstrap-datepicker-rails'
@@ -106,18 +65,59 @@ gem 'bootstrap-datepicker-rails'
# For connecting to other services (eg Twitter)
gem 'omniauth'
gem 'omniauth-twitter'
gem 'omniauth-flickr'
gem 'omniauth-flickr', '>= 0.0.15'
gem 'omniauth-facebook'
# client for Elasticsearch. Elasticsearch is a flexible
# and powerful, distributed, real-time search and analytics engine.
# An example of the use in the project is fuzzy crop search.
gem "elasticsearch-model"
gem "elasticsearch-rails"
gem 'rake', '>= 10.0.0'
group :development, :test do
gem 'sqlite3' # database engine
group :production, :staging do
gem 'newrelic_rpm'
gem 'dalli'
gem 'memcachier'
gem 'rails_12factor' # supresses heroku plugin injection
gem 'bonsai-elasticsearch-rails' # Integration with Bonsa-Elasticsearch on heroku
gem 'sparkpost_rails'
end
group :development, :test, :travis do
gem 'haml-rails' # HTML templating language
gem 'rspec-rails', '~> 2.12.1' # unit testing framework
gem 'webrat' # provides HTML matchers for view tests
gem 'factory_girl_rails', '~> 4.0' # for creating test data
gem 'coveralls', require: false # coverage analysis
group :development do
# A debugger and irb alternative. Pry doesn't play nice
# with unicorn, so start a Webrick server when debugging
# with Pry
gem 'pry'
gem 'better_errors'
gem 'binding_of_caller'
gem 'letter_opener'
gem 'quiet_assets'
gem 'guard'
gem 'guard-rspec'
end
group :development, :test do
gem 'haml-rails' # HTML templating language
gem 'rspec-rails' # unit testing framework
gem 'rspec-activemodel-mocks'
gem 'byebug' # debugging
gem 'database_cleaner', '~> 1.5.0'
gem 'webrat' # provides HTML matchers for view tests
gem 'factory_girl_rails' # for creating test data
gem 'coveralls', require: false # coverage analysis
gem 'capybara' # integration tests
gem 'capybara-email' # integration tests for email
gem 'capybara-screenshot' # for test debugging
gem 'poltergeist', '~> 1.6' # for headless JS testing
gem 'i18n-tasks' # adds tests for finding missing and unused translations
gem 'selenium-webdriver'
gem "codeclimate-test-reporter", group: :test, require: nil
gem "active_merchant-paypal-bogus-gateway"
gem 'rubocop', require: false
end
group :travis do
gem 'heroku-api'
end
+495 -243
View File
@@ -1,314 +1,566 @@
GIT
remote: https://github.com/alexreisner/geocoder.git
revision: 104d466ba7097b7dce5ba19f8e4091b7f69ccdf6
ref: 104d46
specs:
geocoder (1.1.8)
GIT
remote: https://github.com/seyhunak/twitter-bootstrap-rails.git
revision: 2c7c527c354d9068ce49346d4fd8389328d32ce6
ref: 2c7c52
specs:
twitter-bootstrap-rails (2.2.7)
actionpack (>= 3.1)
execjs
rails (>= 3.1)
railties (>= 3.1)
PATH
remote: vendor/gems/active_utils-1.0.5
specs:
active_utils (1.0.5)
activesupport (>= 2.3.11)
i18n
PATH
remote: vendor/gems/activemerchant-1.33.0
specs:
activemerchant (1.33.0)
GEM
remote: https://rubygems.org/
specs:
actionmailer (3.2.13)
actionpack (= 3.2.13)
mail (~> 2.5.3)
actionpack (3.2.13)
activemodel (= 3.2.13)
activesupport (= 3.2.13)
builder (~> 3.0.0)
actionmailer (4.2.7.1)
actionpack (= 4.2.7.1)
actionview (= 4.2.7.1)
activejob (= 4.2.7.1)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 1.0, >= 1.0.5)
actionpack (4.2.7.1)
actionview (= 4.2.7.1)
activesupport (= 4.2.7.1)
rack (~> 1.6)
rack-test (~> 0.6.2)
rails-dom-testing (~> 1.0, >= 1.0.5)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionview (4.2.7.1)
activesupport (= 4.2.7.1)
builder (~> 3.1)
erubis (~> 2.7.0)
journey (~> 1.0.4)
rack (~> 1.4.5)
rack-cache (~> 1.2)
rack-test (~> 0.6.1)
sprockets (~> 2.2.1)
activemodel (3.2.13)
activesupport (= 3.2.13)
builder (~> 3.0.0)
activerecord (3.2.13)
activemodel (= 3.2.13)
activesupport (= 3.2.13)
arel (~> 3.0.2)
tzinfo (~> 0.3.29)
activeresource (3.2.13)
activemodel (= 3.2.13)
activesupport (= 3.2.13)
activesupport (3.2.13)
i18n (= 0.6.1)
multi_json (~> 1.0)
arel (3.0.2)
bcrypt-ruby (3.1.1)
better_errors (1.0.1)
rails-dom-testing (~> 1.0, >= 1.0.5)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
active_link_to (1.0.3)
actionpack
active_merchant-paypal-bogus-gateway (0.1.0)
activemerchant
active_utils (3.2.2)
activesupport (>= 3.2, < 5.1.0)
i18n
activejob (4.2.7.1)
activesupport (= 4.2.7.1)
globalid (>= 0.3.0)
activemerchant (1.60.0)
activesupport (>= 3.2.14, < 5.1)
builder (>= 2.1.2, < 4.0.0)
i18n (>= 0.6.9)
nokogiri (~> 1.4)
activemodel (4.2.7.1)
activesupport (= 4.2.7.1)
builder (~> 3.1)
activerecord (4.2.7.1)
activemodel (= 4.2.7.1)
activesupport (= 4.2.7.1)
arel (~> 6.0)
activesupport (4.2.7.1)
i18n (~> 0.7)
json (~> 1.7, >= 1.7.7)
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
addressable (2.4.0)
arel (6.0.3)
ast (2.3.0)
autoprefixer-rails (6.4.0.2)
execjs
bcrypt (3.1.11)
better_errors (2.1.1)
coderay (>= 1.0.0)
erubis (>= 2.6.6)
rack (>= 0.9.0)
binding_of_caller (0.7.2)
debug_inspector (>= 0.0.1)
bluecloth (2.2.0)
bootstrap-datepicker-rails (1.1.1.3)
bonsai-elasticsearch-rails (0.0.4)
bootstrap-datepicker-rails (1.6.4.1)
railties (>= 3.0)
builder (3.0.4)
cancan (1.6.10)
chunky_png (1.2.8)
coderay (1.1.0)
coffee-rails (3.2.2)
bootstrap-kaminari-views (0.0.5)
kaminari (>= 0.13)
rails (>= 3.1)
bootstrap-sass (3.3.7)
autoprefixer-rails (>= 5.2.1)
sass (>= 3.3.4)
bootstrap_form (2.5.0)
builder (3.2.2)
byebug (9.0.5)
cancancan (1.15.0)
capybara (2.8.0)
addressable
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
capybara-email (2.5.0)
capybara (~> 2.4)
mail
capybara-screenshot (1.0.13)
capybara (>= 1.0, < 3)
launchy
childprocess (0.5.9)
ffi (~> 1.0, >= 1.0.11)
climate_control (0.0.3)
activesupport (>= 3.0)
cliver (0.3.2)
cocaine (0.5.8)
climate_control (>= 0.0.3, < 1.0)
codeclimate-test-reporter (0.6.0)
simplecov (>= 0.7.1, < 1.0.0)
codemirror-rails (5.16.0)
railties (>= 3.0, < 6.0)
coderay (1.1.1)
coffee-rails (4.1.1)
coffee-script (>= 2.2.0)
railties (~> 3.2.0)
coffee-script (2.2.0)
railties (>= 4.0.0, < 5.1.x)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.6.3)
colorize (0.5.8)
columnize (0.3.6)
commonjs (0.2.6)
compass (0.12.2)
chunky_png (~> 1.2)
fssm (>= 0.2.7)
sass (~> 3.1)
compass-rails (1.0.3)
compass (>= 0.12.2, < 0.14)
coveralls (0.6.7)
colorize
multi_json (~> 1.3)
rest-client
simplecov (>= 0.7)
thor
csv_shaper (1.0.0)
coffee-script-source (1.10.0)
comfortable_mexican_sofa (1.12.9)
active_link_to (>= 1.0.0)
bootstrap-sass (>= 3.2.0)
bootstrap_form (>= 2.2.0)
codemirror-rails (>= 3.0.0)
coffee-rails (>= 3.1.0)
haml-rails (>= 0.3.0)
jquery-rails (>= 3.0.0)
jquery-ui-rails (>= 5.0.0)
kramdown (>= 1.0.0)
paperclip (>= 4.0.0)
plupload-rails (>= 1.2.1)
rails (>= 4.0.0, < 5)
rails-i18n (>= 4.0.0)
sass-rails (>= 4.0.3)
concurrent-ruby (1.0.2)
connection_pool (2.2.0)
coveralls (0.8.15)
json (>= 1.8, < 3)
simplecov (~> 0.12.0)
term-ansicolor (~> 1.3)
thor (~> 0.19.1)
tins (>= 1.6.0, < 2)
csv_shaper (1.3.0)
activesupport (>= 3.0.0)
dalli (2.6.4)
dalli (2.7.6)
database_cleaner (1.5.3)
debug_inspector (0.0.2)
debugger (1.6.1)
columnize (>= 0.3.1)
debugger-linecache (~> 1.2.0)
debugger-ruby_core_source (~> 1.2.3)
debugger-linecache (1.2.0)
debugger-ruby_core_source (1.2.3)
devise (3.0.0)
bcrypt-ruby (~> 3.0)
devise (4.2.0)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 3.2.6, < 5)
railties (>= 4.1.0, < 5.1)
responders
warden (~> 1.2.3)
diff-lcs (1.1.3)
diff-lcs (1.2.5)
docile (1.1.5)
easy_translate (0.5.0)
json
thread
thread_safe
elasticsearch (2.0.0)
elasticsearch-api (= 2.0.0)
elasticsearch-transport (= 2.0.0)
elasticsearch-api (2.0.0)
multi_json
elasticsearch-model (0.1.9)
activesupport (> 3)
elasticsearch (> 0.4)
hashie
elasticsearch-rails (0.1.9)
elasticsearch-transport (2.0.0)
faraday
multi_json
erubis (2.7.0)
execjs (1.4.0)
multi_json (~> 1.0)
factory_girl (4.2.0)
excon (0.51.0)
execjs (2.7.0)
factory_girl (4.7.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.2.1)
factory_girl (~> 4.2.0)
factory_girl_rails (4.7.0)
factory_girl (~> 4.7.0)
railties (>= 3.0.0)
flickraw (0.9.6)
friendly_id (4.0.9)
fssm (0.2.10)
gibbon (1.0.0)
faraday (0.9.2)
multipart-post (>= 1.2, < 3)
ffi (1.9.14)
figaro (1.1.1)
thor (~> 0.14)
flickraw (0.9.9)
font-awesome-sass (4.6.2)
sass (>= 3.2)
formatador (0.2.5)
friendly_id (5.0.5)
activerecord (>= 4.0.0)
geocoder (1.3.7)
gibbon (1.2.1)
httparty
multi_json (>= 1.3.4)
gravatar-ultimate (1.0.3)
haml (4.0.3)
tilt
haml-rails (0.4)
actionpack (>= 3.1, < 4.1)
activesupport (>= 3.1, < 4.1)
haml (>= 3.1, < 4.1)
railties (>= 3.1, < 4.1)
hashie (2.0.5)
hike (1.2.3)
httparty (0.11.0)
multi_json (~> 1.0)
multi_xml (>= 0.5.2)
i18n (0.6.1)
journey (1.0.4)
jquery-rails (3.0.4)
railties (>= 3.0, < 5.0)
thor (>= 0.14, < 2.0)
json (1.7.7)
kgio (2.8.0)
leaflet-markercluster-rails (0.6.0)
railties (>= 3.1)
leaflet-rails (0.6.2)
less (2.3.2)
commonjs (~> 0.2.6)
less-rails (2.3.3)
actionpack (>= 3.1)
less (~> 2.3.1)
libv8 (3.3.10.4)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
memcachier (0.0.2)
mime-types (1.23)
mini_portile (0.5.1)
multi_json (1.7.7)
multi_xml (0.5.5)
newrelic_rpm (3.6.5.130)
nokogiri (1.6.0)
mini_portile (~> 0.5.0)
oauth (0.4.7)
omniauth (1.1.4)
hashie (>= 1.2, < 3)
multi_json (>= 1.9.0)
globalid (0.3.7)
activesupport (>= 4.1.0)
gravatar-ultimate (2.0.0)
activesupport (>= 2.3.14)
rack
omniauth-flickr (0.0.11)
guard (2.14.0)
formatador (>= 0.2.4)
listen (>= 2.7, < 4.0)
lumberjack (~> 1.0)
nenv (~> 0.1)
notiffany (~> 0.0)
pry (>= 0.9.12)
shellany (~> 0.0)
thor (>= 0.18.1)
guard-compat (1.2.1)
guard-rspec (4.7.3)
guard (~> 2.1)
guard-compat (~> 1.1)
rspec (>= 2.99.0, < 4.0)
haml (4.0.7)
tilt
haml-rails (0.9.0)
actionpack (>= 4.0.1)
activesupport (>= 4.0.1)
haml (>= 4.0.6, < 5.0)
html2haml (>= 1.0.1)
railties (>= 4.0.1)
hashie (3.4.4)
heroku-api (0.4.2)
excon (~> 0.45)
multi_json (~> 1.8)
highline (1.7.8)
html2haml (2.0.0)
erubis (~> 2.7.0)
haml (~> 4.0.0)
nokogiri (~> 1.6.0)
ruby_parser (~> 3.5)
httparty (0.14.0)
multi_xml (>= 0.5.2)
i18n (0.7.0)
i18n-tasks (0.9.5)
activesupport (>= 4.0.2)
ast (>= 2.1.0)
easy_translate (>= 0.5.0)
erubis
highline (>= 1.7.3)
i18n
parser (>= 2.2.3.0)
term-ansicolor (>= 1.3.2)
terminal-table (>= 1.5.1)
jquery-rails (4.2.1)
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
jquery-ui-rails (5.0.5)
railties (>= 3.2.16)
js-routes (1.3.0)
railties (>= 3.2)
sprockets-rails
json (1.8.3)
jwt (1.5.4)
kaminari (0.17.0)
actionpack (>= 3.0.0)
activesupport (>= 3.0.0)
kgio (2.10.0)
kramdown (1.12.0)
launchy (2.4.3)
addressable (~> 2.3)
leaflet-markercluster-rails (0.7.0)
railties (>= 3.1)
leaflet-rails (0.7.7)
letter_opener (1.4.1)
launchy (~> 2.2)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
loofah (2.0.3)
nokogiri (>= 1.5.9)
lumberjack (1.0.10)
mail (2.6.4)
mime-types (>= 1.16, < 4)
memcachier (0.0.2)
method_source (0.8.2)
mime-types (3.1)
mime-types-data (~> 3.2015)
mime-types-data (3.2016.0521)
mimemagic (0.3.2)
mini_portile2 (2.1.0)
minitest (5.9.0)
multi_json (1.11.3)
multi_xml (0.5.5)
multipart-post (2.0.0)
nenv (0.3.0)
newrelic_rpm (3.16.1.320)
nokogiri (1.6.8)
mini_portile2 (~> 2.1.0)
pkg-config (~> 1.1.7)
notiffany (0.1.1)
nenv (~> 0.1)
shellany (~> 0.0)
oauth (0.5.1)
oauth2 (1.2.0)
faraday (>= 0.8, < 0.10)
jwt (~> 1.0)
multi_json (~> 1.3)
multi_xml (~> 0.5)
rack (>= 1.2, < 3)
omniauth (1.3.1)
hashie (>= 1.2, < 4)
rack (>= 1.0, < 3)
omniauth-facebook (3.0.0)
omniauth-oauth2 (~> 1.2)
omniauth-flickr (0.0.19)
multi_json (~> 1.11.0)
omniauth-oauth (~> 1.0)
omniauth-oauth (1.0.1)
omniauth-oauth (1.1.0)
oauth
omniauth (~> 1.0)
omniauth-twitter (1.0.0)
multi_json (~> 1.3)
omniauth-oauth (~> 1.0)
orm_adapter (0.4.0)
pg (0.15.1)
polyglot (0.3.3)
rack (1.4.5)
rack-cache (1.2)
rack (>= 0.4)
rack-ssl (1.3.3)
omniauth-oauth2 (1.4.0)
oauth2 (~> 1.0)
omniauth (~> 1.2)
omniauth-twitter (1.2.1)
json (~> 1.3)
omniauth-oauth (~> 1.1)
orm_adapter (0.5.0)
paperclip (5.1.0)
activemodel (>= 4.2.0)
activesupport (>= 4.2.0)
cocaine (~> 0.5.5)
mime-types
mimemagic (~> 0.3.0)
parser (2.3.1.2)
ast (~> 2.2)
pg (0.18.4)
pkg-config (1.1.7)
plupload-rails (1.2.1)
rails (>= 3.1)
poltergeist (1.10.0)
capybara (~> 2.1)
cliver (~> 0.3.1)
websocket-driver (>= 0.2.0)
powerpack (0.1.1)
pry (0.10.4)
coderay (~> 1.1.0)
method_source (~> 0.8.1)
slop (~> 3.4)
quiet_assets (1.1.0)
railties (>= 3.1, < 5.0)
rack (1.6.4)
rack-protection (1.5.3)
rack
rack-test (0.6.2)
rack-test (0.6.3)
rack (>= 1.0)
rails (3.2.13)
actionmailer (= 3.2.13)
actionpack (= 3.2.13)
activerecord (= 3.2.13)
activeresource (= 3.2.13)
activesupport (= 3.2.13)
bundler (~> 1.0)
railties (= 3.2.13)
rails_12factor (0.0.2)
rails (4.2.7.1)
actionmailer (= 4.2.7.1)
actionpack (= 4.2.7.1)
actionview (= 4.2.7.1)
activejob (= 4.2.7.1)
activemodel (= 4.2.7.1)
activerecord (= 4.2.7.1)
activesupport (= 4.2.7.1)
bundler (>= 1.3.0, < 2.0)
railties (= 4.2.7.1)
sprockets-rails
rails-deprecated_sanitizer (1.0.3)
activesupport (>= 4.2.0.alpha)
rails-dom-testing (1.0.7)
activesupport (>= 4.2.0.beta, < 5.0)
nokogiri (~> 1.6.0)
rails-deprecated_sanitizer (>= 1.0.1)
rails-html-sanitizer (1.0.3)
loofah (~> 2.0)
rails-i18n (4.0.9)
i18n (~> 0.7)
railties (~> 4.0)
rails_12factor (0.0.3)
rails_serve_static_assets
rails_stdout_logging
rails_serve_static_assets (0.0.1)
rails_stdout_logging (0.0.3)
railties (3.2.13)
actionpack (= 3.2.13)
activesupport (= 3.2.13)
rack-ssl (~> 1.3.2)
rails_serve_static_assets (0.0.5)
rails_stdout_logging (0.0.5)
railties (4.2.7.1)
actionpack (= 4.2.7.1)
activesupport (= 4.2.7.1)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (>= 0.14.6, < 2.0)
raindrops (0.11.0)
rake (10.1.0)
rdoc (3.12.2)
json (~> 1.4)
rest-client (1.6.7)
mime-types (>= 1.16)
rspec-core (2.12.2)
rspec-expectations (2.12.1)
diff-lcs (~> 1.1.3)
rspec-mocks (2.12.2)
rspec-rails (2.12.2)
thor (>= 0.18.1, < 2.0)
rainbow (2.1.0)
raindrops (0.17.0)
rake (11.2.2)
rb-fsevent (0.9.7)
rb-inotify (0.9.7)
ffi (>= 0.5.0)
redis (3.3.1)
responders (2.3.0)
railties (>= 4.2.0, < 5.1)
rspec (3.5.0)
rspec-core (~> 3.5.0)
rspec-expectations (~> 3.5.0)
rspec-mocks (~> 3.5.0)
rspec-activemodel-mocks (1.0.3)
activemodel (>= 3.0)
activesupport (>= 3.0)
rspec-mocks (>= 2.99, < 4.0)
rspec-core (3.5.2)
rspec-support (~> 3.5.0)
rspec-expectations (3.5.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.5.0)
rspec-mocks (3.5.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.5.0)
rspec-rails (3.5.1)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 2.12.0)
rspec-expectations (~> 2.12.0)
rspec-mocks (~> 2.12.0)
sass (3.2.9)
sass-rails (3.2.6)
railties (~> 3.2.0)
sass (>= 3.1.10)
tilt (~> 1.3)
simplecov (0.7.1)
multi_json (~> 1.0)
simplecov-html (~> 0.7.1)
simplecov-html (0.7.1)
sprockets (2.2.2)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
sqlite3 (1.3.7)
therubyracer (0.10.2)
libv8 (~> 3.3.10)
thor (0.18.1)
tilt (1.4.1)
treetop (1.4.14)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.37)
uglifier (2.1.2)
rspec-core (~> 3.5.0)
rspec-expectations (~> 3.5.0)
rspec-mocks (~> 3.5.0)
rspec-support (~> 3.5.0)
rspec-support (3.5.0)
rubocop (0.45.0)
parser (>= 2.3.1.1, < 3.0)
powerpack (~> 0.1)
rainbow (>= 1.99.1, < 3.0)
ruby-progressbar (~> 1.7)
unicode-display_width (~> 1.0, >= 1.0.1)
ruby-progressbar (1.8.1)
ruby-units (2.0.1)
ruby_dep (1.4.0)
ruby_parser (3.8.2)
sexp_processor (~> 4.1)
rubyzip (1.2.0)
sass (3.4.22)
sass-rails (5.0.6)
railties (>= 4.0.0, < 6)
sass (~> 3.1)
sprockets (>= 2.8, < 4.0)
sprockets-rails (>= 2.0, < 4.0)
tilt (>= 1.1, < 3)
selenium-webdriver (2.53.4)
childprocess (~> 0.5)
rubyzip (~> 1.0)
websocket (~> 1.0)
sexp_processor (4.7.0)
shellany (0.0.1)
sidekiq (4.1.4)
concurrent-ruby (~> 1.0)
connection_pool (~> 2.2, >= 2.2.0)
redis (~> 3.2, >= 3.2.1)
sinatra (>= 1.4.7)
simplecov (0.12.0)
docile (~> 1.1.0)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.0)
sinatra (1.4.7)
rack (~> 1.5)
rack-protection (~> 1.4)
tilt (>= 1.3, < 3)
slop (3.6.0)
sparkpost_rails (1.4.0)
rails (>= 4.0, < 5.1)
sprockets (3.7.0)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.1.1)
actionpack (>= 4.0)
activesupport (>= 4.0)
sprockets (>= 3.0.0)
term-ansicolor (1.3.2)
tins (~> 1.0)
terminal-table (1.6.0)
thor (0.19.1)
thread (0.2.2)
thread_safe (0.3.5)
tilt (2.0.5)
tins (1.12.0)
tzinfo (1.2.2)
thread_safe (~> 0.1)
uglifier (2.7.2)
execjs (>= 0.3.0)
multi_json (~> 1.0, >= 1.0.2)
unicorn (4.6.3)
json (>= 1.8.0)
unicode-display_width (1.1.1)
unicorn (5.1.0)
kgio (~> 2.6)
rack
raindrops (~> 0.7)
warden (1.2.3)
warden (1.2.6)
rack (>= 1.0)
webrat (0.7.3)
nokogiri (>= 1.2.0)
rack (>= 1.0)
rack-test (>= 0.5.3)
will_paginate (3.0.4)
websocket (1.2.3)
websocket-driver (0.6.4)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.2)
will_paginate (3.1.0)
xpath (2.0.0)
nokogiri (~> 1.3)
PLATFORMS
ruby
DEPENDENCIES
active_utils (= 1.0.5)!
activemerchant (= 1.33.0)!
active_merchant-paypal-bogus-gateway
active_utils
activemerchant
better_errors
binding_of_caller
bluecloth
bonsai-elasticsearch-rails
bootstrap-datepicker-rails
bootstrap-kaminari-views
bootstrap-sass (~> 3.3.6)
bundler (>= 1.1.5)
cancan
coffee-rails (~> 3.2.1)
compass-rails (~> 1.0.3)
byebug
cancancan (~> 1.9)
capybara
capybara-email
capybara-screenshot
codeclimate-test-reporter
coffee-rails (~> 4.1.0)
comfortable_mexican_sofa (~> 1.12.0)
coveralls
csv_shaper
dalli
debugger
devise
factory_girl_rails (~> 4.0)
database_cleaner (~> 1.5.0)
devise (>= 4.0.0)
elasticsearch-model
elasticsearch-rails
factory_girl_rails
figaro
flickraw
friendly_id
geocoder!
gibbon
font-awesome-sass
friendly_id (~> 5.0.4)
geocoder
gibbon (~> 1.2.0)
gravatar-ultimate
guard
guard-rspec
haml
haml-rails
heroku-api
i18n-tasks
jquery-rails
json (~> 1.7.7)
jquery-ui-rails (~> 5.0.2)
js-routes
kaminari
leaflet-markercluster-rails
leaflet-rails
less-rails
letter_opener
memcachier
newrelic_rpm
omniauth
omniauth-flickr
omniauth-facebook
omniauth-flickr (>= 0.0.15)
omniauth-twitter
pg
rack (~> 1.4.5)
rails (= 3.2.13)
poltergeist (~> 1.6)
pry
quiet_assets
rails (~> 4.2.1)
rails_12factor
rake (>= 10.0.0)
rspec-rails (~> 2.12.1)
sass-rails (~> 3.2.3)
sqlite3
therubyracer (~> 0.10.2)
twitter-bootstrap-rails!
uglifier (>= 1.0.3)
rspec-activemodel-mocks
rspec-rails
rubocop
ruby-units
sass-rails (~> 5.0.4)
selenium-webdriver
sidekiq
sparkpost_rails
uglifier (~> 2.7.2)
unicorn
webrat
will_paginate (~> 3.0)
RUBY VERSION
ruby 2.3.1p112
BUNDLED WITH
1.13.6
+13
View File
@@ -0,0 +1,13 @@
guard :rspec,
cmd: 'bundle exec rspec --format documentation',
failed_mode: :keep do
watch(%r{^spec/.+_spec\.rb$})
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/libs/#{m[1]}_spec.rb" }
watch('spec/spec_helper.rb') { "spec" }
# Rails example
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
watch('config/routes.rb') { "spec/routing" }
end
+54 -4
View File
@@ -2,12 +2,62 @@
[![Build Status](https://travis-ci.org/Growstuff/growstuff.png)](https://travis-ci.org/Growstuff/growstuff)
[![Coverage Status](https://coveralls.io/repos/Growstuff/growstuff/badge.png)](https://coveralls.io/r/Growstuff/growstuff)
[![Code Climate](https://codeclimate.com/github/Growstuff/growstuff/badges/gpa.svg)](https://codeclimate.com/github/Growstuff/growstuff)
Welcome to the Growstuff project.
Growstuff is an open source/open data project to create a website for food gardeners.
Growstuff is an open source/open data project to create a website for
food gardeners. We crowdsource information on what our members are
growing and harvesting, aggregate it, and make it available as open data
via our API.
You can find most of our documentation at: http://wiki.growstuff.org/
Growstuff was founded in 2012 and has been built by dozens of
[contributors](CONTRIBUTORS.md). We are an inclusive, welcoming project, and
encourage participation from people of all backgrounds and skill levels.
Our development uses Extreme Programming practices, which means we pair on all our work. Feel free to fork our code and explore, but if you would like to contribute back to us,
please read http://wiki.growstuff.org/index.php/Development_process_overview before sending us a pull request.
## Important links
* [Issues](http://github.com/Growstuff/growstuff/issues) (features we're
working on, known bugs, etc)
* [Discussion forums](http://talk.growstuff.org/) (design ideas, planning releases)
* [IRC](https://webchat.freenode.net/) growstuff channel (general chat, brainstorming and troubleshooting) or [Gitter](https://gitter.im/Growstuff/growstuff)
* [Wiki](https://github.com/Growstuff/growstuff/wiki) (general documentation, etc. Help by migrating from the [old wiki](https://web.archive.org/web/*/wiki.growstuff.org))
## For coders
Growstuff is built in Ruby on Rails and also uses JavaScript for
frontend features. We welcome contributions -- see
[CONTRIBUTING](CONTRIBUTING.md) for details.
* To set up your development environment, see [Getting started](https://github.com/Growstuff/growstuff/wiki/New-contributor-guide).
* We encourage [pair programming](http://wiki.growstuff.org/index.php/Pairing), especially for newer developers. [Find a pair programming partner.](http://talk.growstuff.org/t/find-a-pair-programming-partner/13)
* Drop in to our [discussion forums](http://talk.growstuff.org/), IRC or Gitter to chat to other developers, get help, etc.
* You may also be interested in our [API](https://github.com/Growstuff/growstuff/wiki/API).
## For designers, writers, researchers, data wranglers, and other contributors
There are heaps of ways to get involved and contribute no matter what
your skills and interests.
You might like to check out:
* The [Get Involved](http://wiki.growstuff.org/index.php/Get_involved)
page on our wiki, which has lots of detail for different areas
* [Growstuff Talk](http://talk.growstuff.org/) especially the [Idea category](http://talk.growstuff.org/c/idea)
Here on Github, you might find these useful:
* [needs: design](https://github.com/Growstuff/growstuff/labels/needs:%20design) - tasks requiring high-level design
* [needs: visual design](https://github.com/Growstuff/growstuff/labels/needs:%20visual design) - tasks requiring visual/graphical design
* [needs: documentation](https://github.com/Growstuff/growstuff/labels/needs:%20documentation)
* [needs: data](https://github.com/Growstuff/growstuff/labels/needs:%20data) - tasks requiring data entry, data design, data import, or similar
* [curated:beginner](https://github.com/Growstuff/growstuff/labels/curated:%20beginner) - tasks that are ideal for beginner programmers or people new to the project
Feel free to comment on any of the issues you find there, or open up a broader conversation on [Growstuff Talk](http://talk.growstuff.org).
## Contact
For more information about this project, contact [info@growstuff.org](mailto:info@growstuff.org).
You can also contact us on [Twitter](http://twitter.com/growstufforg/) or
[Facebook](https://www.facebook.com/pages/Growstuff/1531133417099494).
Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 613 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 920 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
@@ -0,0 +1,38 @@
# Displays datepicker to finished at date
# when marking a planting finished using a
# button. The button must have class 'append-date'.
jQuery ->
el = $('.append-date')
el.datepicker({'format': 'yyyy-mm-dd'})
el.click (e) ->
e.stopPropagation()
e.preventDefault()
originalText = $(this).text()
href = $(this).attr('href')
$(this).text('Confirm without date')
$(this).bind('click.confirm', (e) ->
link = $("<a href='#{href}' data-method='put'></a>")
$('body').append(link)
$(link).click()
)
$(this).blur (e) ->
$(this).text(originalText)
$(this).unbind('click.confirm')
el.one 'changeDate', ->
date = $(this).datepicker('getDate')
href = $(this).attr('href')
url = "#{href}&planting[finished_at]=#{date}"
link = $("<a href='#{url}' data-method='put'></a>")
$('body').append(link)
$(link).click()
+4 -2
View File
@@ -12,8 +12,10 @@
//
//= require leaflet
//= require leaflet.markercluster
//= require js-routes
//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
//= require_tree .
//= require jquery-ui/autocomplete
//= require bootstrap-sprockets
//= require bootstrap-datepicker
//= require_tree .
@@ -0,0 +1,37 @@
# Uses JQuery's autocomplete to make a suggestion in lieu of a
# preposterously long select dropdown. To implement add code to
# the view like this:
#
# = auto_suggest @resource, :auto_suggest_source
#
# You must also add a search method to the resource's controller.
jQuery ->
if el = $( '.auto-suggest' )
id = $( '.auto-suggest-id' )
el.autocomplete
minLength: 1,
source: el.attr( 'data-source-url' ),
focus: ( event, ui ) ->
el.val( ui.item.name )
id.val( ui.item.id )
false
select: ( event, ui ) ->
el.val( ui.item.name )
id.val( ui.item.id )
false
response: ( event, ui ) ->
id.val( "" )
for item in ui.content
if item.name == el.val()
id.val( item.id )
if el.data( 'uiAutocomplete' )
el.data( 'uiAutocomplete' )._renderItem = ( ul, item ) ->
$( '<li></li>' )
.data( 'item.autocomplete', item )
.append( "<a>#{item.name}</a>" )
.appendTo( ul )
File diff suppressed because one or more lines are too long.
@@ -0,0 +1 @@
# Custom JS for the admin area
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
+54
View File
@@ -0,0 +1,54 @@
if (document.getElementById("cropmap") !== null) {
mapbox_map_id = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.mapbox_map_id %>";
mapbox_access_token = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.mapbox_access_token %>";
mapbox_base_url = "http://a.tiles.mapbox.com/v4/" + mapbox_map_id + "/{z}/{x}/{y}.png?access_token=" + mapbox_access_token;
L.Icon.Default.imagePath = '/assets'
cropmap = L.map('cropmap').setView([0.0, -0.0], 2);
showCropMap(cropmap);
}
function showCropMap(cropmap) {
L.tileLayer(mapbox_base_url, {
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors under <a href="http://www.openstreetmap.org/copyright">ODbL</a> | Map imagery &copy; <a href="http://mapbox.com">Mapbox</a>',
maxZoom: 18
}).addTo(cropmap);
markers = new L.MarkerClusterGroup({showCoverageOnHover: false, maxClusterRadius: 20 });
things_to_map = location.pathname + '.json';
$.getJSON(things_to_map, function(crop) {
$.each(crop.plantings, function(i, planting) {
owner = planting.owner;
if (owner.latitude && owner.longitude) {
marker = new L.Marker(new L.LatLng(owner.latitude, owner.longitude));
planting_url = "/plantings/" + planting.id;
planting_link = "<a href='" + planting_url + "'>" + owner.login_name + "'s " + crop.name + "</a>";
where = "<p><i>" + owner.location + "</i></p>";
details = "<p>";
if (planting.quantity) {
details = details + "Quantity: " + planting.quantity + "<br/>";
}
if (planting.planted_from) {
details = details + "Planted from: " + planting.planted_from + "<br/>";
}
if (planting.sunniness) {
details = details + "Planted in: " + planting.sunniness+ "<br/>";
}
details = details + "</p>";
marker.bindPopup(planting_link + where + details).openPopup();
markers.addLayer(marker);
}
});
});
cropmap.addLayer(markers);
}
$('.btn.toggle.crop-hierarchy').click(function () {
$('.toggle.crop-hierarchy').toggleClass('hide');
});
@@ -0,0 +1,19 @@
# Clears the finished at date field when
# a planting is marked unfinished, and
# repopulates the field with a cached value
# marking unfinished is undone.
jQuery ->
previousValue = ''
$('#planting_finished').on('click', ->
finished = $('#planting_finished_at')
if @checked
if previousValue.length
date = previousValue
finished.val(date)
else
finished.trigger('focus')
else
previousValue = finished.val()
finished.val('')
)
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
+29
View File
@@ -0,0 +1,29 @@
if (document.getElementById("membermap") !== null) {
mapbox_map_id = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.mapbox_map_id %>";
mapbox_access_token = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.mapbox_access_token %>";
mapbox_base_url = "http://a.tiles.mapbox.com/v4/" + mapbox_map_id + "/{z}/{x}/{y}.png?access_token=" + mapbox_access_token;
L.Icon.Default.imagePath = '/assets'
$.getJSON(location.pathname + '.json', function(member) {
if (member.latitude && member.longitude) {
membermap = L.map('membermap').setView([member.latitude, member.longitude], 4);
L.tileLayer(mapbox_base_url, {
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors under <a href="http://www.openstreetmap.org/copyright">ODbL</a> | Map imagery &copy; <a href="http://mapbox.com">Mapbox</a>',
maxZoom: 18
}).addTo(membermap);
marker = new L.Marker(new L.LatLng(member.latitude, member.longitude));
member_url = "/members/" + member.slug;
member_link = "<a href='" + member_url + "'>" + member.login_name + "</a>";
where = "<p><i>" + member.location + "</i></p>";
marker.bindPopup(member_link + where).openPopup();
marker.addTo(membermap);
}
});
}
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
+33 -30
View File
@@ -1,42 +1,45 @@
places_base_path = "/places";
things_to_map = location.pathname + '.json';
cloudmade_key = "<%= Growstuff::Application.config.cloudmade_key %>";
cloudmade_url = "http://{s}.tile.cloudmade.com/" + cloudmade_key + "/73038/256/{z}/{x}/{y}.png";
nominatim_base_url = 'http://nominatim.openstreetmap.org/search/';
nominatim_user_agent_email = "<%= Growstuff::Application.config.user_agent_email %>";
if (document.getElementById("placesmap") !== null) {
places_base_path = "/places";
mapbox_map_id = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.mapbox_map_id %>";
mapbox_access_token = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.mapbox_access_token %>";
mapbox_base_url = "http://a.tiles.mapbox.com/v4/" + mapbox_map_id + "/{z}/{x}/{y}.png?access_token=" + mapbox_access_token;
nominatim_base_url = 'http://nominatim.openstreetmap.org/search/';
nominatim_user_agent_email = "<%= Rails.env == 'test' ? 0 : Growstuff::Application.config.user_agent_email %>";
L.Icon.Default.imagePath = '/assets'
L.Icon.Default.imagePath = '/assets'
if (location.pathname === places_base_path) { //places index page
map = L.map('map').setView([0.0, -0.0], 2);
showMap(map);
} else { // specific place page
place = location.pathname.replace(places_base_path + "/", '');
nominatim_query_url = nominatim_base_url + place;
nominatim_options = {
format: "json",
callback: "placeholder",
limit: 1,
email: nominatim_user_agent_email
};
$.getJSON(nominatim_query_url, nominatim_options, function(data) {
map = L.map('map').setView([data[0].lat, data[0].lon], 5);
showMap(map);
})
if (location.pathname === places_base_path) { //places index page
placesmap = L.map('placesmap').setView([0.0, -0.0], 2);
showMap(placesmap);
} else { // specific place page
place = location.pathname.replace(places_base_path + "/", '');
nominatim_query_url = nominatim_base_url + place;
nominatim_options = {
format: "json",
callback: "placeholder",
limit: 1,
email: nominatim_user_agent_email
};
$.getJSON(nominatim_query_url, nominatim_options, function(data) {
placesmap = L.map('placesmap').setView([data[0].lat, data[0].lon], 5);
showMap(placesmap);
})
}
}
function showMap(map) {
L.tileLayer(cloudmade_url, {
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors under <a href="http://www.openstreetmap.org/copyright">ODbL</a> | Map imagery &copy; <a href="http://cloudmade.com">Cloudmade</a>',
function showMap(placesmap) {
L.tileLayer(mapbox_base_url, {
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors under <a href="http://www.openstreetmap.org/copyright">ODbL</a> | Map imagery &copy; <a href="http://mapbox.com">Mapbox</a>',
maxZoom: 18
}).addTo(map);
markers = new L.MarkerClusterGroup({showCoverageOnHover: false});
}).addTo(placesmap);
markers = new L.MarkerClusterGroup({showCoverageOnHover: false, maxClusterRadius: 20 });
things_to_map = location.pathname + '.json';
$.getJSON(things_to_map, function(members) {
$.each(members, function(i, m) {
if (m.latitude && m.longitude) {
marker = new L.Marker(new L.LatLng(m.latitude, m.longitude));
link = "<p><a href='/members/" + m.login_name + "'>" + m.login_name + "</a></p>";
link = "<p><a href='/members/" + m.slug + "'>" + m.login_name + "</a></p>";
where = "<p><i>" + m.location + "</i></p>";
marker.bindPopup(link + where).openPopup();
markers.addLayer(marker);
@@ -44,5 +47,5 @@ function showMap(map) {
});
});
map.addLayer(markers);
placesmap.addLayer(markers);
}
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
+38
View File
@@ -4,3 +4,41 @@
jQuery ->
$('.add-datepicker').datepicker('format' : 'yyyy-mm-dd')
$('#add-sci_name-row').css("display", "inline-block")
$('#remove-sci_name-row').css("display", "inline-block")
$("#add-alt_name-row").css("display", "inline-block")
$("#remove-alt_name-row").css("display", "inline-block")
$ ->
sci_template = "<div id='sci_template[INDEX]' class='template col-md-12'><div class='col-md-2'><label>Scientific name INDEX:</label></div><div class='col-md-8'><input name='sci_name[INDEX]' class='form-control', id='sci_name[INDEX]')'></input><span class='help-block'>Scientific name of crop.</span></div><div class='col-md-2'></div></div>"
sci_index = $('#scientific_names .template').length + 1
$('#add-sci_name-row').click ->
compiled_input = $(sci_template.split("INDEX").join(sci_index))
$('#scientific_names').append(compiled_input)
sci_index = sci_index + 1
$('#remove-sci_name-row').click ->
if (sci_index > 2)
sci_index = sci_index - 1
tmp = 'sci_template[' + sci_index + ']'
element = document.getElementById(tmp)
element.remove()
alt_template = "<div id='alt_template[INDEX]' class='template col-md-12'><div class='col-md-2'><label>Alternate name INDEX:</label></div><div class='col-md-8'><input name='alt_name[INDEX]' class='form-control', id='alt_name[INDEX]')'></input><span class='help-block'>Alternate name of crop.</span></div><div class='col-md-2'></div></div>"
alt_index = $('#alternate_names .template').length + 1
$('#add-alt_name-row').click ->
compiled_input = $(alt_template.split("INDEX").join(alt_index))
$('#alternate_names').append(compiled_input)
alt_index = alt_index + 1
$('#remove-alt_name-row').click ->
if (alt_index > 2)
alt_index = alt_index - 1
tmp = 'alt_template[' + alt_index + ']'
element = document.getElementById(tmp)
console.log("%s",tmp)
element.remove()
-3
View File
@@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
-12
View File
@@ -1,12 +0,0 @@
/*
* This is a manifest file that'll automatically include all the stylesheets available in this directory
* and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
* the top of the compiled file, but it's generally better to create a new file per style scope.
*= require_self
*= require bootstrap-datepicker
*= require leaflet.ie
*= require leaflet
*= require leaflet.markercluster
*= require leaflet.markercluster.default
*= require_tree .
*/
+7
View File
@@ -0,0 +1,7 @@
@import 'jquery-ui/autocomplete'
@import 'bootstrap-datepicker'
@import 'leaflet'
@import 'leaflet.markercluster'
@import 'leaflet.markercluster.default'
@import 'custom_bootstrap/custom_bootstrap'
@import 'overrides'
+1
View File
@@ -0,0 +1 @@
.btn:focus{outline:dotted 2px #000}div.active:focus{outline:dotted 1px #000}a:focus{outline:dotted 1px #000}.close:hover,.close:focus{outline:dotted 1px #000}.nav>li>a:hover,.nav>li>a:focus{outline:dotted 1px #000}.carousel-inner>.item{position:absolute;top:-999999em;display:block;-moz-transition:ease-in-out 0.6s left;-o-transition:ease-in-out 0.6s left;-webkit-transition:ease-in-out 0.6s left;transition:ease-in-out 0.6s left}.carousel-inner>.active{top:0}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{position:relative}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.alert-success{color:#2d4821}.alert-info{color:#214c62}.alert-warning{color:#6c4a00;background-color:#f9f1c6}.alert-danger{color:#d2322d}.alert-danger:hover{color:#a82824}
-183
View File
@@ -1,183 +0,0 @@
@import "twitter/bootstrap/bootstrap";
// this padding needs to be done before the responsive stuff is imported
body {
padding-top: @navbarHeight + 10px;
padding-bottom: @navbarHeight + 10px;
}
@import "twitter/bootstrap/responsive";
// Set the correct sprite paths
@iconSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings");
@iconWhiteSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings-white");
// Set the Font Awesome (Font Awesome is default. You can disable by commenting below lines)
@fontAwesomeEotPath: asset-url("fontawesome-webfont.eot");
@fontAwesomeEotPath_iefix: asset-url("fontawesome-webfont.eot#iefix");
@fontAwesomeWoffPath: asset-url("fontawesome-webfont.woff");
@fontAwesomeTtfPath: asset-url("fontawesome-webfont.ttf");
@fontAwesomeSvgPath: asset-url("fontawesome-webfont.svg#fontawesomeregular");
// Font Awesome
@import "fontawesome/font-awesome";
// Glyphicons
//@import "twitter/bootstrap/sprites.less";
// Your custom LESS stylesheets goes here
//
// Since bootstrap was imported above you have access to its mixins which
// you may use and inherit here
//
// If you'd like to override bootstrap's own variables, you can do so here as well
// See http://twitter.github.com/bootstrap/customize.html#variables for their names and documentation
//
// Example:
// @linkColor: #ff0000;
// Base colours
@beige: #f3f1ee;
@brown: #413f3b;
@green: #5f8e43;
@blue: #2f4365;
@red: #8e4d43;
@orange: #b2685c;
@yellow: #b2935c;
@bodyBackground: @beige;
@textColor: @brown;
@linkColor: @green;
// Typography (with help from bootswatch.com's "readable" theme)
@import url('//fonts.googleapis.com/css?family=Lora:400,700,400italic,700italic');
@sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
@serifFontFamily: Georgia, "Times New Roman", Times, serif;
@monoFontFamily: Monaco, Menlo, Consolas, "Courier New", monospace;
@baseFontSize: 15px;
@baseFontFamily: @serifFontFamily;
@baseLineHeight: @baseFontSize * 1.5;
@altFontFamily: @sansFontFamily;
@headingsFontFamily: "Lora", Georgia, "Times New Roman", Times, serif;
@headingsFontWeight: bold; // instead of browser default, bold
@headingsColor: inherit; // empty to use BS default, @textColor
// Hero unit
@heroUnitBackground: darken(@bodyBackground, 10%);
// Nav bar
@navbarBackground: @brown;
@navbarBackgroundHighlight: @brown;
@navbarText: @beige;
@navbarLinkColor: darken(@beige, 20%);
@navbarLinkColorHover: @beige;
@navbarLinkColorActive: @beige;
@navbarBrandColor: lighten(@green, 20%);
@dropdownBackground: lighten(@beige, 10%);
@dropdownLinkColor: @brown;
@dropdownLinkColorHover: @brown;
@dropdownLinkBackgroundHover: lighten(@green, 50%);
ul.inline > li.first {
padding-left: 0px;
}
h2 {
font-size: 150%;
}
h3 {
font-size: 120%;
}
.main {
padding-right: 1em;
}
.sidebar {
margin-left: -1px;
border-left: 1px solid darken(@beige, 10%);
padding-left: 1em;
}
// this is used for eg. crops and members index pages
.six-across:nth-child(6n+1) {
margin-left: 0px
}
.three-across:nth-child(3n+1) {
margin-left: 0px;
clear: both;
}
// let's condense the hero unit a little
.hero-unit {
padding-top: 30px;
padding-bottom: 30px;
}
// info under the main heading on homepage
.hero-unit .info {
padding-top: 15px;
}
// signup widget on homepage
.hero-unit .signup {
background-color: lighten(@green, 40%);
border: 1px solid lighten(@green, 20%);
border-radius: 6px;
padding: 15px;
text-align: center;
line-height: 110%;
}
// stats shown on homepage. eg. "999 members..."
p.stats {
font-weight: bold;
}
.homepage-members {
height: 100px;
}
.homepage-members:nth-child(odd) {
margin-left: 0px;
}
#map {
height: 500px;
}
.member-location {
font-size: small;
font-style: italic;
}
.member-location a {
color: @brown;
}
// Overrides applying only to mobile view
@media only screen and (max-width: 767px) {
.sidebar {
margin-left: 0;
border-left: none;
padding-left: 0;
}
#map {
height: 300px;
}
}
li.crop-hierarchy {
list-style-type: disc;
}
@@ -0,0 +1 @@
// custom CSS for admin area
@@ -0,0 +1,59 @@
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!! AUTOMATICALLY GENERATED FILE. DO NOT MODIFY !!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// Core variables and mixins
@import "bootstrap-sprockets"
@import "bootstrap/variables"
// Modify this for custom colors, font-sizes, etc
@import "custom_bootstrap/variables"
@import "bootstrap/mixins"
// Modify this for custom mixins
@import "custom_bootstrap/mixins"
// Reset and dependencies
@import "bootstrap/normalize"
@import "bootstrap/print"
@import "bootstrap/glyphicons"
// Core CSS
@import "bootstrap/scaffolding"
@import "bootstrap/type"
@import "bootstrap/code"
@import "bootstrap/grid"
@import "bootstrap/tables"
@import "bootstrap/forms"
@import "bootstrap/buttons"
// Components
@import "bootstrap/component-animations"
@import "bootstrap/dropdowns"
@import "bootstrap/button-groups"
@import "bootstrap/input-groups"
@import "bootstrap/navs"
@import "bootstrap/navbar"
@import "bootstrap/breadcrumbs"
@import "bootstrap/pagination"
@import "bootstrap/pager"
@import "bootstrap/labels"
@import "bootstrap/badges"
@import "bootstrap/jumbotron"
@import "bootstrap/thumbnails"
@import "bootstrap/alerts"
@import "bootstrap/progress-bars"
@import "bootstrap/media"
@import "bootstrap/list-group"
@import "bootstrap/panels"
@import "bootstrap/responsive-embed"
@import "bootstrap/wells"
@import "bootstrap/close"
// Components w/ JavaScript
@import "bootstrap/modals"
@import "bootstrap/tooltip"
@import "bootstrap/popovers"
@import "bootstrap/carousel"
// Utility classes
@import "bootstrap/utilities"
@import "bootstrap/responsive-utilities"
@@ -0,0 +1 @@
// Use this file to override Twitter Bootstrap mixins or define own mixins.
@@ -0,0 +1,54 @@
// Use this file to override Twitter Bootstrap variables or define own variables.
// Import original variables so they can be used in overrides
//@import 'bootstrap/variables.scss'
// Base colours
$beige: #f3f1ee
$brown: #413f3b
$green: #5f8e43
$blue: #2f4365
$red: #8e4d43
$orange: #b2685c
$yellow: #b2935c
$body-bg: $beige
$text-color: $brown
$link-color: $green
$brand-primary: $green
$font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif
$font-family-serif: Georgia, "Times New Roman", Times, serif
$font-family-mono: Monaco, Menlo, Consolas, "Courier New", monospace
$font-size-base: 14px
$font-family-base: $font-family-sans-serif
$line-height-base: 1.5
$alt-font-family: $font-family-serif
$headings-font-family: $font-family-sans-serif
$headings-font-weight: bold // instead of browser default, bold
$headings-color: inherit // empty to use BS default, $textColor
// Hero unit
$jumbotron-bg: darken($body-bg, 10%)
// Nav bar
$navbar-default-bg: $brown
$navbar-default-bg-highlight: $brown
$navbar-default-color: $beige
$navbar-default-link-color: darken($beige, 20%)
$navbar-default-link-hover-color: $beige
$navbar-default-link-active-color: darken($beige,80%)
$navbar-default-brand-color: lighten($green, 20%)
// Top nav collapse threshold
$grid-float-breakpoint: $screen-md-min
$dropdown-bg: lighten($beige, 10%)
$dropdown-link-color: $brown
$dropdown-link-hover-color: $brown
$dropdown-link-hover-bg: lighten($green, 50%)
@@ -1,3 +0,0 @@
.leaflet-popup-content-wrapper, .leaflet-popup-tip {
border: none;
}
@@ -0,0 +1,10 @@
.leaflet-popup-content-wrapper,
.leaflet-popup-tip
border: none
.thumbnail
background: #fff !important
border: solid 1px whitesmoke
.thumbnail .crop-thumbnail .cropinfo
padding-top: 14px
+338
View File
@@ -0,0 +1,338 @@
@import "bootstrap-sprockets"
@import "bootstrap"
@import "custom_bootstrap/variables"
// this padding needs to be done before the responsive stuff is imported
body
// modifying this for our promotional banner. can be replaced after if
// needed.
// padding-top: $navbar-height + 15px
padding-top: $navbar-height
//@import "bootstrap/responsive"
// Font Awesome
@import "font-awesome-sprockets"
@import "font-awesome"
// Glyphicons
//@import "bootstrap/glyphicons"
.list-inline > li.first
padding-left: 0px
h2
font-size: 150%
//#subtitle
// color: lighten($brown, 30%)
// font-style: italic
// font-weight: normal
// margin-top: 0px
// padding-left: 1em
// padding-top: 0px
h3
font-size: 120%
.main
padding-right: 1em
.navbar .navbar-form
padding-top: 0
padding-bottom: 0
margin-right: 0
margin-left: 15px
border: 0
-webkit-box-shadow: none
box-shadow: none
.img-responsive
max-width: 100%
height: auto
.sidebar
border-left: 1px solid darken($beige, 10%)
margin-left: -1px
padding-left: 1em
// this is used for eg. crops and members index pages
.six-across:nth-child(6n+1)
margin-left: 0px
.three-across:nth-child(3n+1)
margin-left: 0px
clear: both
// let's condense the hero unit a little
.jumbotron
padding-top: 30px
padding-bottom: 30px
// info under the main heading on homepage
.jumbotron .info
padding-top: 15px
// signup widget on homepage
.jumbotron .signup
background-color: lighten($green, 40%)
border: 1px solid lighten($green, 20%)
border-radius: 6px
line-height: 200%
padding: 15px
text-align: center
// stats shown on homepage. eg. "999 members..."
p.stats
font-weight: bold
.member-cards
display: flex
flex: none
flex-wrap: wrap
justify-content: space-between
.member-thumbnail
padding: .25em
div
width: 5em
display: inline-block
vertical-align: top
.member-thumbnail div~div
padding-left: 1em
width: 15em
.planting
dl.planting-attributes
font-size: 85%
dt
text-align: left
dd
margin-left: auto
@media (min-width: $screen-md-min)
.planting-thumbnail
dl.planting-attributes
font-size: 85%
width: 100%
dt
text-align: left
width: 80px
dd
padding-left: 80px
margin-left: auto
.navbar .navbar-form
width: 250px
#placesmap, #cropmap
height: 500px
#membermap
height: 250px
.location-not-set
height: 250px
width: 100%
background-image: image-url('location-not-set.en.png')
background-repeat: no-repeat
background-position: center
.member-location
font-size: small
font-style: italic
.member-location a
color: $brown
.photo-thumbnail
padding: 0
position: relative
img
width: 100%
.text
display: none
color: #000
position: absolute
bottom: 0
background: rgba(0, 0, 0, 0.8)
width: 100%
margin: 0
p
padding: 5px
margin: 0
color: #fff
&:hover
.text
display: block
.thumbnail
border: none
text-align: center
margin-bottom: 1.5em
.member-thumbnail
text-align: left
img
height: 85px
width: 85px
max-width: 85px
.crop-thumbnail
height: 220px
.cropinfo
display: inline-block
max-width: 100%
white-space: nowrap
line-height: 1em
padding-bottom: 2px
.cropname
overflow: hidden
text-overflow: ellipsis
.scientificname
font-size: small
font-style: italic
overflow: hidden
text-overflow: ellipsis
.plantingcount
font-size: small
.crop-name a
padding-top: 2px
.scientific-name small
margin-bottom: -2px
li.crop-hierarchy
list-style-type: disc
.navbar-brand
margin: 0px
padding: 0px
.navbar-bottom
margin: 40px 0px 0px 0px !important
// footer
footer
#footer1, #footer2, #footer3
text-align: left
padding-top: 1em
padding-bottom: 2em
ul
list-style-type: none
list-style-position: outside
padding-left: 0px
margin-left: 0px
a
color: $navbar-default-link-color
text-decoration: none
a:hover
color: $navbar-default-link-hover-color
a:active
color: $navbar-default-link-active-color
.navbar-bottom.navbar
border-radius: 0
// ensure footer is pushed to bottom of browser window
#maincontainer
min-height: 80%
html, body
height: 100%
.crop-image, .member-image
width: 100%
height: 100%
// Autosuggest
.ui-autocomplete
background: white
z-index: $zindex-tooltip
.alert
a
font-weight: 800
// Overrides applying only to mobile view. This must be at the end of the overrides file.
@media only screen and (max-width: 767px)
.sidebar
margin-left: 0
border-left: none
padding-left: 0
#map
height: 300px
.navbar .nav > li
display: block
.navbar .navbar-form
width: 185px
padding-left: 0
padding-right: 0
/* override "info" alert boxes to be green, not blue, on Growstuff */
$state-info-text: darken($green, 10%)
$state-info-bg: lighten($green, 50%)
/* and set "success" to be the same, as it was just very slightly
* different because the default bootstrap green is slightly different
* from ours */
$state-success-text: darken($green, 10%)
$state-success-bg: lighten($green, 50%)
.hide
display: none
#add-sci_name-row, #remove-sci_name-row, #add-alt_name-row, #remove-alt_name-row
display: none
.panel-footer
height: 6em
.panel
.dl-horizontal
text-overflow: ellipsis
overflow: hidden
#gardens_panel_body
height: 20em
.form-group.required .control-label:before
content: "* "
color: red
.margin-bottom
margin-bottom: 1em
.red
color: red
.truncate
overflow: hidden
text-overflow: ellipsis
white-space: nowrap
-2
View File
@@ -1,2 +0,0 @@
class AboutController < ApplicationController
end
+11 -3
View File
@@ -1,5 +1,7 @@
class AccountTypesController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# GET /account_types
def index
@account_types = AccountType.all
@@ -34,7 +36,7 @@ class AccountTypesController < ApplicationController
# POST /account_types
def create
@account_type = AccountType.new(params[:account_type])
@account_type = AccountType.new(account_type_params)
respond_to do |format|
if @account_type.save
@@ -50,7 +52,7 @@ class AccountTypesController < ApplicationController
@account_type = AccountType.find(params[:id])
respond_to do |format|
if @account_type.update_attributes(params[:account_type])
if @account_type.update(account_type_params)
format.html { redirect_to @account_type, notice: 'Account type was successfully updated.' }
else
format.html { render action: "edit" }
@@ -64,7 +66,13 @@ class AccountTypesController < ApplicationController
@account_type.destroy
respond_to do |format|
format.html { redirect_to account_types_url }
format.html { redirect_to account_types_url, notice: 'Account type was successfully deleted.' }
end
end
private
def account_type_params
params.require(:account_type).permit(:is_paid, :is_permanent_paid, :name)
end
end
+9 -1
View File
@@ -1,5 +1,7 @@
class AccountsController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# GET /accounts
def index
@accounts = Account.all
@@ -28,7 +30,7 @@ class AccountsController < ApplicationController
@account = Account.find(params[:id])
respond_to do |format|
if @account.update_attributes(params[:account])
if @account.update(params[:account])
format.html { redirect_to @account, notice: 'Account detail was successfully updated.' }
else
format.html { render action: "edit" }
@@ -36,4 +38,10 @@ class AccountsController < ApplicationController
end
end
private
def account_params
params.require(:account).permit(:account_type_id, :member_id, :paid_until)
end
end
+1 -1
View File
@@ -8,7 +8,7 @@ class Admin::OrdersController < ApplicationController
def search
authorize! :manage, :all
@orders = Order.search({:by => params[:search_by], :for => params[:search_text]})
@orders = Order.search({by: params[:search_by], for: params[:search_text]})
if @orders.empty?
flash[:alert] = "Couldn't find order with #{params[:search_by]} = #{params[:search_text]}"
@@ -0,0 +1,86 @@
class AlternateNamesController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
# GET /alternate_names
# GET /alternate_names.json
def index
@alternate_names = AlternateName.all
respond_to do |format|
format.html # index.html.haml
format.json { render json: @alternate_names }
end
end
# GET /alternate_names/new
# GET /alternate_names/new.json
def new
@alternate_name = AlternateName.new
@crop = Crop.find_by_id(params[:crop_id]) || Crop.new
respond_to do |format|
format.html # new.html.haml
format.json { render json: @alternate_name }
end
end
# GET /alternate_names/1/edit
def edit
@alternate_name = AlternateName.find(params[:id])
end
# POST /alternate_names
# POST /alternate_names.json
def create
params[:alternate_name][:creator_id] = current_member.id
@alternate_name = AlternateName.new(alternate_name_params)
respond_to do |format|
if @alternate_name.save
format.html { redirect_to @alternate_name.crop, notice: 'Alternate name was successfully created.' }
format.json { render json: @alternate_name, status: :created, location: @alternate_name }
else
format.html { render action: "new" }
format.json { render json: @alternate_name.errors, status: :unprocessable_entity }
end
end
end
# PUT /alternate_names/1
# PUT /alternate_names/1.json
def update
@alternate_name = AlternateName.find(params[:id])
respond_to do |format|
if @alternate_name.update(alternate_name_params)
format.html { redirect_to @alternate_name.crop, notice: 'Alternate name was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: "edit" }
format.json { render json: @alternate_name.errors, status: :unprocessable_entity }
end
end
end
# DELETE /alternate_names/1
# DELETE /alternate_names/1.json
def destroy
@alternate_name = AlternateName.find(params[:id])
@crop = @alternate_name.crop
@alternate_name.destroy
respond_to do |format|
format.html {
redirect_to @crop, notice: 'Alternate name was successfully deleted.'
}
format.json { head :no_content }
end
end
private
def alternate_name_params
params.require(:alternate_name).permit(:crop_id, :name, :creator_id)
end
end
+56 -6
View File
@@ -4,17 +4,26 @@ class ApplicationController < ActionController::Base
include ApplicationHelper
after_filter :store_location
before_filter :set_locale
def store_location
# store last url - this is needed for post-login redirect to whatever the user last visited.
if (request.fullpath != new_member_session_path && \
!request.xhr?) # don't store ajax calls
session[:previous_url] = request.fullpath
if (request.path != "/members/sign_in" &&
request.path != "/members/sign_up" &&
request.path != "/members/password/new" &&
request.path != "/members/password/edit" &&
request.path != "/members/confirmation" &&
request.path != "/members/sign_out" &&
!request.xhr?)
store_location_for(:member, request.fullpath)
end
end
def after_sign_in_path_for(resource)
session[:previous_url] || root_path
stored_location_for(:member) || root_path
end
def after_sign_out_path_for(resource_or_scope)
request.referrer
end
# tweak CanCan defaults because we don't have a "current_user" method
@@ -26,7 +35,48 @@ class ApplicationController < ActionController::Base
# CanCan error handling
rescue_from CanCan::AccessDenied do |exception|
redirect_to request.referer || root_url, :alert => exception.message
redirect_to request.referer || root_url, alert: exception.message
end
def set_locale
I18n.locale = params[:locale] || extract_locale_from_subdomain || I18n.default_locale
end
def extract_locale_from_subdomain
parsed_locale = request.subdomains.first
I18n.available_locales.map(&:to_s).include?(parsed_locale) ? parsed_locale : nil
end
before_action :configure_permitted_parameters, if: :devise_controller?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up) do |member|
member.permit(:login_name, :email, :password, :password_confirmation,
:remember_me, :login,
# terms of service
:tos_agreement,
# profile stuff
:bio, :location, :latitude, :longitude,
# email settings
:show_email, :newsletter, :send_notification_email, :send_planting_reminder
)
end
devise_parameter_sanitizer.permit(:account_update) do |member|
member.permit(:login_name, :email, :password, :password_confirmation,
:remember_me, :login,
# terms of service
:tos_agreement,
# profile stuff
:bio, :location, :latitude, :longitude,
# email settings
:show_email, :newsletter, :send_notification_email, :send_planting_reminder,
#update password
:current_password
)
end
end
end
+12 -24
View File
@@ -1,37 +1,25 @@
class AuthenticationsController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# GET /authentications
def index
@authentications = current_member.authentications if member_signed_in?
respond_to do |format|
format.html # index.html.erb
end
end
# POST /authentications
def create
auth = request.env['omniauth.auth']
@authentication = nil
if auth
name = Growstuff::OauthSignupAction.new.determine_name(auth)
name = ''
case auth['provider']
when 'twitter'
name = auth['info']['nickname']
when 'flickr'
name = auth['info']['name']
else
name = auth['info']['name']
end
@authentication = current_member.authentications
.create_with(
name: name,
token: auth['credentials']['token'],
secret: auth['credentials']['secret']
)
.find_or_create_by(
provider: auth['provider'],
uid: auth['uid'],
name: name)
@authentication = current_member.authentications.find_or_create_by_provider_and_uid(
:provider => auth['provider'],
:uid => auth['uid'],
:name => name,
:token => auth['credentials']['token'],
:secret => auth['credentials']['secret'])
flash[:notice] = "Authentication successful."
else
flash[:notice] = "Authentication failed."
+13 -19
View File
@@ -1,28 +1,16 @@
class CommentsController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :comment_sweeper
# GET /comments
# GET /comments.json
def index
@comments = Comment.paginate(:page => params[:page])
@comments = Comment.paginate(page: params[:page])
respond_to do |format|
format.html # index.html.erb
format.json { render json: @comments }
format.rss { render :layout => false }
end
end
# GET /comments/1
# GET /comments/1.json
def show
@comment = Comment.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @comment }
format.rss { render layout: false }
end
end
@@ -40,7 +28,7 @@ class CommentsController < ApplicationController
end
else
redirect_to request.referer || root_url,
:alert => "Can't post a comment on a non-existent post"
alert: "Can't post a comment on a non-existent post"
end
end
@@ -54,11 +42,11 @@ class CommentsController < ApplicationController
# POST /comments.json
def create
params[:comment][:author_id] = current_member.id
@comment = Comment.new(params[:comment])
@comment = Comment.new(comment_params)
respond_to do |format|
if @comment.save
format.html { redirect_to @comment.post, notice: 'Comment was successfully created.' }
format.html { redirect_to @comment.post, notice: "Comment was successfully created." }
format.json { render json: @comment, status: :created, location: @comment }
else
format.html { render action: "new" }
@@ -78,7 +66,7 @@ class CommentsController < ApplicationController
params[:comment].delete("author_id")
respond_to do |format|
if @comment.update_attributes(params[:comment])
if @comment.update(comment_params)
format.html { redirect_to @comment.post, notice: 'Comment was successfully updated.' }
format.json { head :no_content }
else
@@ -100,4 +88,10 @@ class CommentsController < ApplicationController
format.json { head :no_content }
end
end
private
def comment_params
params.require(:comment).permit(:author_id, :body, :post_id)
end
end
+121 -16
View File
@@ -1,33 +1,54 @@
class CropsController < ApplicationController
load_and_authorize_resource
skip_authorize_resource :only => :hierarchy
require 'will_paginate/array'
cache_sweeper :crop_sweeper
class CropsController < ApplicationController
before_filter :authenticate_member!, except: [:index, :hierarchy, :search, :show]
load_and_authorize_resource
skip_authorize_resource only: [:hierarchy, :search]
# GET /crops
# GET /crops.json
def index
@crops = Crop.includes(:scientific_names, {:plantings => :photos}).paginate(:page => params[:page])
@sort = params[:sort]
if @sort == 'alpha'
# alphabetical order
@crops = Crop.includes(:scientific_names, {plantings: :photos})
@paginated_crops = @crops.approved.paginate(page: params[:page])
else
# default to sorting by popularity
@crops = Crop.popular.includes(:scientific_names, {plantings: :photos})
@paginated_crops = @crops.approved.paginate(page: params[:page])
end
respond_to do |format|
format.html
format.json { render :json => @crops }
format.html
format.json { render json: @crops }
format.rss do
@crops = Crop.recent.includes(:scientific_names, :creator)
render :rss => @crops
render rss: @crops
end
format.csv do
@filename = "Growstuff-Crops-#{Time.zone.now.to_s(:number)}.csv"
@crops = Crop.includes(:scientific_names, :plantings, :seeds, :creator)
render :csv => @crops
render csv: @crops
end
end
end
# GET /crops/wrangle
def wrangle
@crops = Crop.recent.paginate(:page => params[:page])
@approval_status = params[:approval_status]
case @approval_status
when "pending"
@crops = Crop.pending_approval
when "rejected"
@crops = Crop.rejected
else
@crops = Crop.recent
end
@crops = @crops.paginate(page: params[:page])
@crop_wranglers = Role.crop_wranglers
respond_to do |format|
format.html
end
@@ -41,14 +62,39 @@ class CropsController < ApplicationController
end
end
# GET /crops/search
def search
@term = params[:term]
@matches = Crop.search(@term)
@paginated_matches = @matches.paginate(page: params[:page])
respond_to do |format|
format.html
format.json { render json: @matches }
end
end
# GET /crops/1
# GET /crops/1.json
def show
@crop = Crop.includes(:scientific_names, {:plantings => :photos}).find(params[:id])
@crop = Crop.includes(:scientific_names, {plantings: :photos}).find(params[:id])
@posts = @crop.posts.paginate(page: params[:page])
respond_to do |format|
format.html # show.html.haml
format.json { render json: @crop }
format.json do
# TODO RABL or similar one day to avoid presentation logic here
owner_structure = {
owner: {
only: [:id, :login_name, :location, :latitude, :longitude]
}
}
render json: @crop.to_json(include: {
plantings: {
include: owner_structure
}
})
end
end
end
@@ -56,6 +102,8 @@ class CropsController < ApplicationController
# GET /crops/new.json
def new
@crop = Crop.new
@crop.alternate_names.build
@crop.scientific_names.build
respond_to do |format|
format.html # new.html.haml
@@ -66,17 +114,41 @@ class CropsController < ApplicationController
# GET /crops/1/edit
def edit
@crop = Crop.find(params[:id])
@crop.alternate_names.build if @crop.alternate_names.blank?
@crop.scientific_names.build if @crop.scientific_names.blank?
end
# POST /crops
# POST /crops.json
def create
params[:crop][:creator_id] = current_member.id
@crop = Crop.new(params[:crop])
@crop = Crop.new(crop_params)
if current_member.has_role? :crop_wrangler
@crop.creator = current_member
success_msg = "Crop was successfully created."
else
@crop.requester = current_member
@crop.approval_status = "pending"
success_msg = "Crop was successfully requested."
end
respond_to do |format|
if @crop.save
format.html { redirect_to @crop, notice: 'Crop was successfully created.' }
params[:alt_name].each do |index, value|
@crop.alternate_names.create(name: value, creator_id: current_member.id)
end
params[:sci_name].each do |index, value|
@crop.scientific_names.create(scientific_name: value, creator_id: current_member.id)
end
unless current_member.has_role? :crop_wrangler
Role.crop_wranglers.each do |w|
Notifier.new_crop_request(w, @crop).deliver_later!
end
end
format.html { redirect_to @crop, notice: success_msg }
format.json { render json: @crop, status: :created, location: @crop }
else
format.html { render action: "new" }
@@ -90,8 +162,35 @@ class CropsController < ApplicationController
def update
@crop = Crop.find(params[:id])
previous_status = @crop.approval_status
@crop.creator = current_member if previous_status == "pending"
respond_to do |format|
if @crop.update_attributes(params[:crop])
if @crop.update(crop_params)
if !params[:alt_name].nil?
@crop.alternate_names.each do |alt_name|
alt_name.destroy
end
params[:alt_name].each do |index, value|
alt_name = @crop.alternate_names.create(name: value, creator_id: current_member.id)
end
@crop.scientific_names.each do |sci_name|
sci_name.destroy
end
params[:sci_name].each do |index, value|
sci_name = @crop.scientific_names.create(scientific_name: value, creator_id: current_member.id)
end
end
if previous_status == "pending"
requester = @crop.requester
new_status = @crop.approval_status
Notifier.crop_request_approved(requester, @crop).deliver_later! if new_status == "approved"
Notifier.crop_request_rejected(requester, @crop).deliver_later! if new_status == "rejected"
end
format.html { redirect_to @crop, notice: 'Crop was successfully updated.' }
format.json { head :no_content }
else
@@ -112,4 +211,10 @@ class CropsController < ApplicationController
format.json { head :no_content }
end
end
private
def crop_params
params.require(:crop).permit(:en_wikipedia_url, :name, :parent_id, :creator_id, :approval_status, :request_notes, :reason_for_rejection, :rejection_notes, scientific_names_attributes: [:scientific_name, :_destroy, :id])
end
end
+35
View File
@@ -0,0 +1,35 @@
class FollowsController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
skip_load_resource only: :create
# POST /follows
def create
@follow = current_member.follows.build(followed_id: follow_params[:followed_id])
if @follow.save
flash[:notice] = "Followed #{ @follow.followed.login_name }"
redirect_to :back
else
flash[:error] = "Already following or error while following."
redirect_to :back
end
end
# DELETE /follows/1
def destroy
@follow = current_member.follows.find(follow_params[:id])
unfollowed_name = @follow.followed.login_name
@follow.destroy
flash[:notice] = "Unfollowed #{ unfollowed_name }"
redirect_to root_path
end
private
def follow_params
params.permit(:id, :followed_id, :follower_id, :authenticity_token, :_method)
end
end
+9 -5
View File
@@ -1,8 +1,6 @@
class ForumsController < ApplicationController
load_and_authorize_resource
cache_sweeper :forum_sweeper
# GET /forums
# GET /forums.json
def index
@@ -44,7 +42,7 @@ class ForumsController < ApplicationController
# POST /forums
# POST /forums.json
def create
@forum = Forum.new(params[:forum])
@forum = Forum.new(forum_params)
respond_to do |format|
if @forum.save
@@ -63,7 +61,7 @@ class ForumsController < ApplicationController
@forum = Forum.find(params[:id])
respond_to do |format|
if @forum.update_attributes(params[:forum])
if @forum.update(forum_params)
format.html { redirect_to @forum, notice: 'Forum was successfully updated.' }
format.json { head :no_content }
else
@@ -80,8 +78,14 @@ class ForumsController < ApplicationController
@forum.destroy
respond_to do |format|
format.html { redirect_to forums_url }
format.html { redirect_to forums_url, notice: 'Forum was successfully deleted' }
format.json { head :no_content }
end
end
private
def forum_params
params.require(:forum).permit(:description, :name, :owner_id, :slug)
end
end
+15 -6
View File
@@ -1,15 +1,15 @@
class GardensController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :garden_sweeper
# GET /gardens
# GET /gardens.json
def index
@gardens = Garden.paginate(:page => params[:page])
@gardens = Garden.paginate(page: params[:page])
@owner = Member.find_by_slug(params[:owner])
if @owner
@gardens = @owner.gardens.paginate(:page => params[:page])
@gardens = @owner.gardens.paginate(page: params[:page])
end
respond_to do |format|
@@ -49,12 +49,13 @@ class GardensController < ApplicationController
# POST /gardens.json
def create
params[:garden][:owner_id] = current_member.id
@garden = Garden.new(params[:garden])
@garden = Garden.new(garden_params)
respond_to do |format|
if @garden.save
format.html { redirect_to @garden, notice: 'Garden was successfully created.' }
format.json { render json: @garden, status: :created, location: @garden }
expire_fragment("homepage_stats")
else
format.html { render action: "new" }
format.json { render json: @garden.errors, status: :unprocessable_entity }
@@ -68,7 +69,7 @@ class GardensController < ApplicationController
@garden = Garden.find(params[:id])
respond_to do |format|
if @garden.update_attributes(params[:garden])
if @garden.update(garden_params)
format.html { redirect_to @garden, notice: 'Garden was successfully updated.' }
format.json { head :no_content }
else
@@ -83,10 +84,18 @@ class GardensController < ApplicationController
def destroy
@garden = Garden.find(params[:id])
@garden.destroy
expire_fragment("homepage_stats")
respond_to do |format|
format.html { redirect_to @garden.owner, notice: 'Garden was successfully deleted.' }
format.html { redirect_to gardens_by_owner_path(owner: @garden.owner), notice: 'Garden was successfully deleted.' }
format.json { head :no_content }
end
end
private
def garden_params
params.require(:garden).permit(:name, :slug, :owner_id, :description, :active,
:location, :latitude, :longitude, :area, :area_unit)
end
end
+19 -25
View File
@@ -1,44 +1,31 @@
class HarvestsController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
# GET /harvests
# GET /harvests.json
def index
@owner = Member.find_by_slug(params[:owner])
@crop = Crop.find_by_slug(params[:crop])
if @owner
@harvests = @owner.harvests.includes(:owner, :crop).paginate(:page => params[:page])
@harvests = @owner.harvests.includes(:owner, :crop)
elsif @crop
@harvests = @crop.harvests.includes(:owner, :crop)
else
@harvests = Harvest.includes(:owner, :crop).paginate(:page => params[:page])
@harvests = Harvest.includes(:owner, :crop)
end
respond_to do |format|
format.html # index.html.erb
format.html { @harvests = @harvests.paginate(page: params[:page]) }
format.json { render json: @harvests }
format.csv do
if @owner
@filename = "Growstuff-#{@owner}-Harvests-#{Time.zone.now.to_s(:number)}.csv"
@harvests = @owner.harvests.includes(:owner, :crop)
else
@filename = "Growstuff-Harvests-#{Time.zone.now.to_s(:number)}.csv"
@harvests = Harvest.includes(:owner, :crop)
end
render :csv => @harvests
specifics = (@owner ? "#{@owner.login_name}-" : @crop ? "#{@crop.name}-" : nil)
@filename = "Growstuff-#{specifics}Harvests-#{Time.zone.now.to_s(:number)}.csv"
render csv: @harvests
end
end
end
# GET /harvests/1
# GET /harvests/1.json
def show
@harvest = Harvest.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @harvest }
end
end
# GET /harvests/new
# GET /harvests/new.json
def new
@@ -63,7 +50,7 @@ class HarvestsController < ApplicationController
def create
params[:harvest][:owner_id] = current_member.id
params[:harvested_at] = parse_date(params[:harvested_at])
@harvest = Harvest.new(params[:harvest])
@harvest = Harvest.new(harvest_params)
respond_to do |format|
if @harvest.save
@@ -82,7 +69,7 @@ class HarvestsController < ApplicationController
@harvest = Harvest.find(params[:id])
respond_to do |format|
if @harvest.update_attributes(params[:harvest])
if @harvest.update(harvest_params)
format.html { redirect_to @harvest, notice: 'Harvest was successfully updated.' }
format.json { head :no_content }
else
@@ -103,4 +90,11 @@ class HarvestsController < ApplicationController
format.json { head :no_content }
end
end
private
def harvest_params
params.require(:harvest).permit(:crop_id, :harvested_at, :description, :owner_id,
:quantity, :unit, :weight_quantity, :weight_unit, :plant_part_id, :slug, :si_weight)
end
end
+71 -9
View File
@@ -1,23 +1,30 @@
class MembersController < ApplicationController
load_and_authorize_resource
cache_sweeper :member_sweeper
skip_authorize_resource only: [:nearby, :unsubscribe, :finish_signup]
skip_authorize_resource :only => :nearby
after_action :expire_cache_fragments, only: :create
def index
@members = Member.confirmed.paginate(:page => params[:page])
@sort = params[:sort]
if @sort == 'recently_joined'
@members = Member.confirmed.recently_joined.paginate(page: params[:page])
else
@members = Member.confirmed.paginate(page: params[:page])
end
respond_to do |format|
format.html # index.html.haml
format.json { render json: @members.to_json(only: [:id, :login_name, :slug, :bio, :created_at, :location, :latitude, :longitude]) }
end
end
def show
@member = Member.confirmed.find(params[:id])
@twitter_auth = @member.auth('twitter')
@flickr_auth = @member.auth('flickr')
@posts = @member.posts
@member = Member.confirmed.find(params[:id])
@twitter_auth = @member.auth('twitter')
@flickr_auth = @member.auth('flickr')
@facebook_auth = @member.auth('facebook')
@posts = @member.posts
# The garden form partial is called from the "New Garden" tab;
# it requires a garden to be passed in @garden.
# The new garden is not persisted unless Garden#save is called.
@@ -25,11 +32,66 @@ class MembersController < ApplicationController
respond_to do |format|
format.html # show.html.haml
format.json { render json: @member.to_json(only: [:id, :login_name, :bio, :created_at, :slug, :location, :latitude, :longitude]) }
format.rss { render(
:layout => false,
:locals => { :member => @member }
layout: false,
locals: { member: @member }
)}
end
end
def view_follows
@member = Member.confirmed.find(params[:login_name])
@follows = @member.followed.paginate(page: params[:page])
end
def view_followers
@member = Member.confirmed.find(params[:login_name])
@followers = @member.followers.paginate(page: params[:page])
end
EMAIL_TYPE_STRING = {
send_notification_email: "direct message notifications",
send_planting_reminder: "planting reminders"
}
def unsubscribe
begin
verifier = ActiveSupport::MessageVerifier.new(ENV['RAILS_SECRET_TOKEN'])
decrypted_message = verifier.verify(params[:message])
@member = Member.find(decrypted_message[:member_id])
@type = decrypted_message[:type]
@member.update(@type => false)
flash.now[:notice] = "You have been unsubscribed from #{EMAIL_TYPE_STRING[@type]} emails."
rescue ActiveSupport::MessageVerifier::InvalidSignature
flash.now[:alert] = "We're sorry, there was an error updating your settings."
end
end
def finish_signup
@member = current_member
if request.patch? && params[:member]
if @member.update(member_params)
@member.skip_reconfirmation!
bypass_sign_in(@member)
redirect_to root_path, notice: 'Welcome.'
else
flash[:alert] = 'Failed to complete signup'
@show_errors = true
end
end
end
private
def expire_cache_fragments
expire_fragment("homepage_stats")
end
def member_params
params.require(:member).permit(:login_name, :tos_agreement, :email, :newsletter)
end
end
+26 -2
View File
@@ -1,9 +1,11 @@
class NotificationsController < ApplicationController
include NotificationsHelper
before_filter :authenticate_member!
load_and_authorize_resource
# GET /notifications
def index
@notifications = Notification.find_all_by_recipient_id(current_member)
@notifications = Notification.where(recipient_id: current_member).page(params[:page])
respond_to do |format|
format.html # index.html.erb
@@ -34,6 +36,22 @@ class NotificationsController < ApplicationController
end
end
# GET /notifications/1/reply
def reply
@notification = Notification.new
@sender_notification = Notification.find(params[:id])
@sender_notification.read = true
@sender_notification.save
@recipient = @sender_notification.sender
@subject = @sender_notification.subject =~ /^Re: / ?
@sender_notification.subject :
"Re: " + @sender_notification.subject
respond_to do |format|
format.html # reply.html.haml
end
end
# DELETE /notifications/1
def destroy
@notification = Notification.find(params[:id])
@@ -47,7 +65,7 @@ class NotificationsController < ApplicationController
# POST /notifications
def create
params[:notification][:sender_id] = current_member.id
@notification = Notification.new(params[:notification])
@notification = Notification.new(notification_params)
@recipient = Member.find_by_id(params[:notification][:recipient_id])
respond_to do |format|
@@ -58,4 +76,10 @@ class NotificationsController < ApplicationController
end
end
end
private
def notification_params
params.require(:notification).permit(:sender_id, :recipient_id, :subject, :body, :post_id, :read)
end
end
@@ -0,0 +1,51 @@
require './lib/actions/oauth_signup_action'
#
# Handle signup or signin
# from various oauth providers
#
# Heavily overlaps with Authentications controller
#
class OmniauthCallbacksController < Devise::OmniauthCallbacksController
def facebook
create
end
def failure
flash[:alert] = "Authentication failed."
redirect_to request.env['omniauth.origin'] || "/"
end
private
def create
auth = request.env['omniauth.auth']
action = Growstuff::OauthSignupAction.new
@authentication = nil
if auth
member = action.find_or_create_from_authorization(auth)
@authentication = action.establish_authentication(auth, member)
unless action.member_created?
sign_in_and_redirect member, event: :authentication #this will throw if @user is not activated
set_flash_message(:notice, :success, kind: auth['provider']) if is_navigational_format?
else
raise "Invalid provider" unless ['facebook', 'twitter', 'flickr'].index(auth['provider'].to_s)
session["devise.#{auth['provider']}_data"] = request.env["omniauth.auth"]
sign_in member
redirect_to finish_signup_url(member)
end
else
redirect_to request.env['omniauth.origin'] || edit_member_registration_path
end
end
def after_sign_in_path_for(resource)
if resource.tos_agreement
super resource
else
finish_signup_path(resource)
end
end
end
+9 -2
View File
@@ -1,4 +1,5 @@
class OrderItemsController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# POST /order_items
@@ -6,8 +7,8 @@ class OrderItemsController < ApplicationController
if params[:order_item][:price]
params[:order_item][:price] = params[:order_item][:price].to_f * 100 # convert to cents
end
@order_item = OrderItem.new(params[:order_item])
@order_item.order = current_member.current_order || Order.create(:member_id => current_member.id)
@order_item = OrderItem.new(order_item_params)
@order_item.order = current_member.current_order || Order.create(member_id: current_member.id)
respond_to do |format|
if @order_item.save
@@ -19,4 +20,10 @@ class OrderItemsController < ApplicationController
end
end
end
private
def order_item_params
params.require(:order_item).permit(:order_id, :price, :product_id, :quantity)
end
end
+13 -12
View File
@@ -1,9 +1,10 @@
class OrdersController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# GET /orders
def index
@orders = Order.find_all_by_member_id(current_member.id)
@orders = Order.where(member_id: current_member.id)
respond_to do |format|
format.html # index.html.erb
@@ -33,15 +34,15 @@ class OrdersController < ApplicationController
@order = Order.find(params[:id])
respond_to do |format|
if @order.update_attributes(:referral_code => params[:referral_code])
if @order.update_attributes(referral_code: params[:referral_code])
response = EXPRESS_GATEWAY.setup_purchase(
@order.total,
:items => @order.activemerchant_items,
:currency => Growstuff::Application.config.currency,
:no_shipping => true,
:ip => request.remote_ip,
:return_url => complete_order_url,
:cancel_return_url => shop_url
items: @order.activemerchant_items,
currency: Growstuff::Application.config.currency,
no_shipping: true,
ip: request.remote_ip,
return_url: complete_order_url,
cancel_return_url: shop_url
)
format.html { redirect_to EXPRESS_GATEWAY.redirect_url_for(response.token) }
else
@@ -57,10 +58,10 @@ class OrdersController < ApplicationController
if (params[:token] && params['PayerID'])
purchase = EXPRESS_GATEWAY.purchase(
@order.total,
:currency => Growstuff::Application.config.currency,
:ip => request.remote_ip,
:payer_id => params['PayerID'],
:token => params[:token]
currency: Growstuff::Application.config.currency,
ip: request.remote_ip,
payer_id: params['PayerID'],
token: params[:token]
)
if purchase.success?
@order.completed_at = Time.zone.now
+6
View File
@@ -0,0 +1,6 @@
class PagesController < ApplicationController
def letsencrypt
# use your code here, not mine
render text: "y9KNck8wqkoQLnlr2RgA2TVwWtyYb4PeY_hzGNx0Tfs.dlIPqFhMDCLyQEccczY3roHZ1UWu6UqVeyb9mkRxheU"
end
end
+7
View File
@@ -0,0 +1,7 @@
class PasswordsController < Devise::PasswordsController
protected
def after_resetting_password_path_for(resource)
root_path
end
end
+41 -26
View File
@@ -1,12 +1,11 @@
class PhotosController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :photo_sweeper
# GET /photos
# GET /photos.json
def index
@photos = Photo.paginate(:page => params[:page])
@photos = Photo.paginate(page: params[:page])
respond_to do |format|
format.html # index.html.erb
@@ -14,22 +13,12 @@ class PhotosController < ApplicationController
end
end
# GET /photos/1
# GET /photos/1.json
def show
@photo = Photo.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @photo }
end
end
# GET /photos/new
# GET /photos/new.json
def new
@photo = Photo.new
@planting_id = params[:planting_id]
@type = params[:type]
@id = params[:id]
page = params[:page] || 1
@@ -59,21 +48,31 @@ class PhotosController < ApplicationController
# POST /photos.json
def create
@photo = Photo.find_by_flickr_photo_id(params[:photo][:flickr_photo_id]) ||
Photo.new(params[:photo])
Photo.new(photo_params)
@photo.owner_id = current_member.id
@photo.set_flickr_metadata
if params[:planting_id]
planting = Planting.find_by_id(params[:planting_id])
if planting
if planting.owner.id == current_member.id
@photo.plantings << planting unless @photo.plantings.include?(planting)
else
flash[:alert] = "You must own both the planting and the photo."
end
collection = case params[:type]
when 'garden'
@photo.gardens
when 'planting'
@photo.plantings
when 'harvest'
@photo.harvests
else
nil
end
if collection && has_item_id
item = params[:type].camelcase.constantize.find_by_id(params[:id])
if item && member_owns_item(item)
collection << item unless collection.include?(item)
else
flash[:alert] = "Couldn't find planting to connect to photo."
flash[:alert] = "Could not find this item owned by you"
end
else
flash[:alert] = "Missing or invalid type or id parameter"
end
respond_to do |format|
@@ -93,7 +92,7 @@ class PhotosController < ApplicationController
@photo = Photo.find(params[:id])
respond_to do |format|
if @photo.update_attributes(params[:photo])
if @photo.update(photo_params)
format.html { redirect_to @photo, notice: 'Photo was successfully updated.' }
format.json { head :no_content }
else
@@ -108,10 +107,26 @@ class PhotosController < ApplicationController
def destroy
@photo = Photo.find(params[:id])
@photo.destroy
flash[:alert] = "Photo successfully deleted."
respond_to do |format|
format.html { redirect_to photos_url }
format.json { head :no_content }
end
end
private
def has_item_id
params.key? :id
end
def member_owns_item(item)
item.owner.id == current_member.id
end
def photo_params
params.require(:photo).permit(:flickr_photo_id, :owner_id, :title, :license_name,
:license_url, :thumbnail_url, :fullsize_url, :link_url)
end
end
+13 -5
View File
@@ -5,7 +5,7 @@ class PlacesController < ApplicationController
respond_to do |format|
format.html
# json response is whatever we want to map here
format.json { render :json => Member.located.to_json(:only => [:id, :login_name, :location, :latitude, :longitude]) }
format.json { render json: Member.located.to_json(only: [:id, :login_name, :slug, :location, :latitude, :longitude]) }
end
end
@@ -16,14 +16,22 @@ class PlacesController < ApplicationController
@nearby_members = Member.nearest_to(params[:place])
respond_to do |format|
format.html # show.html.haml
format.json { render :json => @nearby_members.to_json(:only => [:id, :login_name, :location, :latitude, :longitude]) }
format.json { render json: @nearby_members.to_json(only: [:id, :login_name, :slug, :location, :latitude, :longitude]) }
end
end
def search
respond_to do |format|
format.html do
redirect_to place_path(params[:new_place])
if params[:new_place].empty?
respond_to do |format|
format.html do
redirect_to places_path, alert: 'Please enter a valid location'
end
end
else
respond_to do |format|
format.html do
redirect_to place_path(params[:new_place])
end
end
end
end
+91
View File
@@ -0,0 +1,91 @@
class PlantPartsController < ApplicationController
load_and_authorize_resource
# GET /plant_parts
# GET /plant_parts.json
def index
@plant_parts = PlantPart.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @plant_parts }
end
end
# GET /plant_parts/1
# GET /plant_parts/1.json
def show
@plant_part = PlantPart.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @plant_part }
end
end
# GET /plant_parts/new
# GET /plant_parts/new.json
def new
@plant_part = PlantPart.new
respond_to do |format|
format.html # new.html.erb
format.json { render json: @plant_part }
end
end
# GET /plant_parts/1/edit
def edit
@plant_part = PlantPart.find(params[:id])
end
# POST /plant_parts
# POST /plant_parts.json
def create
@plant_part = PlantPart.new(plant_part_params)
respond_to do |format|
if @plant_part.save
format.html { redirect_to @plant_part, notice: 'Plant part was successfully created.' }
format.json { render json: @plant_part, status: :created, location: @plant_part }
else
format.html { render action: "new" }
format.json { render json: @plant_part.errors, status: :unprocessable_entity }
end
end
end
# PUT /plant_parts/1
# PUT /plant_parts/1.json
def update
@plant_part = PlantPart.find(params[:id])
respond_to do |format|
if @plant_part.update(plant_part_params)
format.html { redirect_to @plant_part, notice: 'Plant part was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: "edit" }
format.json { render json: @plant_part.errors, status: :unprocessable_entity }
end
end
end
# DELETE /plant_parts/1
# DELETE /plant_parts/1.json
def destroy
@plant_part = PlantPart.find(params[:id])
@plant_part.destroy
respond_to do |format|
format.html { redirect_to plant_parts_url }
format.json { head :no_content }
end
end
private
def plant_part_params
params.require(:plant_part).permit(:name, :slug)
end
end
+35 -18
View File
@@ -1,31 +1,28 @@
class PlantingsController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :planting_sweeper
# GET /plantings
# GET /plantings.json
def index
@owner = Member.find_by_slug(params[:owner])
@crop = Crop.find_by_slug(params[:crop])
if @owner
@plantings = @owner.plantings.includes(:owner, :crop, :garden).paginate(:page => params[:page])
@plantings = @owner.plantings.includes(:owner, :crop, :garden).paginate(page: params[:page])
elsif @crop
@plantings = @crop.plantings.includes(:owner, :crop, :garden).paginate(page: params[:page])
else
@plantings = Planting.includes(:owner, :crop, :garden).paginate(:page => params[:page])
@plantings = Planting.includes(:owner, :crop, :garden).paginate(page: params[:page])
end
respond_to do |format|
format.html # index.html.erb
format.html { @plantings = @plantings.paginate(page: params[:page]) }
format.json { render json: @plantings }
format.rss { render :layout => false } #index.rss.builder
format.rss { render layout: false } #index.rss.builder
format.csv do
if @owner
@filename = "Growstuff-#{@owner}-Plantings-#{Time.zone.now.to_s(:number)}.csv"
@plantings = @owner.plantings.includes(:owner, :crop, :garden)
else
@filename = "Growstuff-Plantings-#{Time.zone.now.to_s(:number)}.csv"
@plantings = Planting.includes(:owner, :crop, :garden)
end
render :csv => @plantings
specifics = (@owner ? "#{@owner.login_name}-" : @crop ? "#{@crop.name}-" : nil)
@filename = "Growstuff-#{specifics}Plantings-#{Time.zone.now.to_s(:number)}.csv"
render csv: @plantings
end
end
end
@@ -33,7 +30,7 @@ class PlantingsController < ApplicationController
# GET /plantings/1
# GET /plantings/1.json
def show
@planting = Planting.includes(:owner, :crop, :garden, :photos).find(params[:id])
@planting = Planting.includes(:owner, :crop, :garden, :photos).friendly.find(params[:id])
respond_to do |format|
format.html # show.html.erb
@@ -68,14 +65,16 @@ class PlantingsController < ApplicationController
# POST /plantings
# POST /plantings.json
def create
params[:planting][:owner_id] = current_member.id
params[:planted_at] = parse_date(params[:planted_at])
@planting = Planting.new(params[:planting])
@planting = Planting.new(planting_params)
@planting.owner = current_member
respond_to do |format|
if @planting.save
@planting.update_attribute(:days_before_maturity, update_days_before_maturity(@planting, planting_params[:crop_id]))
format.html { redirect_to @planting, notice: 'Planting was successfully created.' }
format.json { render json: @planting, status: :created, location: @planting }
expire_fragment("homepage_stats")
else
format.html { render action: "new" }
format.json { render json: @planting.errors, status: :unprocessable_entity }
@@ -90,7 +89,8 @@ class PlantingsController < ApplicationController
params[:planted_at] = parse_date(params[:planted_at])
respond_to do |format|
if @planting.update_attributes(params[:planting])
if @planting.update(planting_params)
@planting.update_attribute(:days_before_maturity, update_days_before_maturity(@planting, planting_params[:crop_id]))
format.html { redirect_to @planting, notice: 'Planting was successfully updated.' }
format.json { head :no_content }
else
@@ -106,10 +106,27 @@ class PlantingsController < ApplicationController
@planting = Planting.find(params[:id])
@garden = @planting.garden
@planting.destroy
expire_fragment("homepage_stats")
respond_to do |format|
format.html { redirect_to @garden }
format.json { head :no_content }
end
end
private
def planting_params
params.require(:planting).permit(:crop_id, :description, :garden_id, :planted_at,
:quantity, :sunniness, :planted_from, :owner_id, :finished,
:finished_at)
end
def update_days_before_maturity(planting, crop_id)
if planting.finished_at.nil?
planting.calculate_days_before_maturity(planting, crop_id)
else
(planting.finished_at - planting.planted_at).to_i
end
end
end
-2
View File
@@ -1,2 +0,0 @@
class PolicyController < ApplicationController
end
+15 -10
View File
@@ -1,37 +1,36 @@
class PostsController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :post_sweeper
# GET /posts
# GET /posts.json
def index
@author = Member.find_by_slug(params[:author])
if @author
@posts = @author.posts.includes(:author, { :comments => :author }).paginate(:page => params[:page])
@posts = @author.posts.includes(:author, { comments: :author }).paginate(page: params[:page])
else
@posts = Post.includes(:author, { :comments => :author }).paginate(:page => params[:page])
@posts = Post.includes(:author, { comments: :author }).paginate(page: params[:page])
end
respond_to do |format|
format.html # index.html.haml
format.json { render json: @posts }
format.rss { render :layout => false } #index.rss.builder
format.rss { render layout: false } #index.rss.builder
end
end
# GET /posts/1
# GET /posts/1.json
def show
@post = Post.includes(:author, { :comments => :author }).find(params[:id])
@post = Post.includes(:author, { comments: :author }).find(params[:id])
respond_to do |format|
format.html # show.html.haml
format.json { render json: @post }
format.rss { render(
:layout => false,
:locals => { :post => @post }
layout: false,
locals: { post: @post }
)}
end
end
@@ -57,7 +56,7 @@ class PostsController < ApplicationController
# POST /posts.json
def create
params[:post][:author_id] = current_member.id
@post = Post.new(params[:post])
@post = Post.new(post_params)
respond_to do |format|
if @post.save
@@ -76,7 +75,7 @@ class PostsController < ApplicationController
@post = Post.find(params[:id])
respond_to do |format|
if @post.update_attributes(params[:post])
if @post.update(post_params)
format.html { redirect_to @post, notice: 'Post was successfully updated.' }
format.json { head :no_content }
else
@@ -97,4 +96,10 @@ class PostsController < ApplicationController
format.json { head :no_content }
end
end
private
def post_params
params.require(:post).permit(:body, :subject, :author_id, :forum_id)
end
end
+11 -2
View File
@@ -1,5 +1,7 @@
class ProductsController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# GET /products
def index
@products = Product.all
@@ -34,7 +36,7 @@ class ProductsController < ApplicationController
# POST /products
def create
@product = Product.new(params[:product])
@product = Product.new(product_params)
respond_to do |format|
if @product.save
@@ -50,7 +52,7 @@ class ProductsController < ApplicationController
@product = Product.find(params[:id])
respond_to do |format|
if @product.update_attributes(params[:product])
if @product.update(product_params)
format.html { redirect_to @product, notice: 'Product was successfully updated.' }
else
format.html { render action: "edit" }
@@ -67,4 +69,11 @@ class ProductsController < ApplicationController
format.html { redirect_to products_url }
end
end
private
def product_params
params.require(:product).permit(:description, :min_price, :recommended_price, :name,
:account_type_id, :paid_months)
end
end
+24 -13
View File
@@ -1,35 +1,46 @@
class RegistrationsController < Devise::RegistrationsController
cache_sweeper :member_sweeper
respond_to :json
def edit
@twitter_auth = current_member.auth('twitter')
@flickr_auth = current_member.auth('flickr')
@twitter_auth = current_member.auth('twitter')
@flickr_auth = current_member.auth('flickr')
@facebook_auth = current_member.auth('facebook')
render "edit"
end
# we need this subclassed method so that Devise doesn't force people to
# change their password every time they want to edit their settings.
# we also check that they give their current password to change their password.
# Code copied from
# https://github.com/plataformatec/devise/wiki/How-To:-Allow-users-to-edit-their-account-without-providing-a-password
def update
# required for settings form to submit when password is left blank
if params[:member][:password].blank?
params[:member].delete("password")
params[:member].delete("password_confirmation")
params[:member].delete("current_password")
end
@member = Member.find(current_member.id)
if @member.update_attributes(params[:member])
successfully_updated = if needs_password?(@member, params)
@member.update_with_password(devise_parameter_sanitizer.sanitize(:account_update))
else
# remove the virtual current_password attribute
# update_without_password doesn't know how to ignore it
params[:member].delete(:current_password)
@member.update_without_password(devise_parameter_sanitizer.sanitize(:account_update))
end
if successfully_updated
set_flash_message :notice, :updated
# Sign in the member bypassing validation in case his password changed
sign_in @member, :bypass => true
# Sign in the member bypassing validation in case their password changed
sign_in @member, bypass: true
redirect_to edit_member_registration_path
else
render "edit"
end
end
end
# check if we need the current password to update fields
def needs_password?(member, params)
params[:member][:password].present? ||
params[:member][:password_confirmation].present?
end
+20
View File
@@ -0,0 +1,20 @@
class RobotsController < ApplicationController
DEFAULT_FILENAME = 'config/robots.txt'.freeze
def robots
filename = if subdomain && subdomain != 'www'
"config/robots.#{ subdomain }.txt"
end
file_to_render = File.exists?(filename.to_s) ? filename : DEFAULT_FILENAME
render file: file_to_render, layout: false, content_type: 'text/plain'
end
private
def subdomain
request.subdomain.present? ? request.subdomain : nil
end
end
+10 -2
View File
@@ -1,5 +1,7 @@
class RolesController < ApplicationController
before_filter :authenticate_member!
load_and_authorize_resource
# GET /roles
def index
@roles = Role.all
@@ -34,7 +36,7 @@ class RolesController < ApplicationController
# POST /roles
def create
@role = Role.new(params[:role])
@role = Role.new(role_params)
respond_to do |format|
if @role.save
@@ -50,7 +52,7 @@ class RolesController < ApplicationController
@role = Role.find(params[:id])
respond_to do |format|
if @role.update_attributes(params[:role])
if @role.update(role_params)
format.html { redirect_to @role, notice: 'Role was successfully updated.' }
else
format.html { render action: "edit" }
@@ -67,4 +69,10 @@ class RolesController < ApplicationController
format.html { redirect_to roles_url }
end
end
private
def role_params
params.require(:role).permit(:description, :name, :members, :slug)
end
end
+12 -5
View File
@@ -1,8 +1,7 @@
class ScientificNamesController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :scientific_name_sweeper
# GET /scientific_names
# GET /scientific_names.json
def index
@@ -46,7 +45,7 @@ class ScientificNamesController < ApplicationController
# POST /scientific_names.json
def create
params[:scientific_name][:creator_id] = current_member.id
@scientific_name = ScientificName.new(params[:scientific_name])
@scientific_name = ScientificName.new(scientific_name_params)
respond_to do |format|
if @scientific_name.save
@@ -65,7 +64,7 @@ class ScientificNamesController < ApplicationController
@scientific_name = ScientificName.find(params[:id])
respond_to do |format|
if @scientific_name.update_attributes(params[:scientific_name])
if @scientific_name.update(scientific_name_params)
format.html { redirect_to @scientific_name.crop, notice: 'Scientific name was successfully updated.' }
format.json { head :no_content }
else
@@ -83,8 +82,16 @@ class ScientificNamesController < ApplicationController
@scientific_name.destroy
respond_to do |format|
format.html { redirect_to @crop }
format.html {
redirect_to @crop, notice: 'Scientific name was successfully deleted.'
}
format.json { head :no_content }
end
end
private
def scientific_name_params
params.require(:scientific_name).permit(:crop_id, :scientific_name, :creator_id)
end
end
+19 -8
View File
@@ -1,22 +1,24 @@
class SeedsController < ApplicationController
before_filter :authenticate_member!, except: [:index, :show]
load_and_authorize_resource
cache_sweeper :seed_sweeper
# GET /seeds
# GET /seeds.json
def index
@owner = Member.find_by_slug(params[:owner])
@crop = Crop.find_by_slug(params[:crop])
if @owner
@seeds = @owner.seeds.includes(:owner, :crop).paginate(:page => params[:page])
@seeds = @owner.seeds.includes(:owner, :crop).paginate(page: params[:page])
elsif @crop
@seeds = @crop.seeds.includes(:owner, :crop).paginate(page: params[:page])
else
@seeds = Seed.includes(:owner, :crop).paginate(:page => params[:page])
@seeds = Seed.includes(:owner, :crop).paginate(page: params[:page])
end
respond_to do |format|
format.html # index.html.erb
format.json { render json: @seeds }
format.rss { render :layout => false } #index.rss.builder
format.rss { render layout: false } #index.rss.builder
format.csv do
if @owner
@filename = "Growstuff-#{@owner}-Seeds-#{Time.zone.now.to_s(:number)}.csv"
@@ -25,7 +27,7 @@ class SeedsController < ApplicationController
@filename = "Growstuff-Seeds-#{Time.zone.now.to_s(:number)}.csv"
@seeds = Seed.includes(:owner, :crop)
end
render :csv => @seeds
render csv: @seeds
end
end
end
@@ -64,7 +66,7 @@ class SeedsController < ApplicationController
# POST /seeds.json
def create
params[:seed][:owner_id] = current_member.id
@seed = Seed.new(params[:seed])
@seed = Seed.new(seed_params)
respond_to do |format|
if @seed.save
@@ -83,7 +85,7 @@ class SeedsController < ApplicationController
@seed = Seed.find(params[:id])
respond_to do |format|
if @seed.update_attributes(params[:seed])
if @seed.update(seed_params)
format.html { redirect_to @seed, notice: 'Seed was successfully updated.' }
format.json { head :no_content }
else
@@ -104,4 +106,13 @@ class SeedsController < ApplicationController
format.json { head :no_content }
end
end
private
def seed_params
params.require(:seed).permit(
:owner_id, :crop_id, :description, :quantity, :plant_before,
:days_until_maturity_min, :days_until_maturity_max, :organic, :gmo,
:heirloom, :tradable_to, :slug)
end
end
+11
View File
@@ -0,0 +1,11 @@
class SessionsController < Devise::SessionsController
respond_to :json
def create
super do |resource|
if Crop.pending_approval.present? && current_member.has_role?(:crop_wrangler)
flash[:alert] = "There are crops waiting to be wrangled."
end
end
end
end
-2
View File
@@ -1,2 +0,0 @@
class SupportController < ApplicationController
end
+65 -5
View File
@@ -19,10 +19,70 @@ module ApplicationHelper
pid = price_in_dollars(price)
currency = Growstuff::Application.config.currency
link = "http://www.wolframalpha.com/input/?i=#{pid}+#{currency}"
return link_to "(convert)",
link,
:target => "_blank"
end
link_to "(convert)", link, target: "_blank", rel: "noopener noreferrer"
end
def build_alert_classes(alert_type = :info)
classes = 'alert alert-dismissable '
case alert_type.to_sym
when :alert, :danger, :error, :validation_errors
classes += 'alert-danger'
when :warning, :todo
classes += 'alert-warning'
when :notice, :success
classes += 'alert-success'
when :info
classes += 'alert-info'
end
classes
end
# Produces a cache key for uniquely identifying cached fragments.
def cache_key_for(klass, identifier="all")
count = klass.count
max_updated_at = klass.maximum(:updated_at).try(:utc).try(:to_s, :number)
"#{klass.name.downcase.pluralize}/#{identifier}-#{count}-#{max_updated_at}"
end
def required_field_help_text
asterisk = content_tag :span, '*', class: ['red']
text = content_tag :em, 'denotes a required field'
content_tag :div, asterisk + ' '.html_safe + text, class: ['margin-bottom']
end
#
# Returns an image uri for a given member.
#
# Falls back to Gravatar
#
def avatar_uri(member, size = 150)
if member.preferred_avatar_uri.present?
# Some avatars support different sizes
# http://graph.facebook.com/12345678/picture?width=150&height=150
uri = URI.parse(member.preferred_avatar_uri)
if uri.host == 'graph.facebook.com'
uri.query = "&width=#{size}&height=#{size}"
end
# TODO: Assess twitter - https://dev.twitter.com/overview/general/user-profile-images-and-banners
# TODO: Assess flickr - https://www.flickr.com/services/api/misc.buddyicons.html
return uri.to_s
end
Gravatar.new(member.email).image_url({
size: size,
default: :identicon
})
end
# Returns a string with the quantity and the right pluralization for a
# given collection and model.
def localize_plural(collection, model)
size = collection.size
model_name = model.model_name.human(count: size)
"#{size} #{model_name}"
end
end
+22
View File
@@ -0,0 +1,22 @@
module AutoSuggestHelper
def auto_suggest(resource, source, options={})
if options[:default] && !options[:default].new_record?
default = options[:default]
default_id = options[:default].try(:id)
else
default = resource.send(source)
default_id = default.try(:id)
end
resource = resource.class.name.downcase
source_path = Rails.application.routes.url_helpers.send("#{source}s_search_path")
%Q{
<input id="#{source}" class="auto-suggest #{options[:class]}" type="text" value="#{default}" data-source-url="#{source_path}", placeholder="e.g. lettuce">
<noscript class="text-warning">Warning: Javascript must be available to search and match crops</noscript>
<input id="#{resource}_#{source}_id" class="auto-suggest-id" type="hidden" name="#{resource}[#{source}_id]" value="#{default_id}">
}.html_safe
end
end
Loaded 100 of 1038 files, more files were not shown because too many files have changed in this diff. Show more