Commit Graph

888 Commits

Author SHA1 Message Date
Matt-Yorkley
a6edc1c973 Enable control over body scroll with BodyScroll service 2020-06-18 22:21:55 +02:00
Matt-Yorkley
ed086c2db5 Add character limit to product and variant names in cart sidebar 2020-06-18 22:21:55 +02:00
Matt-Yorkley
bd97939062 Move homepage "register here" CTA to bottom of screen.
The CTA breaks the layout when the new cart sidebar is open. I can't see a nice way to keep it at the top without making a mess.
2020-06-18 22:21:55 +02:00
Matt-Yorkley
387a5ec950 Implement "Take me shopping" button 2020-06-18 22:21:55 +02:00
Matt-Yorkley
4a0f43a831 Ensure cart item count is visible in header cart button (for screens smaller than desktop) 2020-06-18 22:21:55 +02:00
Matt-Yorkley
be8c0f3600 Remove old cart dropdown view and directive 2020-06-18 22:21:54 +02:00
Matt-Yorkley
b1ce7f2c15 Simplify product naming in cart 2020-06-18 22:21:54 +02:00
Matt-Yorkley
85abfd2056 Create Cart sidebar and controller 2020-06-18 22:21:54 +02:00
Luis Ramos
208623bb0a Merge pull request #5635 from Matt-Yorkley/map-icons
Ensure map icon URLs are correctly generated with fingerprints
2020-06-18 18:02:47 +01:00
Pau Pérez Fabregat
63f8830eba Merge pull request #5530 from cillian/remove-spinjs
Remove spinjs-rails dependency and use spinning-circles.svg instead.
2020-06-18 16:47:09 +02:00
Matt-Yorkley
75e57e5c2c Call #image_path on map cluster icon 2020-06-18 14:14:41 +02:00
Matt-Yorkley
9a39cbbbc5 Convert MapConfiguration service to .js.erb.coffee 2020-06-18 14:14:41 +02:00
Pau Pérez Fabregat
6a31c56601 Merge pull request #5598 from luisramos0/checkout_error
Make checkout js error handling a bit more defensive
2020-06-16 16:18:49 +02:00
Luis Ramos
ed262a19a9 Make checkout js error handling a bit more defensive 2020-06-12 20:33:22 +01:00
Luis Ramos
983bed3c4e Merge branch 'master' into 3-0-stable-jun-2 2020-06-11 19:50:56 +01:00
Luis Ramos
88896b7730 Merge branch 'master' into 3-0-stable-jun-2 2020-06-08 19:17:11 +01:00
Matt-Yorkley
78fc6b7138 Rename "Geo" service to "GmapsGeo" for clarity.
This service directly calls methods in the google maps javascript included in the darkswarm layout. If we're moving away from it, we should clarify where it's used.
2020-06-05 08:35:15 +02:00
Luis Ramos
3a20de1465 Merge pull request #5398 from cillian/open-street-map
Add support for using Open Street Map on the Map and Group pages.
2020-06-04 17:01:25 +01:00
Pau Pérez Fabregat
d9cf22fed5 Merge pull request #5528 from luisramos0/checkout_js
Make checkout JS code send bugsnag alert even if there's an error processing an error
2020-06-03 09:13:40 +02:00
Pau Pérez Fabregat
fb339d6a99 Merge pull request #5263 from luisramos0/pdp
[Mobile] Restyle product modal
2020-06-03 08:55:20 +02:00
Luis Ramos
c9a7a6e897 Merge branch 'master' into 3-0-stable-jun-2 2020-06-02 16:00:45 +01:00
Cillian O'Ruanaidh
deafe32354 Add support for using Open Street Map on the Map and Group pages.
The map is displayed using https://leafletjs.com/

To enable Open Street Map go to the Admin -> Configuration -> Content section and click 'Open Street Map Enabled'.

The 'Open Street Map Provider Name' setting can be used to configure different tile providers thanks to the Leaflet-providers extension (https://github.com/leaflet-extras/leaflet-providers)

Some tile providers require an API key, this can provided in JSON format e.g. '{ apiKey: 123 }' in the 'Open Street Map Provider Options' setting.

Each tile provider has their own usage policy so this should be checked before enabling Open Street Map.

The search field for the Open Street Map works differently than searching on Google Maps. It matches producers by their name or address because it was easier to implement instead of matching place names all over the world.
2020-05-31 18:42:55 +02:00
Cillian O'Ruanaidh
e6fa296d03 Remove spinjs-rails dependency and use spinning-circles.svg instead.
For https://github.com/openfoodfoundation/openfoodnetwork/issues/3491

The spinjs-rails gem provides a CSS3 a spinning activity indicator. This commit removes the gem so we don't have to keep the gem up-to-date and uses the spinning-circles.svg which is used already in other places.

The spinjs spinner can be seen when viewing or editing taxonomies in /admin/taxonomies. It is loaded from the .ajaxStart call in app/assets/javascripts/admin/spree/progress.coffee

To test or restyle this spinner you can change the display property of the #progress element in app/assets/stylesheets/admin/components/progress.scss to 'block'.
2020-05-29 18:04:49 +01:00
Luis Ramos
6e842212ea Always throw back error even if there is an error loading the flash for example translating the error message 2020-05-29 14:45:22 +01:00
Matt-Yorkley
e03005ed56 Fix maps and tidy up groups map code 2020-05-25 13:52:56 +02:00
Luis Ramos
f34f693620 Merge branch 'master' into 3-0-stable-may-22 2020-05-22 22:54:19 +01:00
Luis Ramos
9a71ffc093 Merge pull request #5438 from Matt-Yorkley/cart-stock-ux
Cart stock UX
2020-05-22 14:21:16 +01:00
Matt-Yorkley
05e6f5792d Fix cart fields sharing same scope
All cart page quantity fields were displaying a single max quantity instead of a different value for each one.
2020-05-19 10:23:12 +02:00
Matt-Yorkley
d70174becc Use fresh scope for each quantity field 2020-05-18 16:28:07 +02:00
Matt-Yorkley
f9f76f9082 Move reused available stock logic to service 2020-05-18 16:19:49 +02:00
Matt-Yorkley
f7b4717f29 Improve validation code 2020-05-18 14:51:11 +02:00
Matt-Yorkley
63e4430ea4 Update cart page links to be disabled when changes are required and form is unsaved
See: https://stackoverflow.com/questions/23425254/enable-disable-anchor-tags-using-angularjs
2020-05-18 14:51:08 +02:00
Luis Ramos
4292636e70 Remove close button in product modal 2020-05-15 12:16:19 +01:00
Luis Ramos
30fe457cb5 Make product modal show close button only if there is a scroll bar 2020-05-15 12:12:07 +01:00
Luis Ramos
59a13adff0 Remove product category from product modal 2020-05-15 12:11:32 +01:00
Matt-Yorkley
3ba1182661 Dynamically mark quantity field as invalid when stock is incorrect 2020-05-15 12:59:29 +02:00
Matt-Yorkley
42195b76d3 Highlight update button when cart page form is "dirty" 2020-05-15 12:59:29 +02:00
Luis Ramos
19da0ba969 Merge branch 'master' into 3-0-stable-may13 2020-05-13 19:50:32 +01:00
Luis Ramos
5f7c1474a2 Merge pull request #5377 from manvil/1782_enterprise_at_same_address
Handling multiple enterprises at the same location
2020-05-13 19:31:14 +01:00
Matt-Yorkley
82b11d6947 Ensure join words are not bold 2020-05-10 09:44:12 +02:00
Matt-Yorkley
71fb3b1845 Focus search field after it's cleared, ready for immediate typing of new search term on mobile 2020-05-10 09:44:12 +02:00
Matt-Yorkley
2964ec138d Update display of join words in filters list and rearrange code a bit for clarity
Here we need to build a really dynamic structure on the page like "Results for: <search-term> in <filter1> or <filter2>" and the styling on each of the words needs to be a bit different, specifically the filter terms need to be differently styled to the join words like "in" and "or". We have to generate those bits on the Angular side, but they also have to be wrapped in HTML in a specific way.

$sce.trustAsHtml() marks the injected HTML as "safe" (in relation to security issues like XSS). In this case the injected content doesn't involve any user-defined data, so it should be fine.
2020-05-10 09:44:11 +02:00
Matt-Yorkley
026b98022c Add clear search button in shop searchbar 2020-05-10 09:44:11 +02:00
Matt-Yorkley
ebe00bdc31 Update filters clear button functionality 2020-05-10 09:44:11 +02:00
Matt-Yorkley
8e9833fd06 Implement overlaid sidebar on mobile and tablet 2020-05-10 09:44:11 +02:00
Matt-Yorkley
142cef3f3a Add filters count 2020-05-10 09:44:11 +02:00
Manvil George
63a1a6fefa More optimsations: removing unwanted code 2020-05-07 22:58:09 +10:00
Luis Ramos
3c7970f72f Add select oc message when there are multiple OCs 2020-05-07 12:18:40 +01:00
Luis Ramos
d4980893a1 Refactor darker-background directive, extract method 2020-05-07 12:17:43 +01:00
Luis Ramos
77d7d2b804 Make the background darker only in specific cases 2020-05-07 12:17:43 +01:00