Undo merge updates from branch 'master'
Fixed #3119 Remove label from remove button in cart.discount-applied
Prevent warning when no images present

When no images are present for a product, viewing an order that contains that product will generate a warning "trying to get property of non-object". `$Image->id` doesn't exist. Moving the line within the if-loop prevents the warning.
Merge pull request #3131 from Just-m/JM-2014-25-11

Fixed #3131 Prevent PHP warning when viewing an order that references a product with no images.
Fixed duplicate order submission
Disable confirm order button on click
Fixed #3142 Added server-side duplicate order protection

Uses WP Transients to prevent duplicate order processing by generating a session order processing lock. The second process (the duplicate) waits for the transient to clear or for a timeout before redirecting to checkout.

An additional check will look for a completed order from another process and redirect to thanks for successful orders (in the same session but from a different process).
Fixed #3142 Added server-side duplicate order protection

Uses WP Transients to prevent duplicate order processing by generating a session order processing lock. The second process (the duplicate) waits for the transient to clear or for a timeout before redirecting to checkout.

An additional check will look for a completed order from another process and redirect to thanks for successful orders (in the same session but from a different process).
Fixed #3135 Set the correct billing property to the sanitized form value
Fixed #3135 Set the correct billing property to the sanitized form value
Fixed #3136 Update cartitem.taxrate to handle multiple taxes and compound taxes
Fixed #3136 Update cartitem.taxrate to handle multiple taxes and compound taxes
Fixed #3133 Switch where clause operator for to (end) datetime; props @ben72
Fixed #3133 Switch where clause operator for to (end) datetime; props @ben72
Fixed #3127 Use mb_convert_encoding when available
Fixed #3127 Use mb_convert_encoding when available
Closed #3144 Generate new sessions for orphan session cookies

If a session cookie exists, but no session record exists, a new session needs assigned to ensure the old session cookies are replaced. This allows a merchant to wipe the session table and recreate sessions for all users. It also reduces and prevents an edge case where an old cookie might get used for an existing session.
Closed #3144 Generate new sessions for orphan session cookies

If a session cookie exists, but no session record exists, a new session needs assigned to ensure the old session cookies are replaced. This allows a merchant to wipe the session table and recreate sessions for all users. It also reduces and prevents an edge case where an old cookie might get used for an existing session.
Revert merge branch 'feature/3122' changes
Merge branch 'master' into feature/admin-orders