Merge remote-tracking branch 'origin/master' into uk/delivery-address

This commit is contained in:
Maikel Linke
2016-10-19 11:01:24 +11:00
15 changed files with 134 additions and 1161 deletions

View File

@@ -1,4 +1,8 @@
module CheckoutHelper
def guest_checkout_allowed?
current_order.distributor.allow_guest_orders?
end
def checkout_adjustments_for(order, opts={})
adjustments = order.adjustments.eligible
exclude = opts[:exclude] || {}

View File

@@ -4,6 +4,7 @@ class Api::Admin::EnterpriseSerializer < ActiveModel::Serializer
attributes :preferred_shopfront_message, :preferred_shopfront_closed_message, :preferred_shopfront_taxon_order, :preferred_shopfront_order_cycle_order
attributes :preferred_product_selection_from_inventory_only
attributes :owner, :users, :tag_groups, :default_tag_group
attributes :require_login
has_one :owner, serializer: Api::Admin::UserSerializer
has_many :users, serializer: Api::Admin::UserSerializer

View File

@@ -50,17 +50,6 @@
.five.columns.omega
= f.radio_button :visible, false
= f.label :visible, "Not Visible", :value => "false"
.row
.three.columns.alpha
%label= t '.shopfront_requires_login'
%div{'ofn-with-tip' => t('.shopfront_requires_login_tip')}
%a= t 'admin.whats_this'
.two.columns
= f.radio_button :require_login, false
= f.label :require_login, t('.shopfront_requires_login_false'), value: :false
.five.columns.omega
= f.radio_button :require_login, true
= f.label :require_login, t('.shopfront_requires_login_true'), value: :true
.permalink{ ng: { controller: "permalinkCtrl" } }
.row{ ng: { show: "Enterprise.sells == 'own' || Enterprise.sells == 'any'" } }
.three.columns.alpha

View File

@@ -33,3 +33,27 @@
.five.columns.omega
= radio_button :enterprise, :preferred_shopfront_order_cycle_order, :orders_close_at, { 'ng-model' => 'Enterprise.preferred_shopfront_order_cycle_order' }
= label :enterprise, :preferred_shopfront_order_cycle_order_orders_close_at, "Close Date"
.row
.alpha.eleven.columns
.three.columns.alpha
%label= t '.shopfront_requires_login'
%div{'ofn-with-tip' => t('.shopfront_requires_login_tip')}
%a= t 'admin.whats_this'
.three.columns
= f.radio_button :require_login, false, "ng-model" => "Enterprise.require_login", "ng-value" => "false"
= f.label :require_login, t('.shopfront_requires_login_false'), value: :false
.five.columns.omega
= f.radio_button :require_login, true, "ng-model" => "Enterprise.require_login", "ng-value" => "true"
= f.label :require_login, t('.shopfront_requires_login_true'), value: :true
.row{ng: {if: "!Enterprise.require_login"}}
.alpha.eleven.columns
.three.columns.alpha
%label= t '.allow_guest_orders'
%div{'ofn-with-tip' => t('.allow_guest_orders_tip')}
%a= t 'admin.whats_this'
.three.columns
= f.radio_button :allow_guest_orders, true
= f.label :allow_guest_orders, t('.allow_guest_orders_true'), value: :true
.five.columns.omega
= f.radio_button :allow_guest_orders, false
= f.label :allow_guest_orders, t('.allow_guest_orders_false'), value: :false

View File

@@ -4,11 +4,16 @@
%h3.pad-top
= t :checkout_headline
.row.pad-top
.small-5.columns.text-center
%button.primary.expand{"auth" => "login"}
= t :label_login
.small-2.columns.text-center
%p.pad-top= "-#{t :action_or}-"
.small-5.columns.text-center
%button.neutral-btn.dark.expand{"ng-click" => "enabled = true"}
= t :checkout_as_guest
-if guest_checkout_allowed?
.small-5.columns.text-center
%button.primary.expand{"auth" => "login"}
= t :label_login
.small-2.columns.text-center
%p.pad-top= "-#{t :action_or}-"
.small-5.columns.text-center
%button.neutral-btn.dark.expand{"ng-click" => "enabled = true"}
= t :checkout_as_guest
-else
.small-6.columns.small-centered
%button.primary.expand{"auth" => "login"}
= t :label_login

View File

@@ -44,7 +44,6 @@
%p
= t :sell_embed
%a{href: "hello@openfoodnetwork.org".reverse, target: '_blank', mailto: true}
= t :sell_ask_services
= link_to t(:sell_ask_services), ContentConfig.footer_email.reverse, mailto: true
= render "shared/footer"

View File

@@ -1,29 +1,12 @@
# English language file
# ---------------------
#
# This is the source language file maintained by the Australian OFN team.
# Visit Transifex to translate this file into other languages:
#
# https://www.transifex.com/open-food-foundation/open-food-network/
#
# If you translate this file in a text editor, please share your results with us by
#
# - uploading the file to Transifex or
# - opening a pull request at GitHub.
#
#
# See http://community.openfoodnetwork.org/t/localisation-ofn-in-your-language/397
en_GB:
en-GB:
activerecord:
# Overridden here due to a bug in spree i18n (Issue #870)
attributes:
spree/order:
payment_state: Payment State
shipment_state: Shipment State
devise:
failure:
invalid: |
invalid:
Invalid email or password.
Were you a guest last time? Perhaps you need to create an account or reset your password.
enterprise_confirmations:
@@ -37,13 +20,12 @@ en_GB:
subject: "Please confirm the email address for %{enterprise}"
welcome:
subject: "%{enterprise} is now on %{sitename}"
home: "OFN"
title: Open Food Network
welcome_to: 'Welcome to '
site_meta_description: "We begin from the ground up. With farmers and growers ready to tell their stories proudly and truly. With distributors ready to connect people with products fairly and honestly. With buyers who believe that better weekly shopping decisions can seriously change the world."
search_by_name: Search by name...
producers: 'UK Producers'
producers_join: UK producers are now welcome to join Open Food Network UK. #FIXME
producers_join: UK producers are now welcome to join Open Food Network UK.
charges_sales_tax: Charges VAT?
print_invoice: "Print Invoice"
send_invoice: "Send Invoice"
@@ -70,12 +52,8 @@ en_GB:
say_no: "No"
say_yes: "Yes"
then: then
sort_order_cycles_on_shopfront_by: "Sort Order Cycles On Shopfront By"
admin:
# Common properties / models
date: Date
email: Email
name: Name
@@ -92,23 +70,17 @@ en_GB:
sku: SKU
tags: Tags
variant: Variant
# General form elements
quick_search: Quick Search
clear_all: Clear All
start_date: "Start Date"
end_date: "End Date"
columns: Columns
actions: Actions
viewing: "Viewing: %{current_view_name}"
whats_this: What's this?
tag_has_rules: "Existing rules for this tag: %{num}"
has_one_rule: "has one rule"
has_n_rules: "has %{num} rules"
customers:
index:
add_customer: "Add Customer"
@@ -118,7 +90,6 @@ en_GB:
add_a_new_customer_for: Add a new customer for %{shop_name}
code: Code
duplicate_code: "This code is used already."
products:
bulk_edit:
unit: Unit
@@ -128,7 +99,6 @@ en_GB:
inherits_properties?: Inherits Properties?
available_on: Available On
av_on: "Av. On"
variant_overrides:
index:
title: Inventory
@@ -139,7 +109,7 @@ en_GB:
hide: Hide
select_a_shop: Select A Shop
review_now: Review Now
new_products_alert_message: ''
new_products_alert_message: There are %{new_product_count} new products available to add to your inventory.
currently_empty: Your inventory is currently empty
no_matching_products: No matching products found in your inventory
no_hidden_products: No products have been hidden from this inventory
@@ -149,7 +119,6 @@ en_GB:
inventory_powertip: This is your inventory of products. To add products to your inventory, select 'New Products' from the Viewing dropdown.
hidden_powertip: These products have been hidden from your inventory and will not be available to add to your shop. You can click 'Add' to add a product to you inventory.
new_powertip: These products are available to be added to your inventory. Click 'Add' to add a product to your inventory, or 'Hide' to hide it from view. You can always change your mind later!
orders:
bulk_management:
tip: "Use this page to alter product quantities across multiple orders. Products may also be removed from orders entirely, if required."
@@ -171,27 +140,23 @@ en_GB:
max_fulfilled_units: "Max Fulfilled Units"
order_error: "Some errors must be resolved before you can update orders.\nAny fields with red borders contain errors."
variants_without_unit_value: "WARNING: Some variants do not have a unit value"
order_cycles:
edit:
choose_products_from: "Choose Products From:"
enterprise:
select_outgoing_oc_products_from: Select outgoing OC products from
enterprises:
index:
producer?: ''
package: ''
status: ''
manage: ''
producer?: Producer?
package: Package
status: Status
manage: Manage
form:
primary_details:
shopfront_requires_login: "Shopfront requires login?"
shopfront_requires_login_tip: "Choose whether customers must login to view the shopfront."
shopfront_requires_login_false: "Public"
shopfront_requires_login_true: "Require customers to login"
home:
hubs:
show_closed_shops: "Show closed shops"
@@ -209,19 +174,16 @@ en_GB:
require_customer_login: "This shop is for customers only."
require_login_html: "Please %{login} if you have an account already. Otherwise, %{register} to become a customer."
require_customer_html: "Please %{contact} %{enterprise} to become a customer."
# Printable Invoice Columns
invoice_column_item: "Item"
invoice_column_qty: "Qty"
invoice_column_tax: "VAT"
invoice_column_price: "Price"
logo: "Logo (640x130)" #FIXME
logo_mobile: "Mobile logo (75x26)" #FIXME
logo_mobile_svg: "Mobile logo (SVG)" #FIXME
logo: "Logo (640x130)"
logo_mobile: "Mobile logo (75x26)"
logo_mobile_svg: "Mobile logo (SVG)"
home_hero: "Hero image"
home_show_stats: "Show statistics"
footer_logo: "Logo (220x76)" #FIXME
footer_logo: "Logo (220x76)"
footer_facebook_url: "Facebook URL"
footer_twitter_url: "Twitter URL"
footer_instagram_url: "Instagram URL"
@@ -232,7 +194,6 @@ en_GB:
footer_links_md: "Links"
footer_about_url: "About URL"
footer_tos_url: "Terms of Service URL"
name: Name
first_name: First Name
last_name: Last Name
@@ -249,12 +210,13 @@ en_GB:
terms_of_service: "Terms of service"
on_demand: To Order
none: None
label_shops: "Shops"
label_map: "Map"
label_producers: "Producers"
label_groups: "Groups"
label_about: "About"
label_connect: "Connect"
label_learn: "Learn"
label_shopping: "Shopping"
label_login: "Login"
label_logout: "Logout"
@@ -265,7 +227,6 @@ en_GB:
label_more: "Show more"
label_less: "Show less"
label_notices: "Community Forum"
items: "items"
cart_headline: "Your shopping cart"
total: "Total"
@@ -273,11 +234,9 @@ en_GB:
cart_updating: "Updating cart..."
cart_empty: "Cart empty"
cart_edit: "Edit your cart"
card_number: Card Number
card_securitycode: "Security Code"
card_expiry_date: Expiry Date
ofn_cart_headline: "Current cart for:"
ofn_cart_distributor: "Distributor:"
ofn_cart_oc: "Order cycle:"
@@ -286,45 +245,34 @@ en_GB:
ofn_cart_product: "Product:"
ofn_cart_quantitiy: "Quantity:"
ofn_cart_send: "Buy me"
ie_warning_headline: "Your browser is out of date :-("
ie_warning_text: "For the best Open Food Network experience, we strongly recommend upgrading your browser:"
ie_warning_chrome: Download Chrome
ie_warning_firefox: Download Firefox
ie_warning_ie: Upgrade Internet Explorer
ie_warning_other: "Can't upgrade your browser? Try Open Food Network on your smartphone :-)"
footer_global_headline: "OFN Global"
footer_global_home: "Home"
footer_global_news: "News"
footer_global_about: "About"
footer_global_contact: "Contact"
footer_sites_headline: "OFN Sites"
footer_sites_developer: "Developer"
footer_sites_community: "Community"
footer_sites_userguide: "User Guide"
footer_secure: "Secure and trusted."
footer_secure_text: "Open Food Network uses SSL encryption (2048 bit RSA) everywhere to keep your shopping and payment information private. Our servers do not store your credit card details and payments are processed by PCI-compliant services."
footer_contact_headline: "Keep in touch"
footer_contact_email: "Email us"
footer_nav_headline: "Navigate"
footer_join_headline: "Join us"
footer_join_producers: "Producers sign-up"
footer_join_hubs: "Hubs sign-up"
footer_join_groups: "Groups sign-up"
footer_join_partners: "Food systems partners"
footer_join_body: "Create a listing, shop or group directory on the Open Food Network."
footer_join_cta: "Tell me more!"
footer_legal_call: "Read our"
footer_legal_tos: "Terms and conditions"
footer_legal_visit: "Find us on"
footer_legal_text_html: "Open Food Network is a free and open source software platform. Our content is licensed with %{content_license} and our code with %{code_license}."
home_shop: Shop Now
brandstory_headline: "Food, unincorporated."
brandstory_intro: "Sometimes the best way to fix the system is to start a new one…"
brandstory_part1: "We begin from the ground up. With farmers and growers ready to tell their stories proudly and truly. With distributors ready to connect people with products fairly and honestly. With buyers who believe that better weekly shopping decisions can seriously change the world."
@@ -333,24 +281,24 @@ en_GB:
brandstory_part4: "It works everywhere. It changes everything."
brandstory_part5_strong: "We call it Open Food Network."
brandstory_part6: "We all love food. Now we can love our food system too."
system_headline: "Here's how it works."
learn_body: "Explore models, stories and resources to support you to develop your fair food business or organisation. Find training, events and other opportunities to learn from peers."
learn_cta: "Get Inspired"
connect_body: "Search our full directories of producers, hubs and groups to find fair food traders near you. List your business or organisation on the OFN so buyers can find you. Join the community to get advice and solve problems together."
connect_cta: "Go Exploring"
system_headline: "Shopping - here's how it works."
system_step1: "1. Search"
system_step1_text: "Search our diverse, independent shops for seasonal local food. Search by neighbourhood and food category, or whether you prefer delivery or pickup."
system_step2: "2. Shop"
system_step2_text: "Transform your transactions with affordable local food from diverse producers and hubs. Know the stories behind your food and the people who make it!"
system_step3: "3. Pick-up / Delivery"
system_step3_text: "Hang on for your delivery, or visit your producer or hub for a more personal connection with your food. Food shopping as diverse as nature intended it."
cta_headline: "Shopping that makes the world a better place."
cta_label: "I'm Ready"
stats_headline: "We're creating a new food system."
stats_producers: "food producers"
stats_shops: "food shops"
stats_shoppers: "food shoppers"
stats_orders: "food orders"
checkout_title: Checkout
checkout_now: Checkout now
checkout_order_ready: Order ready for
@@ -372,7 +320,6 @@ en_GB:
checkout_shipping_price: Shipping
checkout_total_price: Total
checkout_back_to_cart: "Back to cart"
order_paid: PAID
order_not_paid: NOT PAID
order_total: Total order
@@ -388,15 +335,12 @@ en_GB:
order_includes_tax: (includes tax)
order_payment_paypal_successful: Your payment via PayPal has been processed successfully.
order_hub_info: Hub info
unsaved_changes_warning: "Unsaved changes exist and will be lost if you continue."
unsaved_changes_error: "Fields with red borders contain errors."
products: "Products"
products_in: "in %{oc}"
products_at: "at %{distributor}"
products_elsewhere: "Products found elsewhere"
email_welcome: "Welcome"
email_confirmed: "Thank you for confirming your email address."
email_registered: "is now part of"
@@ -414,7 +358,6 @@ en_GB:
email_contact: "Email us:"
email_signoff: "Cheers,"
email_signature: "%{sitename} Team"
email_confirm_customer_greeting: "Hi %{name},"
email_confirm_customer_intro_html: "Thanks for shopping at <strong>%{distributor}</strong>!"
email_confirm_customer_number_html: "Order confirmation <strong>#%{number}</strong>"
@@ -439,7 +382,6 @@ en_GB:
email_shipping_collection_time: "Ready for collection:"
email_shipping_collection_instructions: "Collection instructions:"
email_special_instructions: "Your notes:"
email_signup_greeting: Hello!
email_signup_welcome: "Welcome to %{sitename}!"
email_signup_login: Your login
@@ -447,14 +389,11 @@ en_GB:
email_signup_shop_html: "You can start shopping online now at %{link}."
email_signup_text: "Thanks for joining the network. If you are a customer, we look forward to introducing you to many fantastic farmers, wonderful food hubs and delicious food! If you are a producer or food enterprise, we are excited to have you as a part of the network."
email_signup_help_html: "We welcome all your questions and feedback; you can use the <em>Send Feedback</em> button on the site or email us at"
producer_mail_greeting: ""
producer_mail_text_before: ""
producer_mail_order_text: ""
producer_mail_delivery_instructions: ""
producer_mail_text_after: ""
producer_mail_signoff: ""
producer_mail_greeting: "Dear"
producer_mail_text_before: "We now have all the consumer orders for the next food delivery."
producer_mail_order_text: "Here is a summary of the orders for your products:"
producer_mail_delivery_instructions: "Stock pickup/delivery instructions:"
producer_mail_signoff: "Thanks and best wishes"
shopping_oc_closed: Orders are closed
shopping_oc_closed_description: "Please wait until the next cycle opens (or contact us directly to see if we can accept any late orders)"
shopping_oc_last_closed: "The last cycle closed %{distance_of_time} ago"
@@ -466,11 +405,9 @@ en_GB:
shopping_contact_social: "Follow"
shopping_groups_part_of: "is part of:"
shopping_producers_of_hub: "%{hub}'s producers:"
enterprises_next_closing: "Next order closing"
enterprises_ready_for: "Ready for"
enterprises_choose: "Choose when you want your order:"
hubs_buy: "Shop for:"
hubs_shopping_here: "Shopping here"
hubs_orders_closed: "Orders closed"
@@ -486,7 +423,6 @@ en_GB:
hubs_intro: Shop in your local area
hubs_distance: Closest to
hubs_distance_filter: "Show me shops near %{location}"
products_clear_all: Clear all
products_showing: "Showing:"
products_with: with
@@ -501,21 +437,17 @@ en_GB:
products_update_error_msg: "Saving failed."
products_update_error_data: "Save failed due to invalid data:"
products_changes_saved: "Changes saved."
search_no_results_html: "Sorry, no results found for %{query}. Try another search?"
components_profiles_popover: "Profiles do not have a shopfront on the Open Food Network, but may have their own physical or online shop elsewhere"
components_profiles_show: "Show profiles"
components_filters_nofilters: "No filters"
components_filters_clearfilters: "Clear all filters"
groups_title: Groups
groups_headline: Groups / regions
groups_text: "Every producer is unique. Every business has something different to offer. Our groups are collectives of producers, hubs and distributors who share something in common like location, farmers market or philosophy. This makes your shopping experience easier. So explore our groups and have the curating done for you."
groups_search: "Search name or keyword"
groups_no_groups: "No groups found"
groups_about: "About Us"
groups_producers: "Our producers"
groups_hubs: "Our hubs"
groups_contact_web: Contact
@@ -542,18 +474,14 @@ en_GB:
groups_signup_contact: Ready to discuss?
groups_signup_contact_text: "Get in touch to discover what OFN can do for you:"
groups_signup_detail: "Here's the detail."
login_invalid: "Invalid email or password"
modal_hubs: "Food Hubs"
modal_hubs_abstract: Our food hubs are the point of contact between you and the people who make your food!
modal_hubs_content1: You can search for a convenient hub by location or name. Some hubs have multiple points where you can pick-up your purchases, and some will also provide delivery options. Each food hub is a sales point with independent business operations and logistics - so variations between hubs are to be expected.
modal_hubs_content2: You can only shop at one food hub at a time.
modal_groups: "Groups / Regions"
modal_groups_content1: These are the organisations and relationships between hubs which make up the Open Food Network.
modal_groups_content2: Some groups are clustered by location or council, others by non-geographic similarities.
modal_how: "How it works"
modal_how_shop: Shop the Open Food Network
modal_how_shop_explained: Search for a food hub near you to start shopping! You can expand each food hub to see what kinds of goodies are available, and click through to start shopping. (You can only shop one food hub at a time.)
@@ -561,29 +489,8 @@ en_GB:
modal_how_pickup_explained: Some food hubs deliver to your door, while others require you to pick-up your purchases. You can see which options are available on the homepage, and select which you'd like at the shopping and check-out pages. Delivery will cost more, and pricing differs from hub-to-hub. Each food hub is a sales point with independent business operations and logisitics - so variations between hubs are to be expected.
modal_how_more: Learn more
modal_how_more_explained: "If you want to learn more about the Open Food Network, how it works, and get involved, check out:"
modal_producers: "Producers"
modal_producers_explained: "Our producers make all the delicious food you can shop for on the Open Food Network."
ocs_choice_hub: "Hub:"
ocs_choice_oc: "Order Cycle:"
ocs_choice_text: "You have not yet picked where you will get your order from."
ocs_closed_headline: Orders are currently closed for this hub
ocs_closed_time: "The last cycle closed %{time} ago."
ocs_closed_contact: "Please contact your hub directly to see if they accept late orders, or wait until the next cycle opens."
ocs_closed_opens: "The next order cycle opens in %{time}"
ocs_closed_email: "Email: %{email}"
ocs_closed_phone: "Phone: %{phone}"
ocs_pickup_time: "Your order will be ready on %{pickup_time}"
ocs_change_date: "Change Collection Date"
ocs_change_date_notice: "(This will reset your cart)"
ocs_close_time: "ORDERS CLOSE"
ocs_when_headline: When do you want your order?
ocs_when_text: No products are displayed until you select a date.
ocs_when_closing: "Closing on"
ocs_when_choose: "Choose Order Cycle"
ocs_list: "List view"
producers_about: About us
producers_buy: Shop for
producers_contact: Contact
@@ -592,6 +499,7 @@ en_GB:
producers_buy_at_html: "Shop for %{enterprise} products at:"
producers_filter: Filter by
producers_filter_type: Type
producers_filter_property: Property
producers_title: Producers
producers_headline: Find local producers
producers_signup_title: Sign up as a producer
@@ -603,18 +511,27 @@ en_GB:
producers_signup_cta_headline: Join now!
producers_signup_cta_action: Join now
producers_signup_detail: Here's the detail.
producer: Producer
products_item: Item
products_description: Description
products_variant: Variant
products_quantity: Quantity
products_available: ''
products_available: Available?
products_producer: "Producer"
products_price: "Price"
register_title: Register
sell_title: "Register"
sell_headline: "Get on the Open Food Network!"
sell_motivation: "Showcase your beautiful food."
sell_producers: "Producers"
sell_hubs: "Hubs"
sell_groups: "Groups"
sell_producers_detail: "Set up a profile for your business on the OFN in just minutes. At any time you can upgrade your profile to an online store and sell your products direct to customers."
sell_hubs_detail: "Set up a profile for your food enterprise or organisation on the OFN. At any time you can upgrade your profile to a multi-producer shop."
sell_groups_detail: "Set up a tailored directory of enterprises (producers and other food enterprises) for your region or for your organisation."
sell_user_guide: "Find out more in our user guide."
sell_listing_price: "Listing on OFN is free. Opening and running a shop on OFN is free for six months and always free for small enterprises. We charge just 2% of sales for enterprises turning over more than £5000/year."
sell_embed: "We can also embed an OFN shop in your own customised website or build a customised local food network website for your region."
sell_ask_services: "Ask us about OFN services."
shops_title: Shops
shops_headline: Shopping, transformed.
shops_text: Food grows in cycles, farmers harvest in cycles, and we order food in cycles. If you find an order cycle closed, check back soon.
@@ -627,7 +544,6 @@ en_GB:
shops_signup_help: We're ready to help.
shops_signup_help_text: You need a better return. You need new buyers and logistics partners. You need your story told across wholesale, retail, and the kitchen table.
shops_signup_detail: Here's the detail.
orders_fees: Fees...
orders_edit_title: Shopping cart
orders_edit_headline: Your shopping cart
@@ -647,7 +563,6 @@ en_GB:
orders_show_title: Order Confirmation
orders_show_time: Order ready on
orders_show_number: Order confirmation
products_cart_distributor_choice: "Distributor for your order:"
products_cart_distributor_change: "Your distributor for this order will be changed to %{name} if you add this product to your cart."
products_cart_distributor_is: "Your distributor for this order is %{name}."
@@ -660,13 +575,9 @@ en_GB:
products_max_quantity: Max quantity
products_distributor: Distributor
products_distributor_info: When you select a distributor for your order, their address and pickup times will be displayed here.
shop_trial_length: ""
shop_trial_expires_in: ""
shop_trial_expired_notice: ""
# keys used in javascript
shop_trial_length: "Shop Trial Length (Days)"
shop_trial_expires_in: "Your shopfront trial expires in"
shop_trial_expired_notice: "OFN UK is a non-profit social enterprise making software affordable through open source collaboration. Thanks for being part of it!"
password: Password
remember_me: Remember Me
are_you_sure: "Are you sure?"
@@ -717,7 +628,6 @@ en_GB:
forgot_password: "Forgot password?"
password_reset_sent: "An email with instructions on resetting your password has been sent!"
reset_password: "Reset password"
registration_greeting: "Greetings!"
who_is_managing_enterprise: "Who is responsible for managing %{enterprise}?"
enterprise_contact: "Primary contact"
enterprise_contact_required: "You need to enter a primary contact."
@@ -827,7 +737,6 @@ en_GB:
bulk: "Bulk"
shop_variant_quantity_min: "min"
shop_variant_quantity_max: "max"
contact: "Contact"
follow: "Follow"
shop_for_products_html: "Shop for <span class=\"turquoise\">%{enterprise}</span> products at:"
change_shop: "Change shop to:"
@@ -840,10 +749,9 @@ en_GB:
fundraising_fee: "Fundraising fee"
price_graph: "Price graph"
included_tax: "Included tax"
remove_tax: "Remove tax"
balance: "Balance"
transaction: "Transaction"
transaction_date: "Date" #Transaction is only in key to avoid conflict with :date
transaction_date: "Date"
payment_state: "Payment status"
shipping_state: "Shipping status"
value: "Value"
@@ -885,14 +793,12 @@ en_GB:
supplier: "Supplier"
coordinator: "Coordinator"
distributor: "Distributor"
product: "Products"
enterprise_fees: "Enterprise Fees"
fee_type: "Fee Type"
tax_category: "Tax Category"
calculator: "Calculator"
calculator_values: "Calculator values"
new_order_cycles: "New Order Cycles"
select_a_coordinator_for_your_order_cycle: ""
select_a_coordinator_for_your_order_cycle: "Select a coordinator for your order cycle"
edit_order_cycle: "Edit Order Cycle"
roles: "Roles"
update: "Update"
@@ -936,7 +842,6 @@ en_GB:
spree_admin_enterprises_producers_total_products: "Total Products"
spree_admin_enterprises_producers_active_products: "Active Products"
spree_admin_enterprises_producers_order_cycles: "Products in OCs"
spree_admin_enterprises_producers_order_cycles_title: ""
spree_admin_enterprises_tabs_hubs: "HUBS"
spree_admin_enterprises_tabs_producers: "PRODUCERS"
spree_admin_enterprises_producers_manage_order_cycles: "MANAGE ORDER CYCLES"
@@ -982,7 +887,7 @@ en_GB:
hub_sidebar_blue: "blue"
hub_sidebar_red: "red"
shop_trial_in_progress: "Your shopfront trial expires in %{days}."
shop_trial_expired: "To view or change your current Open Food Network plan go to the Dashboard -> Change Package." #FIXME
shop_trial_expired: "To view or change your current Open Food Network plan go to the Dashboard -> Change Package."
report_customers_distributor: "Distributor"
report_customers_supplier: "Supplier"
report_customers_cycle: "Order Cycle"
@@ -1016,14 +921,12 @@ en_GB:
unsaved_changes_confirmation: "Unsaved changes will be lost. Continue anyway?"
one_product_unsaved: "Changes to one product remain unsaved."
products_unsaved: "Changes to %{n} products remain unsaved."
add_manager: "Add a manager"
is_already_manager: "is already a manager!"
no_change_to_save: "No change to save"
add_manager: "Add a manager"
users: "Users"
users: "Users"
about: "About"
images: "Images"
contact: "Contact"
web: "Web"
primary_details: "Primary Details"
adrdress: "Address"
@@ -1033,7 +936,7 @@ en_GB:
properties: "Properties"
shipping_methods: "Shipping Methods"
payment_methods: "Payment Methods"
payment_method_fee: ""
payment_method_fee: "Transaction fee"
enterprise_fees: "Enterprise Fees"
inventory_settings: "Inventory Settings"
tag_rules: "Tag Rules"
@@ -1043,7 +946,6 @@ en_GB:
validation_msg_product_category_cant_be_blank: "^Product Category cant be blank"
validation_msg_tax_category_cant_be_blank: "^Tax Category can't be blank"
validation_msg_is_associated_with_an_exising_customer: "is associated with an existing customer"
spree:
shipment_states:
backorder: backorder
@@ -1061,7 +963,7 @@ en_GB:
pending: pending
processing: processing
void: void
invalid: ''
invalid: invalid
order_state:
address: address
adjustments: adjustments

View File

@@ -196,11 +196,15 @@ en:
status: Status
manage: Manage
form:
primary_details:
shopfront_requires_login: "Shopfront requires login?"
shopfront_requires_login_tip: "Choose whether customers must login to view the shopfront."
shop_preferences:
shopfront_requires_login: "Publicly visible shopfront?"
shopfront_requires_login_tip: "Choose whether customers must login to view the shopfront or if it's visible to everybody."
shopfront_requires_login_false: "Public"
shopfront_requires_login_true: "Require customers to login"
shopfront_requires_login_true: "Visible to registered customers only"
allow_guest_orders: "Guest orders"
allow_guest_orders_tip: "Allow checkout as guest or require a registered user."
allow_guest_orders_false: "Require login to order"
allow_guest_orders_true: "Allow guest checkout"
home:
hubs:

View File

@@ -1,979 +0,0 @@
en_GB:
activerecord:
attributes:
spree/order:
payment_state: Payment State
shipment_state: Shipment State
devise:
failure:
invalid: |
Invalid email or password.
Were you a guest last time? Perhaps you need to create an account or reset your password.
enterprise_confirmations:
enterprise:
confirmed: Thankyou, your email address has been confirmed.
not_confirmed: Your email address could not be confirmed. Perhaps you have already completed this step?
confirmation_sent: "Confirmation email sent!"
confirmation_not_sent: "Could not send a confirmation email."
enterprise_mailer:
confirmation_instructions:
subject: "Please confirm the email address for %{enterprise}"
welcome:
subject: "%{enterprise} is now on %{sitename}"
title: Open Food Network
welcome_to: 'Welcome to '
site_meta_description: "We begin from the ground up. With farmers and growers ready to tell their stories proudly and truly. With distributors ready to connect people with products fairly and honestly. With buyers who believe that better weekly shopping decisions can seriously change the world."
search_by_name: Search by name...
producers: 'UK Producers'
producers_join: UK producers are now welcome to join Open Food Network UK.
charges_sales_tax: Charges VAT?
print_invoice: "Print Invoice"
send_invoice: "Send Invoice"
resend_confirmation: "Resend Confirmation"
view_order: "View Order"
edit_order: "Edit Order"
ship_order: "Ship Order"
cancel_order: "Cancel Order"
confirm_send_invoice: "An invoice for this order will be sent to the customer. Are you sure you want to continue?"
confirm_resend_order_confirmation: "Are you sure you want to resend the order confirmation email?"
must_have_valid_business_number: "Please enter your company number."
invoice: "Invoice"
percentage_of_sales: "%{percentage} of sales"
percentage_of_turnover: "Percentage of turnover"
monthly_cap_excl_tax: "monthly cap (excl. VAT)"
capped_at_cap: "capped at %{cap}"
per_month: "per month"
free: "free"
free_trial: "free trial"
plus_tax: "plus VAT"
total_monthly_bill_incl_tax: "Total Monthly Bill (Incl. VAT)"
min_bill_turnover_desc: "once turnover exceeds %{mbt_amount}"
business_model_configuration: "Business model configuration"
say_no: "No"
say_yes: "Yes"
then: then
sort_order_cycles_on_shopfront_by: "Sort Order Cycles On Shopfront By"
admin:
date: Date
email: Email
name: Name
on_hand: In Stock
on_demand: On Demand
on_demand?: On Demand?
order_cycle: Order Cycle
phone: Phone
price: Price
producer: Producer
product: Product
quantity: Quantity
shop: Shop
sku: SKU
tags: Tags
variant: Variant
quick_search: Quick Search
clear_all: Clear All
start_date: "Start Date"
end_date: "End Date"
columns: Columns
actions: Actions
viewing: "Viewing: %{current_view_name}"
whats_this: What's this?
tag_has_rules: "Existing rules for this tag: %{num}"
has_one_rule: "has one rule"
has_n_rules: "has %{num} rules"
customers:
index:
add_customer: "Add Customer"
new_customer: "New Customer"
customer_placeholder: "customer@example.org"
valid_email_error: Please enter a valid email address
add_a_new_customer_for: Add a new customer for %{shop_name}
code: Code
duplicate_code: "This code is used already."
products:
bulk_edit:
unit: Unit
display_as: Display As
category: Category
tax_category: Tax Category
inherits_properties?: Inherits Properties?
available_on: Available On
av_on: "Av. On"
variant_overrides:
index:
title: Inventory
description: Use this page to manage inventories for your enterprises. Any product details set here will override those set on the 'Products' page
enable_reset?: Enable Stock Reset?
inherit?: Inherit?
add: Add
hide: Hide
select_a_shop: Select A Shop
review_now: Review Now
new_products_alert_message: There are %{new_product_count} new products available to add to your inventory.
currently_empty: Your inventory is currently empty
no_matching_products: No matching products found in your inventory
no_hidden_products: No products have been hidden from this inventory
no_matching_hidden_products: No hidden products match your search criteria
no_new_products: No new products are available to add to this inventory
no_matching_new_products: No new products match your search criteria
inventory_powertip: This is your inventory of products. To add products to your inventory, select 'New Products' from the Viewing dropdown.
hidden_powertip: These products have been hidden from your inventory and will not be available to add to your shop. You can click 'Add' to add a product to you inventory.
new_powertip: These products are available to be added to your inventory. Click 'Add' to add a product to your inventory, or 'Hide' to hide it from view. You can always change your mind later!
orders:
bulk_management:
tip: "Use this page to alter product quantities across multiple orders. Products may also be removed from orders entirely, if required."
shared: "Shared Resource?"
order_no: "Order No."
order_date: "Order Date"
max: "Max"
product_unit: "Product: Unit"
weight_volume: "Weight/Volume"
ask: "Ask?"
page_title: "Bulk Order Management"
actions_delete: "Delete Selected"
loading: "Loading orders"
no_results: "No orders found."
group_buy_unit_size: "Group Buy Unit Size"
total_qtt_ordered: "Total Quantity Ordered"
max_qtt_ordered: "Max Quantity Ordered"
current_fulfilled_units: "Current Fulfilled Units"
max_fulfilled_units: "Max Fulfilled Units"
order_error: "Some errors must be resolved before you can update orders.\nAny fields with red borders contain errors."
variants_without_unit_value: "WARNING: Some variants do not have a unit value"
order_cycles:
edit:
choose_products_from: "Choose Products From:"
enterprise:
select_outgoing_oc_products_from: Select outgoing OC products from
enterprises:
index:
producer?: Producer?
package: Package
status: Status
manage: Manage
form:
primary_details:
shopfront_requires_login: "Shopfront requires login?"
shopfront_requires_login_tip: "Choose whether customers must login to view the shopfront."
shopfront_requires_login_false: "Public"
shopfront_requires_login_true: "Require customers to login"
home:
hubs:
show_closed_shops: "Show closed shops"
hide_closed_shops: "Hide closed shops"
show_on_map: "Show all on the map"
shared:
register_call:
selling_on_ofn: "Interested in selling through the Open Food Network?"
register: "Register here"
shop:
messages:
login: "login"
register: "register"
contact: "contact"
require_customer_login: "This shop is for customers only."
require_login_html: "Please %{login} if you have an account already. Otherwise, %{register} to become a customer."
require_customer_html: "Please %{contact} %{enterprise} to become a customer."
invoice_column_item: "Item"
invoice_column_qty: "Qty"
invoice_column_tax: "VAT"
invoice_column_price: "Price"
logo: "Logo (640x130)"
logo_mobile: "Mobile logo (75x26)"
logo_mobile_svg: "Mobile logo (SVG)"
home_hero: "Hero image"
home_show_stats: "Show statistics"
footer_logo: "Logo (220x76)"
footer_facebook_url: "Facebook URL"
footer_twitter_url: "Twitter URL"
footer_instagram_url: "Instagram URL"
footer_linkedin_url: "LinkedIn URL"
footer_googleplus_url: "Google Plus URL"
footer_pinterest_url: "Pinterest URL"
footer_email: "Email"
footer_links_md: "Links"
footer_about_url: "About URL"
footer_tos_url: "Terms of Service URL"
name: Name
first_name: First Name
last_name: Last Name
email: Email
phone: Phone
next: Next
address: Address
address2: Address (contd.)
city: City
state: County
postcode: Postcode
country: Country
unauthorized: Unauthorized
terms_of_service: "Terms of service"
on_demand: To Order
none: None
label_shops: "Shops"
label_map: "Map"
label_producers: "Producers"
label_groups: "Groups"
label_about: "About"
label_connect: "Connect"
label_learn: "Learn"
label_shopping: "Shopping"
label_login: "Login"
label_logout: "Logout"
label_signup: "Sign up"
label_administration: "Administration"
label_admin: "Admin"
label_account: "Account"
label_more: "Show more"
label_less: "Show less"
label_notices: "Community Forum"
items: "items"
cart_headline: "Your shopping cart"
total: "Total"
checkout: "Checkout now"
cart_updating: "Updating cart..."
cart_empty: "Cart empty"
cart_edit: "Edit your cart"
card_number: Card Number
card_securitycode: "Security Code"
card_expiry_date: Expiry Date
ofn_cart_headline: "Current cart for:"
ofn_cart_distributor: "Distributor:"
ofn_cart_oc: "Order cycle:"
ofn_cart_from: "From:"
ofn_cart_to: "To:"
ofn_cart_product: "Product:"
ofn_cart_quantitiy: "Quantity:"
ofn_cart_send: "Buy me"
ie_warning_headline: "Your browser is out of date :-("
ie_warning_text: "For the best Open Food Network experience, we strongly recommend upgrading your browser:"
ie_warning_chrome: Download Chrome
ie_warning_firefox: Download Firefox
ie_warning_ie: Upgrade Internet Explorer
ie_warning_other: "Can't upgrade your browser? Try Open Food Network on your smartphone :-)"
footer_global_headline: "OFN Global"
footer_global_home: "Home"
footer_global_news: "News"
footer_global_about: "About"
footer_global_contact: "Contact"
footer_sites_headline: "OFN Sites"
footer_sites_developer: "Developer"
footer_sites_community: "Community"
footer_sites_userguide: "User Guide"
footer_secure: "Secure and trusted."
footer_secure_text: "Open Food Network uses SSL encryption (2048 bit RSA) everywhere to keep your shopping and payment information private. Our servers do not store your credit card details and payments are processed by PCI-compliant services."
footer_contact_headline: "Keep in touch"
footer_contact_email: "Email us"
footer_nav_headline: "Navigate"
footer_join_headline: "Join us"
footer_join_body: "Create a listing, shop or group directory on the Open Food Network."
footer_join_cta: "Tell me more!"
footer_legal_call: "Read our"
footer_legal_tos: "Terms and conditions"
footer_legal_visit: "Find us on"
footer_legal_text_html: "Open Food Network is a free and open source software platform. Our content is licensed with %{content_license} and our code with %{code_license}."
home_shop: Shop Now
brandstory_headline: "Food, unincorporated."
brandstory_intro: "Sometimes the best way to fix the system is to start a new one…"
brandstory_part1: "We begin from the ground up. With farmers and growers ready to tell their stories proudly and truly. With distributors ready to connect people with products fairly and honestly. With buyers who believe that better weekly shopping decisions can seriously change the world."
brandstory_part2: "Then we need a way to make it real. A way to empower everyone who grows, sells and buys food. A way to tell all the stories, to handle all the logistics. A way to turn transaction into transformation every day."
brandstory_part3: "So we build an online marketplace that levels the playing field. Its transparent, so it creates real relationships. Its open source, so its owned by everyone. It scales to regions and nations, so people start versions across the world."
brandstory_part4: "It works everywhere. It changes everything."
brandstory_part5_strong: "We call it Open Food Network."
brandstory_part6: "We all love food. Now we can love our food system too."
learn_body: "Explore models, stories and resources to support you to develop your fair food business or organisation. Find training, events and other opportunities to learn from peers."
learn_cta: "Get Inspired"
connect_body: "Search our full directories of producers, hubs and groups to find fair food traders near you. List your business or organisation on the OFN so buyers can find you. Join the community to get advice and solve problems together."
connect_cta: "Go Exploring"
system_headline: "Shopping - here's how it works."
system_step1: "1. Search"
system_step1_text: "Search our diverse, independent shops for seasonal local food. Search by neighbourhood and food category, or whether you prefer delivery or pickup."
system_step2: "2. Shop"
system_step2_text: "Transform your transactions with affordable local food from diverse producers and hubs. Know the stories behind your food and the people who make it!"
system_step3: "3. Pick-up / Delivery"
system_step3_text: "Hang on for your delivery, or visit your producer or hub for a more personal connection with your food. Food shopping as diverse as nature intended it."
cta_headline: "Shopping that makes the world a better place."
cta_label: "I'm Ready"
stats_headline: "We're creating a new food system."
stats_producers: "food producers"
stats_shops: "food shops"
stats_shoppers: "food shoppers"
stats_orders: "food orders"
checkout_title: Checkout
checkout_now: Checkout now
checkout_order_ready: Order ready for
checkout_hide: Hide
checkout_expand: Expand
checkout_headline: "Ok, ready to checkout?"
checkout_as_guest: "Checkout as guest"
checkout_details: "Your details"
checkout_billing: "Billing info"
checkout_shipping: Shipping info
checkout_method_free: Free
checkout_address_same: Shipping address same as billing address?
checkout_ready_for: "Ready for:"
checkout_instructions: "Any comments or special instructions?"
checkout_payment: Payment
checkout_send: Place order now
checkout_your_order: Your order
checkout_cart_total: Cart total
checkout_shipping_price: Shipping
checkout_total_price: Total
checkout_back_to_cart: "Back to cart"
order_paid: PAID
order_not_paid: NOT PAID
order_total: Total order
order_payment: "Paying via:"
order_billing_address: Billing address
order_delivery_on: Delivery on
order_delivery_address: Delivery address
order_special_instructions: "Your notes:"
order_pickup_time: Ready for collection
order_pickup_instructions: Collection instructions
order_produce: Produce
order_total_price: Total
order_includes_tax: (includes tax)
order_payment_paypal_successful: Your payment via PayPal has been processed successfully.
order_hub_info: Hub info
unsaved_changes_warning: "Unsaved changes exist and will be lost if you continue."
unsaved_changes_error: "Fields with red borders contain errors."
products: "Products"
products_in: "in %{oc}"
products_at: "at %{distributor}"
products_elsewhere: "Products found elsewhere"
email_welcome: "Welcome"
email_confirmed: "Thank you for confirming your email address."
email_registered: "is now part of"
email_userguide_html: "The User Guide with detailed support for setting up your Producer or Hub is here: %{link}"
email_admin_html: "You can manage your account by logging into the %{link} or by clicking on the cog in the top right hand side of the homepage, and selecting Administration."
email_community_html: "We also have an online forum for community discussion related to OFN software and the unique challenges of running a food enterprise. You are encouraged to join in. We are constantly evolving and your input into this forum will shape what happens next. %{link}"
email_help: "If you have any difficulties, check out our FAQs, browse the forum or post a 'Support' topic and someone will help you out!"
email_confirmation_greeting: "Hi, %{contact}!"
email_confirmation_profile_created: "A profile for %{name} has been successfully created! To activate your Profile we need to confirm this email address."
email_confirmation_click_link: "Please click the link below to confirm your email and to continue setting up your profile."
email_confirmation_link_label: "Confirm this email address »"
email_confirmation_help_html: "After confirming your email you can access your administration account for this enterprise. See the %{link} to find out more about %{sitename}'s features and to start using your profile or online store."
email_confirmation_userguide: "User Guide"
email_social: "Connect with Us:"
email_contact: "Email us:"
email_signoff: "Cheers,"
email_signature: "%{sitename} Team"
email_confirm_customer_greeting: "Hi %{name},"
email_confirm_customer_intro_html: "Thanks for shopping at <strong>%{distributor}</strong>!"
email_confirm_customer_number_html: "Order confirmation <strong>#%{number}</strong>"
email_confirm_customer_details_html: "Here are your order details from <strong>%{distributor}</strong>:"
email_confirm_customer_signoff: "Kind regards,"
email_confirm_shop_greeting: "Hi %{name},"
email_confirm_shop_order_html: "Well done! You have a new order for <strong>%{distributor}</strong>!"
email_confirm_shop_number_html: "Order confirmation <strong>#%{number}</strong>"
email_order_summary_item: "Item"
email_order_summary_quantity: "Qty"
email_order_summary_price: "Price"
email_order_summary_subtotal: "Subtotal:"
email_order_summary_total: "Total:"
email_payment_paid: PAID
email_payment_not_paid: NOT PAID
email_payment_summary: Payment summary
email_payment_method: "Paying via:"
email_shipping_delivery_details: Delivery details
email_shipping_delivery_time: "Delivery on:"
email_shipping_delivery_address: "Delivery address:"
email_shipping_collection_details: Collection details
email_shipping_collection_time: "Ready for collection:"
email_shipping_collection_instructions: "Collection instructions:"
email_special_instructions: "Your notes:"
email_signup_greeting: Hello!
email_signup_welcome: "Welcome to %{sitename}!"
email_signup_login: Your login
email_signup_email: Your login email is
email_signup_shop_html: "You can start shopping online now at %{link}."
email_signup_text: "Thanks for joining the network. If you are a customer, we look forward to introducing you to many fantastic farmers, wonderful food hubs and delicious food! If you are a producer or food enterprise, we are excited to have you as a part of the network."
email_signup_help_html: "We welcome all your questions and feedback; you can use the <em>Send Feedback</em> button on the site or email us at"
producer_mail_greeting: "Dear"
producer_mail_text_before: "We now have all the consumer orders for the next food delivery."
producer_mail_order_text: "Here is a summary of the orders for your products:"
producer_mail_delivery_instructions: "Stock pickup/delivery instructions:"
producer_mail_signoff: "Thanks and best wishes"
shopping_oc_closed: Orders are closed
shopping_oc_closed_description: "Please wait until the next cycle opens (or contact us directly to see if we can accept any late orders)"
shopping_oc_last_closed: "The last cycle closed %{distance_of_time} ago"
shopping_oc_next_open: "The next cycle opens in %{distance_of_time}"
shopping_tabs_about: "About %{distributor}"
shopping_tabs_contact: "Contact"
shopping_contact_address: "Address"
shopping_contact_web: "Contact"
shopping_contact_social: "Follow"
shopping_groups_part_of: "is part of:"
shopping_producers_of_hub: "%{hub}'s producers:"
enterprises_next_closing: "Next order closing"
enterprises_ready_for: "Ready for"
enterprises_choose: "Choose when you want your order:"
hubs_buy: "Shop for:"
hubs_shopping_here: "Shopping here"
hubs_orders_closed: "Orders closed"
hubs_profile_only: "Profile only"
hubs_delivery_options: "Delivery options"
hubs_pickup: "Pickup"
hubs_delivery: "Delivery"
hubs_producers: "Our producers"
hubs_filter_by: "Filter by"
hubs_filter_type: "Type"
hubs_filter_delivery: "Delivery"
hubs_matches: "Did you mean?"
hubs_intro: Shop in your local area
hubs_distance: Closest to
hubs_distance_filter: "Show me shops near %{location}"
products_clear_all: Clear all
products_showing: "Showing:"
products_with: with
products_search: "Search by product or producer"
products_loading: "Loading products..."
products_updating_cart: "Updating cart..."
products_cart_empty: "Cart empty"
products_edit_cart: "Edit your cart"
products_from: from
products_change: "No changes to save."
products_update_error: "Saving failed with the following error(s):"
products_update_error_msg: "Saving failed."
products_update_error_data: "Save failed due to invalid data:"
products_changes_saved: "Changes saved."
search_no_results_html: "Sorry, no results found for %{query}. Try another search?"
components_profiles_popover: "Profiles do not have a shopfront on the Open Food Network, but may have their own physical or online shop elsewhere"
components_profiles_show: "Show profiles"
components_filters_nofilters: "No filters"
components_filters_clearfilters: "Clear all filters"
groups_title: Groups
groups_headline: Groups / regions
groups_text: "Every producer is unique. Every business has something different to offer. Our groups are collectives of producers, hubs and distributors who share something in common like location, farmers market or philosophy. This makes your shopping experience easier. So explore our groups and have the curating done for you."
groups_search: "Search name or keyword"
groups_no_groups: "No groups found"
groups_about: "About Us"
groups_producers: "Our producers"
groups_hubs: "Our hubs"
groups_contact_web: Contact
groups_contact_social: Follow
groups_contact_address: Address
groups_contact_email: Email us
groups_contact_website: Visit our website
groups_contact_facebook: Follow us on Facebook
groups_signup_title: Sign up as a group
groups_signup_headline: Groups sign up
groups_signup_intro: "We're an amazing platform for collaborative marketing, the easiest way for your members and stakeholders to reach new markets. We're non-profit, affordable, and simple."
groups_signup_email: Email us
groups_signup_motivation1: We transform food systems fairly.
groups_signup_motivation2: It's why we get out of bed every day. We're a global non-profit, based on open source code. We play fair. You can always trust us.
groups_signup_motivation3: We know you have big ideas, and we want to help. We'll share our knowledge, networks and resources. We know that isolation doesn't create change, so we'll partner with you.
groups_signup_motivation4: We meet you where you are.
groups_signup_motivation5: You might be an alliance of food hubs, producers, or distributors, and an industry body, or a local government.
groups_signup_motivation6: Whatever your role in your local food movement, we're ready to help. However you come to wonder what Open Food Network would look like or is doing in your part of the world, let's start the conversation.
groups_signup_motivation7: We make food movements make more sense.
groups_signup_motivation8: You need to activate and enable your networks, we offer a platform for conversation and action. You need real engagement. Well help reach all the players, all the stakeholders, all the sectors.
groups_signup_motivation9: You need resourcing. Well bring all our experience to bear. You need cooperation. Well better connect you to a global network of peers.
groups_signup_pricing: Group Account
groups_signup_studies: Case Studies
groups_signup_contact: Ready to discuss?
groups_signup_contact_text: "Get in touch to discover what OFN can do for you:"
groups_signup_detail: "Here's the detail."
login_invalid: "Invalid email or password"
modal_hubs: "Food Hubs"
modal_hubs_abstract: Our food hubs are the point of contact between you and the people who make your food!
modal_hubs_content1: You can search for a convenient hub by location or name. Some hubs have multiple points where you can pick-up your purchases, and some will also provide delivery options. Each food hub is a sales point with independent business operations and logistics - so variations between hubs are to be expected.
modal_hubs_content2: You can only shop at one food hub at a time.
modal_groups: "Groups / Regions"
modal_groups_content1: These are the organisations and relationships between hubs which make up the Open Food Network.
modal_groups_content2: Some groups are clustered by location or council, others by non-geographic similarities.
modal_how: "How it works"
modal_how_shop: Shop the Open Food Network
modal_how_shop_explained: Search for a food hub near you to start shopping! You can expand each food hub to see what kinds of goodies are available, and click through to start shopping. (You can only shop one food hub at a time.)
modal_how_pickup: Pick-ups, delivery and shipping costs
modal_how_pickup_explained: Some food hubs deliver to your door, while others require you to pick-up your purchases. You can see which options are available on the homepage, and select which you'd like at the shopping and check-out pages. Delivery will cost more, and pricing differs from hub-to-hub. Each food hub is a sales point with independent business operations and logisitics - so variations between hubs are to be expected.
modal_how_more: Learn more
modal_how_more_explained: "If you want to learn more about the Open Food Network, how it works, and get involved, check out:"
modal_producers: "Producers"
modal_producers_explained: "Our producers make all the delicious food you can shop for on the Open Food Network."
producers_about: About us
producers_buy: Shop for
producers_contact: Contact
producers_contact_phone: Call
producers_contact_social: Follow
producers_buy_at_html: "Shop for %{enterprise} products at:"
producers_filter: Filter by
producers_filter_type: Type
producers_filter_property: Property
producers_title: Producers
producers_headline: Find local producers
producers_signup_title: Sign up as a producer
producers_signup_headline: Food producers, empowered.
producers_signup_motivation: Sell your food and tell your stories to diverse new markets. Save time and money on every overhead. We support innovation without the risk. We've levelled the playing field.
producers_signup_send: Join now
producers_signup_enterprise: Enterprise Accounts
producers_signup_studies: Stories from our producers.
producers_signup_cta_headline: Join now!
producers_signup_cta_action: Join now
producers_signup_detail: Here's the detail.
products_item: Item
products_description: Description
products_variant: Variant
products_quantity: Quantity
products_available: Available?
products_producer: "Producer"
products_price: "Price"
register_title: Register
sell_title: "Register"
sell_headline: "Get on the Open Food Network!"
sell_motivation: "Showcase your beautiful food."
sell_producers: "Producers"
sell_hubs: "Hubs"
sell_groups: "Groups"
sell_producers_detail: "Set up a profile for your business on the OFN in just minutes. At any time you can upgrade your profile to an online store and sell your products direct to customers."
sell_hubs_detail: "Set up a profile for your food enterprise or organisation on the OFN. At any time you can upgrade your profile to a multi-producer shop."
sell_groups_detail: "Set up a tailored directory of enterprises (producers and other food enterprises) for your region or for your organisation."
sell_user_guide: "Find out more in our user guide."
sell_listing_price: "Listing on OFN is free. Opening and running a shop on OFN is free for six months and always free for small enterprises. We charge just 2% of sales for enterprises turning over more than £5000/year."
sell_embed: "We can also embed an OFN shop in your own customised website or build a customised local food network website for your region."
sell_ask_services: "Ask us about OFN services."
shops_title: Shops
shops_headline: Shopping, transformed.
shops_text: Food grows in cycles, farmers harvest in cycles, and we order food in cycles. If you find an order cycle closed, check back soon.
shops_signup_title: Sign up as a hub
shops_signup_headline: Food hubs, unlimited.
shops_signup_motivation: Whatever your model, we support you. However you change, we're with you. We're non-profit, independent, and open-sourced. We're the software partners you've dreamed of.
shops_signup_action: Join now
shops_signup_pricing: Enterprise Accounts
shops_signup_stories: Stories from our hubs.
shops_signup_help: We're ready to help.
shops_signup_help_text: You need a better return. You need new buyers and logistics partners. You need your story told across wholesale, retail, and the kitchen table.
shops_signup_detail: Here's the detail.
orders_fees: Fees...
orders_edit_title: Shopping cart
orders_edit_headline: Your shopping cart
orders_edit_time: Order ready for
orders_edit_continue: Continue shopping
orders_edit_checkout: Checkout
orders_form_empty_cart: "Empty cart"
orders_form_subtotal: Produce subtotal
orders_form_admin: Admin and handling
orders_form_total: Total
orders_oc_expired_headline: Orders have closed for this order cycle
orders_oc_expired_text: "Sorry, orders for this order cycle closed %{time} ago! Please contact your hub directly to see if they can accept late orders."
orders_oc_expired_text_others_html: "Sorry, orders for this order cycle closed %{time} ago! Please contact your hub directly to see if they can accept late orders <strong>%{link}</strong>."
orders_oc_expired_text_link: "or see the other order cycles available at this hub"
orders_oc_expired_email: "Email:"
orders_oc_expired_phone: "Phone:"
orders_show_title: Order Confirmation
orders_show_time: Order ready on
orders_show_number: Order confirmation
products_cart_distributor_choice: "Distributor for your order:"
products_cart_distributor_change: "Your distributor for this order will be changed to %{name} if you add this product to your cart."
products_cart_distributor_is: "Your distributor for this order is %{name}."
products_distributor_error: "Please complete your order at %{link} before shopping with another distributor."
products_oc: "Order cycle for your order:"
products_oc_change: "Your order cycle for this order will be changed to %{name} if you add this product to your cart."
products_oc_is: "Your order cycle for this order is %{name}."
products_oc_error: "Please complete your order from %{link} before shopping in a different order cycle."
products_oc_current: "your current order cycle"
products_max_quantity: Max quantity
products_distributor: Distributor
products_distributor_info: When you select a distributor for your order, their address and pickup times will be displayed here.
shop_trial_length: "Shop Trial Length (Days)"
shop_trial_expires_in: "Your shopfront trial expires in"
shop_trial_expired_notice: "OFN UK is a non-profit social enterprise making software affordable through open source collaboration. Thanks for being part of it!"
password: Password
remember_me: Remember Me
are_you_sure: "Are you sure?"
orders_open: Orders open
closing: "Closing "
going_back_to_home_page: "Taking you back to the home page"
creating: Creating
updating: Updating
failed_to_create_enterprise: "Failed to create your enterprise."
failed_to_create_enterprise_unknown: "Failed to create your enterprise.\nPlease ensure all fields are completely filled out."
failed_to_update_enterprise_unknown: "Failed to update your enterprise.\nPlease ensure all fields are completely filled out."
order_not_saved_yet: "Your order hasn't been saved yet. Give us a few seconds to finish!"
filter_by: "Filter by"
hide_filters: "Hide filters"
one_filter_applied: "1 filter applied"
x_filters_applied: " filters applied"
submitting_order: "Submitting your order: please wait"
confirm_hub_change: "Are you sure? This will change your selected hub and remove any items in your shopping cart."
confirm_oc_change: "Are you sure? This will change your selected order cycle and remove any items in your shopping cart."
location_placeholder: "Type in a location..."
error_required: "can't be blank"
error_number: "must be number"
error_email: "must be email address"
item_handling_fees: "Item Handling Fees (included in item totals)"
january: "January"
february: "February"
march: "March"
april: "April"
may: "May"
june: "June"
july: "July"
august: "August"
september: "September"
october: "October"
november: "November"
december: "December"
email_not_found: "Email address not found"
email_required: "You must provide an email address"
logging_in: "Hold on a moment, we're logging you in"
signup_email: "Your email"
choose_password: "Choose a password"
confirm_password: "Confirm password"
action_signup: "Sign up now"
welcome_to_ofn: "Welcome to the Open Food Network!"
signup_or_login: "Start By signing up (or logging in)"
have_an_account: "Already have an account?"
action_login: "Log in now."
forgot_password: "Forgot password?"
password_reset_sent: "An email with instructions on resetting your password has been sent!"
reset_password: "Reset password"
who_is_managing_enterprise: "Who is responsible for managing %{enterprise}?"
enterprise_contact: "Primary contact"
enterprise_contact_required: "You need to enter a primary contact."
enterprise_email_address: "Email address"
enterprise_phone: "Phone number"
back: "Back"
continue: "Continue"
limit_reached_headline: "Oh no!"
limit_reached_message: "You have reached the limit!"
limit_reached_text: "You have reached the limit for the number of enterprises you are allowed to own on the"
limit_reached_action: "Return to the homepage"
select_promo_image: "Step 3. Select promo image"
promo_image_tip: "Tip: Shown as a banner, preferred size is 1200×260px"
promo_image_label: "Choose a promo image"
action_or: "OR"
promo_image_drag: "Drag and drop your promo here"
review_promo_image: "Step 4. Review your promo banner"
review_promo_image_tip: "Tip: for best results, your promo image should fill the available space"
promo_image_placeholder: "Your logo will appear here for review once uploaded"
uploading: "Uploading..."
select_logo: "Step 1. Select logo image"
logo_tip: "Tip: Square images will work best, preferably at least 300×300px"
logo_label: "Choose a logo image"
logo_drag: "Drag and drop your logo here"
review_logo: "Step 2. Review your logo"
review_logo_tip: "Tip: for best results, your logo should fill the available space"
logo_placeholder: "Your logo will appear here for review once uploaded"
enterprise_about_headline: "Nice one!"
enterprise_about_message: "Now let's flesh out the details about"
enterprise_success: "Success! %{enterprise} added to the Open Food Network "
enterprise_registration_exit_message: "If you exit this wizard at any stage, you need to click the confirmation link in the email you have received. This will take you to your admin interface where you can continue setting up your profile."
enterprise_description: "Short Description"
enterprise_description_placeholder: "A short sentence describing your enterprise"
enterprise_long_desc: "Long Description"
enterprise_long_desc_placeholder: "This is your opportunity to tell the story of your enterprise - what makes you different and wonderful? We'd suggest keeping your description to under 600 characters or 150 words."
enterprise_long_desc_length: "%{num} characters / up to 600 recommended"
enterprise_abn: "ABN"
enterprise_abn_placeholder: "eg. 99 123 456 789"
enterprise_acn: "ACN"
enterprise_acn_placeholder: "eg. 123 456 789"
enterprise_tax_required: "You need to make a selection."
enterprise_final_step: "Final step!"
enterprise_social_text: "How can people find %{enterprise} online?"
website: "Website"
website_placeholder: "eg. openfoodnetwork.org.au"
facebook: "Facebook"
facebook_placeholder: "eg. www.facebook.com/PageNameHere"
linkedin: "LinkedIn"
linkedin_placeholder: "eg. www.linkedin.com/YourNameHere"
twitter: "Twitter"
twitter_placeholder: "eg. @twitter_handle"
instagram: "Instagram"
instagram_placeholder: "eg. @instagram_handle"
registration_greeting: "Hi there!"
registration_intro: "You can now create a profile for your Producer or Hub"
registration_action: "Let's get started!"
registration_checklist: "You'll need"
registration_time: "5-10 minutes"
registration_enterprise_address: "Enterprise address"
registration_contact_details: "Primary contact details"
registration_logo: "Your logo image"
registration_promo_image: "Landscape image for your profile"
registration_about_us: "'About Us' text"
registration_outcome_headline: "What do I get?"
registration_outcome1_html: "Your profile helps people <strong>find</strong> and <strong>contact</strong> you on the Open Food Network."
registration_outcome2: "Use this space to tell the story of your enterprise, to help drive connections to your social and online presence. "
registration_outcome3: "It's also the first step towards trading on the Open Food Network, or opening an online store."
registration_finished_headline: "Finished!"
registration_finished_thanks: "Thanks for filling out the details for %{enterprise}."
registration_finished_login: "You can change or update your enterprise at any stage by logging into Open Food Network and going to Admin."
registration_finished_activate: "Activate %{enterprise}."
registration_finished_activate_instruction_html: "We've sent a confirmation email to <strong>%{email}</strong> if it hasn't been activated before.<br/> Please follow the instructions there to make your enterprise visible on the Open Food Network."
registration_finished_action: "Open Food Network home"
registration_type_headline: "Last step to add %{enterprise}!"
registration_type_question: "Are you a producer?"
registration_type_producer: "Yes, I'm a producer"
registration_type_no_producer: "No, I'm not a producer"
registration_type_error: "Please choose one. Are you are producer?"
registration_type_producer_help: "Producers make yummy things to eat and/or drink. You're a producer if you grow it, raise it, brew it, bake it, ferment it, milk it or mould it."
registration_type_no_producer_help: "If youre not a producer, youre probably someone who sells and distributes food. You might be a hub, coop, buying group, retailer, wholesaler or other."
create_profile: "Create profile"
registration_images_headline: "Thanks!"
registration_images_description: "Let's upload some pretty pictures so your profile looks great! :)"
registration_detail_headline: "Let's get started"
registration_detail_enterprise: "Woot! First we need to know a little bit about your enterprise:"
registration_detail_producer: "Woot! First we need to know a little bit about your farm:"
registration_detail_name_enterprise: "Enterprise name:"
registration_detail_name_producer: "Farm name:"
registration_detail_name_placeholder: "e.g. Charlie's Awesome Farm"
registration_detail_name_error: "Please choose a unique name for your enterprise"
registration_detail_address1: "Address line 1:"
registration_detail_address1_placeholder: "e.g. 123 Cranberry Drive"
registration_detail_address1_error: "Please enter an address"
registration_detail_address2: "Address line 2:"
registration_detail_suburb: "Suburb:"
registration_detail_suburb_placeholder: "e.g. Northcote"
registration_detail_suburb_error: "Please enter a suburb"
registration_detail_postcode: "Postcode:"
registration_detail_postcode_placeholder: "e.g. 3070"
registration_detail_postcode_error: "Postcode required"
registration_detail_state: "State:"
registration_detail_state_error: "State required"
registration_detail_country: "Country:"
registration_detail_country_error: "Please select a country"
fees: "Fees"
item_cost: "Item cost"
bulk: "Bulk"
shop_variant_quantity_min: "min"
shop_variant_quantity_max: "max"
follow: "Follow"
shop_for_products_html: "Shop for <span class=\"turquoise\">%{enterprise}</span> products at:"
change_shop: "Change shop to:"
shop_at: "Shop now at:"
price_breakdown: "Full price breakdown"
admin_fee: "Admin fee"
sales_fee: "Sales fee"
packing_fee: "Packing fee"
transport_fee: "Transport fee"
fundraising_fee: "Fundraising fee"
price_graph: "Price graph"
included_tax: "Included tax"
balance: "Balance"
transaction: "Transaction"
transaction_date: "Date"
payment_state: "Payment status"
shipping_state: "Shipping status"
value: "Value"
balance_due: "Balance due"
credit: "Credit"
Paid: "Paid"
Ready: "Ready"
you_have_no_orders_yet: "You have no orders yet"
running_balance: "Running balance"
outstanding_balance: "Outstanding balance"
admin_entreprise_relationships: "Enterprise Relationships"
admin_entreprise_relationships_everything: "Everything"
admin_entreprise_relationships_permits: "permits"
admin_entreprise_relationships_seach_placeholder: "Search"
admin_entreprise_relationships_button_create: "Create"
admin_entreprise_groups: "Enterprise Groups"
admin_entreprise_groups_name: "Name"
admin_entreprise_groups_owner: "Owner"
admin_entreprise_groups_on_front_page: "On front page?"
admin_entreprise_groups_entreprise: "Enterprises"
admin_entreprise_groups_data_powertip: "The primary user responsible for this group."
admin_entreprise_groups_data_powertip_logo: "This is the logo for the group"
admin_entreprise_groups_data_powertip_promo_image: "This image is displayed at the top of the Group profile"
admin_entreprise_groups_contact: "Contact"
admin_entreprise_groups_contact_phone_placeholder: "eg. 98 7654 3210"
admin_entreprise_groups_contact_address1_placeholder: "eg. 123 High Street"
admin_entreprise_groups_contact_city: "Suburb"
admin_entreprise_groups_contact_city_placeholder: "eg. Camden"
admin_entreprise_groups_contact_zipcode: "Postcode"
admin_entreprise_groups_contact_zipcode_placeholder: "eg. NW1 0AA"
admin_entreprise_groups_contact_state_id: "County"
admin_entreprise_groups_contact_country_id: "Country"
admin_entreprise_groups_web: "Web Resources"
admin_entreprise_groups_web_twitter: "eg. @openfoodnetuk"
admin_entreprise_groups_web_website_placeholder: "eg. www.truffles.co.uk"
admin_order_cycles: "Admin Order Cycles"
open: "Open"
close: "Close"
supplier: "Supplier"
coordinator: "Coordinator"
distributor: "Distributor"
fee_type: "Fee Type"
tax_category: "Tax Category"
calculator: "Calculator"
calculator_values: "Calculator values"
new_order_cycles: "New Order Cycles"
select_a_coordinator_for_your_order_cycle: "Select a coordinator for your order cycle"
edit_order_cycle: "Edit Order Cycle"
roles: "Roles"
update: "Update"
add_producer_property: "Add producer property"
admin_settings: "Settings"
update_invoice: "Update Invoices"
finalise_invoice: "Finalise Invoices"
finalise_user_invoices: "Finalise User Invoices"
finalise_user_invoice_explained: "Use this button to finalise all invoices in the system for the previous calendar month. This task can be set up to run automatically once a month."
manually_run_task: "Manually Run Task"
update_user_invoices: "Update User Invoices"
update_user_invoice_explained: "Use this button to immediately update invoices for the month to date for each enterprise user in the system. This task can be set up to run automatically every night."
auto_finalise_invoices: "Auto-finalise invoices monthly on the 2nd at 1:30am"
auto_update_invoices: "Auto-update invoices nightly at 1:00am"
in_progress: "In Progress"
started_at: "Started at"
queued: "Queued"
scheduled_for: "Scheduled for"
customers: "Customers"
please_select_hub: "Please select a Hub"
loading_customers: "Loading Customers"
no_customers_found: "No customers found"
go: "Go"
hub: "Hub"
accounts_administration_distributor: "accounts administration distributor"
accounts_and_billing: "Accounts & Billing"
producer: "Producer"
product: "Product"
price: "Price"
on_hand: "In stock"
save_changes: "Save Changes"
spree_admin_overview_enterprises_header: "My Enterprises"
spree_admin_overview_enterprises_footer: "MANAGE MY ENTERPRISES"
spree_admin_enterprises_hubs_name: "Name"
spree_admin_enterprises_create_new: "CREATE NEW"
spree_admin_enterprises_shipping_methods: "Shipping Methods"
spree_admin_enterprises_fees: "Enterprise Fees"
spree_admin_enterprises_none_create_a_new_enterprise: "CREATE A NEW ENTERPRISE"
spree_admin_enterprises_none_text: "You don't have any enterprises yet"
spree_admin_enterprises_producers_name: "Name"
spree_admin_enterprises_producers_total_products: "Total Products"
spree_admin_enterprises_producers_active_products: "Active Products"
spree_admin_enterprises_producers_order_cycles: "Products in OCs"
spree_admin_enterprises_tabs_hubs: "HUBS"
spree_admin_enterprises_tabs_producers: "PRODUCERS"
spree_admin_enterprises_producers_manage_order_cycles: "MANAGE ORDER CYCLES"
spree_admin_enterprises_producers_manage_products: "MANAGE PRODUCTS"
spree_admin_enterprises_producers_orders_cycle_text: "You don't have any active order cycles."
spree_admin_enterprises_any_active_products_text: "You don't have any active products."
spree_admin_enterprises_create_new_product: "CREATE A NEW PRODUCT"
spree_admin_order_cycles: "Order Cycles"
spree_admin_order_cycles_tip: "Order cycles determine when and where your products are available to customers."
dashbord: "Dashboard"
spree_admin_single_enterprise_alert_mail_confirmation: "Please confirm the email address for"
spree_admin_single_enterprise_alert_mail_sent: "We've sent an email to"
spree_admin_overview_action_required: "Action Required"
spree_admin_overview_check_your_inbox: "Please check you inbox for further instructions. Thanks!"
change_package: "Change Package"
spree_admin_single_enterprise_hint: "Hint: To allow people to find you, turn on your visibility under"
your_profil_live: "Your profile live"
on_ofn_map: "on the Open Food Network map"
see: "See"
live: "live"
manage: "Manage"
resend: "Resend"
add_and_manage_products: "Add & manage products"
add_and_manage_order_cycles: "Add & manage order cycles"
manage_order_cycles: "Manage order cycles"
manage_products: "Manage products"
edit_profile_details: "Edit profile details"
edit_profile_details_etc: "Change your profile description, images, etc."
order_cycle: "Order Cycle"
remove_tax: "Remove tax"
tax_settings: "Tax Settings"
products_require_tax_category: "products require tax category"
admin_shared_address_1: "Address"
admin_shared_address_2: "Address (cont.)"
admin_share_city: "City"
admin_share_zipcode: "Postcode"
admin_share_country: "Country"
admin_share_state: "County"
hub_sidebar_hubs: "Hubs"
hub_sidebar_none_available: "None Available"
hub_sidebar_manage: "Manage"
hub_sidebar_at_least: "At least one hub must be selected"
hub_sidebar_blue: "blue"
hub_sidebar_red: "red"
shop_trial_in_progress: "Your shopfront trial expires in %{days}."
shop_trial_expired: "To view or change your current Open Food Network plan go to the Dashboard -> Change Package."
report_customers_distributor: "Distributor"
report_customers_supplier: "Supplier"
report_customers_cycle: "Order Cycle"
report_customers_type: "Report Type"
report_customers_csv: "Download as csv"
report_producers: "Producers:"
report_type: "Report Type:"
report_hubs: "Hubs:"
report_payment: "Payment Methods:"
report_distributor: "Distributor:"
report_payment_by: 'Payments By Type'
report_itemised_payment: 'Itemised Payment Totals'
report_payment_totals: 'Payment Totals'
report_all: 'all'
report_order_cycle: "Order Cycle:"
report_entreprises: "Enterprises:"
report_users: "Users:"
initial_invoice_number: "Initial invoice number:"
invoice_date: "Invoice date:"
due_date: "Invoice date:"
account_code: "Account code:"
equals: "Equals"
contains: "contains"
discount: "Discount"
filter_products: " Filter Products"
delete_product_variant: "The last variant cannot be deleted!"
progress: "progress"
saving: "Saving.."
success: "success"
failure: "failure"
unsaved_changes_confirmation: "Unsaved changes will be lost. Continue anyway?"
one_product_unsaved: "Changes to one product remain unsaved."
products_unsaved: "Changes to %{n} products remain unsaved."
is_already_manager: "is already a manager!"
no_change_to_save: "No change to save"
add_manager: "Add a manager"
users: "Users"
about: "About"
images: "Images"
web: "Web"
primary_details: "Primary Details"
adrdress: "Address"
contact: "Contact"
social: "Social"
business_details: "Business Details"
properties: "Properties"
shipping_methods: "Shipping Methods"
payment_methods: "Payment Methods"
payment_method_fee: "Transaction fee"
enterprise_fees: "Enterprise Fees"
inventory_settings: "Inventory Settings"
tag_rules: "Tag Rules"
shop_preferences: "Shop Preferences"
validation_msg_relationship_already_established: "^That relationship is already established."
validation_msg_at_least_one_hub: "^At least one hub must be selected"
validation_msg_product_category_cant_be_blank: "^Product Category cant be blank"
validation_msg_tax_category_cant_be_blank: "^Tax Category can't be blank"
validation_msg_is_associated_with_an_exising_customer: "is associated with an existing customer"
spree:
shipment_states:
backorder: backorder
partial: partial
pending: pending
ready: ready
shipped: shipped
payment_states:
balance_due: balance due
completed: completed
checkout: checkout
credit_owed: credit owed
failed: failed
paid: paid
pending: pending
processing: processing
void: void
invalid: invalid
order_state:
address: address
adjustments: adjustments
awaiting_return: awaiting return
canceled: canceled
cart: cart
complete: complete
confirm: confirm
delivery: delivery
payment: payment
resumed: resumed
returned: returned
skrill: skrill

View File

@@ -0,0 +1,5 @@
class AddAllowGuestOrdersToEnterprise < ActiveRecord::Migration
def change
add_column :enterprises, :allow_guest_orders, :boolean, default: true, null: false
end
end

View File

@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20160819065331) do
ActiveRecord::Schema.define(:version => 20160921060442) do
create_table "account_invoices", :force => true do |t|
t.integer "user_id", :null => false
@@ -248,6 +248,7 @@ ActiveRecord::Schema.define(:version => 20160819065331) do
t.boolean "charges_sales_tax", :default => false, :null => false
t.string "email_address"
t.boolean "require_login", :default => false, :null => false
t.boolean "allow_guest_orders", :default => true, :null => false
end
add_index "enterprises", ["address_id"], :name => "index_enterprises_on_address_id"

View File

@@ -83,8 +83,8 @@ module OpenFoodNetwork
sort_by: proc { |product| product.name } },
{ group_by: proc { |line_item| line_item.full_name },
sort_by: proc { |full_name| full_name } },
{ group_by: proc { |line_item| line_item.order.bill_address.lastname },
sort_by: proc { |lastname| lastname } } ]
{ group_by: proc { |line_item| line_item.order },
sort_by: proc { |order| order.bill_address.lastname } } ]
end
end

View File

@@ -85,9 +85,12 @@ feature %q{
page.should have_selector '.available'
choose 'Own'
# Require login to view shopfront
# Require login to view shopfront or for checkout
within(".side_menu") { click_link "Shop Preferences" }
expect(page).to have_checked_field "enterprise_require_login_false"
choose "Require customers to login"
expect(page).to have_checked_field "enterprise_allow_guest_orders_true"
choose "Visible to registered customers only"
expect(page).to have_no_checked_field "enterprise_require_login_false"
within (".side_menu") { click_link "Users" }
select2_search user.email, from: 'Owner'
@@ -170,7 +173,6 @@ feature %q{
@enterprise.reload
expect(@enterprise.owner).to eq user
expect(page).to have_checked_field "enterprise_visible_true"
expect(page).to have_checked_field "enterprise_require_login_true"
click_link "Business Details"
page.should have_checked_field "enterprise_charges_sales_tax_true"
@@ -190,6 +192,7 @@ feature %q{
click_link "Shop Preferences"
page.should have_content 'This is my shopfront message.'
page.should have_checked_field "enterprise_preferred_shopfront_order_cycle_order_orders_open_at"
expect(page).to have_checked_field "enterprise_require_login_true"
end
describe "producer properties" do

View File

@@ -20,4 +20,14 @@ describe CheckoutHelper do
helper.display_checkout_tax_total(order).should == Spree::Money.new(123.45, currency: 'AUD')
end
end
it "knows if guests can checkout" do
distributor = create(:distributor_enterprise)
order = create(:order, distributor: distributor)
helper.stub(:current_order) { order }
expect(helper.guest_checkout_allowed?).to be true
order.distributor.allow_guest_orders = false
expect(helper.guest_checkout_allowed?).to be false
end
end

View File

@@ -34,7 +34,12 @@ module OpenFoodNetwork
match do |event_proc|
last_job_id_before = Delayed::Job.last.andand.id || 0
event_proc.call
begin
event_proc.call
rescue StandardError => e
@exception = e
raise e
end
@jobs_created = Delayed::Job.where('id > ?', last_job_id_before)
@@ -57,11 +62,11 @@ module OpenFoodNetwork
end
failure_message_for_should do |event_proc|
"expected #{klass} to be enqueued matching #{options.inspect} (#{@jobs_created.andand.count || '???'} others enqueued)"
@exception || "expected #{klass} to be enqueued matching #{options.inspect} (#{@jobs_created.count} others enqueued)"
end
failure_message_for_should_not do |event_proc|
"expected #{klass} to not be enqueued matching #{options.inspect}"
@exception || "expected #{klass} to not be enqueued matching #{options.inspect}"
end
end
end