comable-core 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/Rakefile +97 -0
  4. data/app/assets/javascripts/comable/application.js +13 -0
  5. data/app/assets/stylesheets/comable/application.css +13 -0
  6. data/app/controllers/concerns/comable/permitted_attributes.rb +15 -0
  7. data/app/helpers/comable/application_helper.rb +84 -0
  8. data/app/helpers/comable/products_helper.rb +82 -0
  9. data/app/mailers/comable/order_mailer.rb +18 -0
  10. data/app/models/comable/ability.rb +18 -0
  11. data/app/models/comable/address.rb +39 -0
  12. data/app/models/comable/category.rb +72 -0
  13. data/app/models/comable/image.rb +15 -0
  14. data/app/models/comable/order.rb +121 -0
  15. data/app/models/comable/order/associations.rb +22 -0
  16. data/app/models/comable/order/callbacks.rb +43 -0
  17. data/app/models/comable/order/morrisable.rb +20 -0
  18. data/app/models/comable/order/scopes.rb +17 -0
  19. data/app/models/comable/order/validations.rb +39 -0
  20. data/app/models/comable/order_item.rb +98 -0
  21. data/app/models/comable/order_item/csvable.rb +32 -0
  22. data/app/models/comable/page.rb +30 -0
  23. data/app/models/comable/payment.rb +87 -0
  24. data/app/models/comable/payment_method.rb +27 -0
  25. data/app/models/comable/product.rb +55 -0
  26. data/app/models/comable/product/csvable.rb +20 -0
  27. data/app/models/comable/shipment.rb +85 -0
  28. data/app/models/comable/shipment_method.rb +9 -0
  29. data/app/models/comable/stock.rb +71 -0
  30. data/app/models/comable/stock/csvable.rb +26 -0
  31. data/app/models/comable/store.rb +30 -0
  32. data/app/models/comable/theme.rb +25 -0
  33. data/app/models/comable/tracker.rb +17 -0
  34. data/app/models/comable/user.rb +130 -0
  35. data/app/models/concerns/comable/cart_owner.rb +94 -0
  36. data/app/models/concerns/comable/checkout.rb +85 -0
  37. data/app/models/concerns/comable/importable.rb +67 -0
  38. data/app/models/concerns/comable/liquidable.rb +12 -0
  39. data/app/models/concerns/comable/product/search.rb +41 -0
  40. data/app/models/concerns/comable/ransackable.rb +38 -0
  41. data/app/models/concerns/comable/role_owner.rb +15 -0
  42. data/app/models/concerns/comable/sku_choice.rb +19 -0
  43. data/app/models/concerns/comable/sku_item.rb +17 -0
  44. data/app/uploaders/image_uploader.rb +7 -0
  45. data/app/views/comable/order_mailer/complete.text.erb +42 -0
  46. data/config/initializers/comma.rb +8 -0
  47. data/config/locales/en.yml +424 -0
  48. data/config/locales/ja.yml +425 -0
  49. data/db/migrate/20131214194807_create_comable_products.rb +15 -0
  50. data/db/migrate/20140120032559_create_comable_users.rb +46 -0
  51. data/db/migrate/20140502060116_create_comable_stocks.rb +14 -0
  52. data/db/migrate/20140723175431_create_comable_orders.rb +20 -0
  53. data/db/migrate/20140723175810_create_comable_order_items.rb +19 -0
  54. data/db/migrate/20140817194104_create_comable_payment_methods.rb +13 -0
  55. data/db/migrate/20140921191416_create_comable_shipment_methods.rb +11 -0
  56. data/db/migrate/20140926063541_create_comable_stores.rb +11 -0
  57. data/db/migrate/20141024025526_create_comable_addresses.rb +17 -0
  58. data/db/migrate/20150111031228_create_comable_categories.rb +10 -0
  59. data/db/migrate/20150111031229_create_comable_products_categories.rb +8 -0
  60. data/db/migrate/20150112173706_create_comable_images.rb +9 -0
  61. data/db/migrate/20150423095210_create_comable_shipments.rb +13 -0
  62. data/db/migrate/20150511171940_create_comable_payments.rb +12 -0
  63. data/db/migrate/20150513185230_create_comable_trackers.rb +12 -0
  64. data/db/migrate/20150519080729_create_comable_pages.rb +17 -0
  65. data/db/migrate/20150612143226_create_comable_themes.rb +15 -0
  66. data/db/migrate/20150612143445_add_theme_id_to_comable_stores.rb +7 -0
  67. data/db/seeds.rb +5 -0
  68. data/db/seeds/comable/users.rb +51 -0
  69. data/lib/comable/core.rb +48 -0
  70. data/lib/comable/core/configuration.rb +22 -0
  71. data/lib/comable/core/engine.rb +50 -0
  72. data/lib/comable/deprecator.rb +26 -0
  73. data/lib/comable/payment_provider.rb +14 -0
  74. data/lib/comable/payment_provider/base.rb +42 -0
  75. data/lib/comable/payment_provider/general.rb +15 -0
  76. data/lib/comable/state_machine_patch.rb +32 -0
  77. data/lib/comma_extractor_extentions.rb +31 -0
  78. data/lib/generators/comable/install/install_generator.rb +133 -0
  79. data/lib/generators/comable/install/templates/config/initializers/comable.rb +31 -0
  80. data/lib/tasks/comable_tasks.rake +4 -0
  81. metadata +346 -0
@@ -0,0 +1,425 @@
1
+ ja:
2
+ comable:
3
+ cart: カート
4
+ shopping_cart: ショッピングカート
5
+ checkout: レジに進む
6
+ show_cart: カートを見る
7
+ search: 検索
8
+ category: カテゴリー
9
+ my_account: マイアカウント
10
+ sign_in: ログイン
11
+ sign_out: ログアウト
12
+ guest: ゲスト
13
+ guest_order: ログインせずに進む
14
+ add_to_cart: カートに入れる
15
+ browse_related_products: 関連商品を探す
16
+ reorder: 再度注文
17
+ change_email_or_password: メールアドレス、パスワードを変更する
18
+ edit_your_address_book: アドレス帳を編集する
19
+ address_book: アドレス帳
20
+ order_history: 注文履歴
21
+ next_step: 次へ進む
22
+ use_this_address: この住所を使う
23
+ complete_order: 注文を確定する
24
+ use_as_billing_address: 請求先住所として使用する
25
+ use_as_shipping_address: 配送先住所として使用する
26
+ new_billing_address: 新しい請求先住所
27
+ new_shipping_address: 新しい配送先住所
28
+ edit_billing_address: 請求先住所の編集
29
+ edit_shipping_address: 配送先住所の編集
30
+ other_addresses: その他の住所
31
+ new_address: 新しい住所
32
+ successful: 成功しました
33
+ failure: 失敗しました
34
+ products: '商品'
35
+ pages: 'ページ'
36
+ home: 'ホーム'
37
+ support: 'サポート'
38
+ sample_header: 'サンプルテキスト'
39
+ sample_subheader: 'これはサンプルテキストです。'
40
+ sample_text: 'ここにあなたのお好きなメッセージを埋め込むことができます。'
41
+ default_store_name: 'K&B style'
42
+
43
+ price: &price
44
+ '価格'
45
+ quantity: &quantity
46
+ '個数'
47
+ item_total_price: &item_total_price
48
+ '合計価格'
49
+ item_total_quantity: &item_total_quantity
50
+ '合計商品数'
51
+ soldout:
52
+ '品切れ'
53
+ honorific: &honorific
54
+ '%{name} 様'
55
+
56
+ checkout_flow:
57
+ sign_in: ログイン
58
+ address_and_payment: 配送・会計
59
+ confirm: 確認
60
+ complete: 注文完了
61
+
62
+ actions:
63
+ new: 新規作成
64
+ edit: 編集する
65
+ create: 登録する
66
+ update: 更新する
67
+ destroy: 削除
68
+ cancel: キャンセル
69
+ continue: 続ける
70
+
71
+ errors:
72
+ messages:
73
+ out_of_stock: '(%{name})が在庫を超過しています。'
74
+ out_of_stocks: '在庫を超過する個数の注文が含まれている可能性があります。'
75
+ product_not_found: '%{name}は存在しないか削除された可能性があります。'
76
+ products_not_found: 'ご指定の商品は存在しないか削除された可能性があります。'
77
+
78
+ carts:
79
+ added: '1つの商品がカートに入りました'
80
+ empty: 'カートに商品が入っていません'
81
+ updated: 'カートの内容が変更されました'
82
+ invalid: 'カートにいくつかのエラーがあります'
83
+
84
+ orders:
85
+ success: '注文が完了しました'
86
+ failure: '注文に失敗しました。入力項目を見直してください。'
87
+
88
+ order_mailer:
89
+ complete:
90
+ subject: '%{store_name} 注文完了メール %{order_code}'
91
+ dear: *honorific
92
+ introductions: |-
93
+ %{store_name} をご利用いただきましてありがとうございます。
94
+ ご注文内容は下記のとおりです。
95
+ outroductions: |-
96
+ またのご利用をお待ちしております。
97
+ %{store_name}
98
+
99
+ admin:
100
+ not_found: レコードが見つかりませんでした。
101
+ general: 一般
102
+ images: 画像
103
+ main_image: メイン画像
104
+ sub_image: サブ画像
105
+ home: ホーム
106
+ product: 商品
107
+ index: 一覧
108
+ search: 検索
109
+ back_to_store: ストアに戻る
110
+ confirmation_to_remove_product: この操作は元に戻せません。商品を削除してもよろしいですか?
111
+ confirmation_to_remove_stock: この操作は元に戻せません。在庫を削除してもよろしいですか?
112
+ confirmation_to_remove_page: この操作は元に戻せません。ページを削除してもよろしいですか?
113
+ you_can_drag_and_drop: ドラッグ&ドロップの操作でツリーを編集できます。
114
+ you_can_right_click: 右クリックでメニューを表示できます。
115
+ link_to_add_new_node: '次のリンクから新しいカテゴリを追加できます: '
116
+ link_to_add_new_stock: '次のリンクから新しい在庫を追加できます: '
117
+ check_this_product_in_frontend: 'この商品をフロントで確認する'
118
+ preview: プレビュー
119
+ note: 'NOTE:'
120
+ results: 件
121
+ times: 回
122
+ more: その他
123
+ access_denied: アクセス権がありません
124
+ order_count: 注文数
125
+ new_orders: 新規受注
126
+ new_users: 新規顧客
127
+ sales: 売上
128
+ better_than_last_week: '先週との比較 (%{percentage}%)'
129
+ edit_profile: プロフィールを編集
130
+ please_fill_when_using_sku: SKUを利用する場合はこの項目を記入してください。
131
+ operation: 操作
132
+ stocks: 在庫
133
+ clear_search_conditions: 検索条件をクリア
134
+ add_search_condition: 検索条件を追加
135
+ remove_search_condition: '×'
136
+ advanced_search: 詳細検索
137
+ bill: 請求先
138
+ ship: 配送先
139
+ add_sub_image: サブ画像を追加
140
+ sign_in: ログイン
141
+ sign_out: ログアウト
142
+ export_to_csv: 'CSV形式でエクスポート'
143
+ export_to_excel: 'Excel形式でエクスポート'
144
+ import: 'ファイルからインポート...'
145
+ unknown_file_type: '対応していないファイル形式です: %{filename}'
146
+ is_not_exists: 'が存在しません。'
147
+ ship: '発送'
148
+ help: 'ヘルプ'
149
+ tracker_code_help_introduction: |-
150
+ トラッキングコードには、特殊な記号を使うことでトラッキングIDや注文情報を埋め込むことができます。
151
+ たとえば <code>{{ order.total_price }}</code> のように書くと注文の合計金額を埋め込むことができます。
152
+ 実際の画面ではこれが <code>1500</code> のように出力されます。
153
+ tracker_code_help_additional: '<code>order.order_items</code> は配列で、各要素から次の情報を取り出すことができます。'
154
+ list_of_usable_variables: '利用可能な変数は次の通りです。'
155
+ mote_infomation_for_syntax: '構文についての詳しい情報は次のページをご覧ください:'
156
+ help_of_store_email: 'この項目は顧客に送信するメールの送信元として利用されます。未入力の場合はメールが送信されません。'
157
+ files: 'ファイル一覧'
158
+ use_this_theme: 'このテーマを使う'
159
+ available_assigns: '利用可能な変数'
160
+ available_assigns_in_all_pages: 'すべてのページで利用可能な変数'
161
+ available_filters: '利用可能なフィルター'
162
+ about_sintax: '構文について'
163
+ please_see_following_page_for_syntax: '構文については次のページを参照してください:'
164
+ please_select_file_form_directory_tree_to_edit: 'ディレクトリーツリーから編集したいファイルを選択してください。'
165
+ here_editor_will_be_displayed_and_you_can_edit_file: 'ここにエディタが表示されてファイルの内容を編集できます。'
166
+ nav:
167
+ dashboard: ダッシュボード
168
+ order: 注文管理
169
+ product: 商品管理
170
+ stock: 在庫管理
171
+ category: カテゴリ
172
+ page: ページ
173
+ user: ユーザー
174
+ general_settings: 一般設定
175
+ store: ストア設定
176
+ shipment_method: 発送管理
177
+ payment_method: 決済管理
178
+ tracker: トラッキング情報
179
+ theme: 'テーマ'
180
+ products:
181
+ detail: 商品詳細
182
+ list: '商品一覧'
183
+ orders:
184
+ detail: 注文明細
185
+ cart: カート情報
186
+ user: ユーザー詳細
187
+ shipment: 送料
188
+ payment: 支払手数料
189
+ users:
190
+ detail: ユーザー詳細
191
+ edit: 編集
192
+ new_orders: '最新の注文 (%{count}件)'
193
+ pages:
194
+ general: 一般
195
+ seo: SEO
196
+ visibility: 公開/非公開
197
+ published: 公開
198
+ unpublished: 非公開
199
+ stores:
200
+ edit: 編集
201
+ shipment_methods:
202
+ edit: 編集
203
+ payment_methods:
204
+ edit: 編集
205
+ actions:
206
+ index: 一覧
207
+ new: 新規作成
208
+ edit: 編集する
209
+ update: 変更する
210
+ destroy: 削除する
211
+ save: 保存する
212
+ cancel: キャンセル
213
+ property: 'プロパティ'
214
+ categories:
215
+ new_node: 新しいカテゴリ
216
+
217
+ sample:
218
+ suede_dress: 'スウェードワンピース'
219
+ girly_coat: 'ダブルボタンガーリーコート'
220
+ fur_gloves: 'サイドステッチファー付き手袋'
221
+ leather_boots: '本革ロングブーツ'
222
+ clothing: '衣類'
223
+ color: 'カラー'
224
+ size: 'サイズ'
225
+ navy: 'ネイビー'
226
+ beige: 'ベージュ'
227
+ black_cat: 'クロネコ'
228
+ credit_card: 'クレジットカード'
229
+
230
+ activerecord:
231
+ state_machines:
232
+ comable/order:
233
+ state:
234
+ states:
235
+ cart: カート
236
+ orderer: 請求先住所の選択
237
+ delivery: 配送先住所の選択
238
+ shipment: 発送方法の選択
239
+ payment: 決済方法の選択
240
+ confirm: 注文内容を確認
241
+ completed: '注文完了'
242
+ canceled: 'キャンセル'
243
+ resumed: '再開'
244
+ events:
245
+ cancel: 'キャンセル'
246
+ resume: '再開'
247
+ comable/payment:
248
+ state:
249
+ states:
250
+ pending: '準備中'
251
+ ready: 'オーソリ完了'
252
+ completed: '決済完了'
253
+ canceled: 'キャンセル'
254
+ resumed: '再開'
255
+ comable/shipment:
256
+ state:
257
+ states:
258
+ pending: '準備中'
259
+ ready: '準備完了'
260
+ completed: '発送完了'
261
+ canceled: 'キャンセル'
262
+ resumed: '再開'
263
+
264
+ models:
265
+ comable/order: ご注文
266
+ comable/order_items: ご注文明細
267
+
268
+ attributes:
269
+ comable/user:
270
+ id: ID
271
+ email: メールアドレス
272
+ password: パスワード
273
+ password_confirmation: パスワード(確認)
274
+ current_password: 現在のパスワード
275
+ bill_address: 請求先住所
276
+ ship_address: 配送先住所
277
+ bill_full_name: 配送先氏名
278
+ orders: 注文数
279
+ role: 権限
280
+ sign_in_count: ログイン回数
281
+ current_sign_in_at: ログイン日時
282
+ last_sign_in_at: 最終ログイン日時
283
+ current_sign_in_ip: ログインIP
284
+ last_sign_in_ip: 最終ログインIP
285
+ comable/order:
286
+ id: ID
287
+ code: 注文番号
288
+ email: メールアドレス
289
+ bill_address: ご請求先
290
+ ship_address: お届け先
291
+ payment_method: お支払い方法
292
+ shipment_method: 発送方法
293
+ payment_fee: '支払い手数料'
294
+ shipment_fee: 送料
295
+ item_total_price: 商品合計
296
+ total_price: 合計
297
+ order_items: 商品
298
+ completed_at: 注文日時
299
+ state: ステータス
300
+ bill_address: 請求先住所
301
+ ship_address: 配送先住所
302
+ bill_full_name: 配送先氏名
303
+ order_items: 注文明細
304
+ user_id: ユーザーID
305
+ guest_token: ゲストトークン
306
+ payment_state: '決済ステータス'
307
+ shipment_state: '配送ステータス'
308
+ comable/order_item: &comable_order_item
309
+ quantity: *quantity
310
+ price: *price
311
+ product: 商品情報
312
+ subtotal_price: 小計
313
+ name: 商品名
314
+ code: SKU商品コード
315
+ sku_h_item_name: SKU横軸項目名
316
+ sku_v_item_name: SKU縦軸項目名
317
+ sku_h_choice_name: SKU横軸選択肢名
318
+ sku_v_choice_name: SKU縦軸選択肢名
319
+ order: 注文
320
+ comable/address: &comable_address
321
+ full_name: お名前
322
+ family_name: 姓
323
+ first_name: 名
324
+ state_name: 都道府県
325
+ zip_code: 郵便番号
326
+ city: 市町村
327
+ detail: その他
328
+ phone_number: 電話番号
329
+ comable/product:
330
+ id: ID
331
+ code: 商品コード
332
+ name: 商品名
333
+ price: 価格
334
+ caption: キャプション
335
+ categories: カテゴリ
336
+ sku_h_item_name: SKU横軸項目名
337
+ sku_v_item_name: SKU縦軸項目名
338
+ comable/stock:
339
+ id: ID
340
+ code: SKU商品コード
341
+ quantity: 在庫
342
+ sku_h_choice_name: SKU横軸選択肢名
343
+ sku_v_choice_name: SKU縦軸選択肢名
344
+ product: 商品
345
+ product_code: 商品コード
346
+ comable/store:
347
+ name: ストア名
348
+ meta_keywords: メタキーワード
349
+ meta_description: メタディスクリプション
350
+ email: メールアドレス
351
+ comable/shipment_method:
352
+ name: 発送方法名
353
+ fee: 手数料
354
+ activated_flag: この発送方法を有効にする
355
+ traking_url: トラッキングURL
356
+ comable/payment_method:
357
+ name: 決済方法名
358
+ payment_provider: 決済プロバイダ
359
+ fee: '手数料'
360
+ enable_price: 利用可能な価格範囲
361
+ comable/tracker:
362
+ activated_flag: 'このトラッキング情報を有効にする'
363
+ name: 'トラッキング名'
364
+ tracker_id: 'トラッキングID'
365
+ code: 'トラッキングコード'
366
+ place: '設置場所'
367
+ comable/order/order_items:
368
+ <<: *comable_order_item
369
+ comable/order/bill_address:
370
+ <<: *comable_address
371
+ comable/order/ship_address:
372
+ <<: *comable_address
373
+ comable/payment:
374
+ id: 'ID'
375
+ order_id: '注文ID'
376
+ payment_method_id: '決済方法ID'
377
+ fee: '手数料'
378
+ state: 'ステータス'
379
+ completed_at: '決済日時'
380
+ comable/shipment:
381
+ id: 'ID'
382
+ order_id: '注文ID'
383
+ shipment_method_id: '発送方法ID'
384
+ fee: '手数料'
385
+ state: 'ステータス'
386
+ tracking_number: 'トラッキング番号'
387
+ completed_at: '発送日時'
388
+ comable/page:
389
+ id: ID
390
+ title: タイトル
391
+ content: 内容
392
+ seo: 検索対策
393
+ page_title: ページタイトル
394
+ meta_description: メタディスクリプション
395
+ meta_keywords: メタキーワード
396
+ slug: スラッグ
397
+ published_at: 公開日
398
+ created_at: 作成日
399
+ updated_at: 更新日
400
+
401
+ enumerize:
402
+ comable/user:
403
+ role:
404
+ customer: 顧客
405
+ reporter: 報告者
406
+ admin: 管理者
407
+ comable/tracker:
408
+ place:
409
+ everywhere: 'すべて'
410
+ checkout: '注文完了画面'
411
+
412
+ views:
413
+ pagination:
414
+ first: "&laquo; 最初"
415
+ last: "最後 &raquo;"
416
+ next: "次 &rsaquo;"
417
+ previous: "&lsaquo; 前"
418
+ truncate: "&hellip;"
419
+
420
+ ransack:
421
+ predicates:
422
+ gteq: 以上
423
+ lteq: 以下
424
+ eq_any_splitted: 完全一致
425
+ cont_any_splitted: 部分一致
@@ -0,0 +1,15 @@
1
+ class CreateComableProducts < ActiveRecord::Migration
2
+ def change
3
+ create_table :comable_products do |t|
4
+ t.string :name, null: false
5
+ t.string :code, null: false
6
+ t.integer :price, null: false
7
+ t.text :caption
8
+ t.string :sku_h_item_name
9
+ t.string :sku_v_item_name
10
+ t.timestamps null: false
11
+ end
12
+
13
+ add_index :comable_products, :code, unique: true
14
+ end
15
+ end
@@ -0,0 +1,46 @@
1
+ class CreateComableUsers < ActiveRecord::Migration
2
+ def change
3
+ create_table :comable_users do |t|
4
+ ## Database authenticatable
5
+ t.string :email, null: false
6
+ t.string :role, null: false
7
+ t.string :encrypted_password
8
+
9
+ ## Recoverable
10
+ t.string :reset_password_token
11
+ t.datetime :reset_password_sent_at
12
+
13
+ ## Rememberable
14
+ t.datetime :remember_created_at
15
+
16
+ ## Trackable
17
+ t.integer :sign_in_count, default: 0, null: false
18
+ t.datetime :current_sign_in_at
19
+ t.datetime :last_sign_in_at
20
+ t.string :current_sign_in_ip
21
+ t.string :last_sign_in_ip
22
+
23
+ ## Confirmable
24
+ # t.string :confirmation_token
25
+ # t.datetime :confirmed_at
26
+ # t.datetime :confirmation_sent_at
27
+ # t.string :unconfirmed_email # Only if using reconfirmable
28
+
29
+ ## Lockable
30
+ # t.integer :failed_attempts, default: 0, null: false # Only if lock strategy is :failed_attempts
31
+ # t.string :unlock_token # Only if unlock strategy is :email or :both
32
+ # t.datetime :locked_at
33
+
34
+ ## Others
35
+ t.references :bill_address
36
+ t.references :ship_address
37
+
38
+ t.timestamps null: false
39
+ end
40
+
41
+ add_index :comable_users, :email, unique: true
42
+ add_index :comable_users, :reset_password_token, unique: true
43
+ # add_index :comable_users, :confirmation_token, unique: true
44
+ # add_index :comable_users, :unlock_token, unique: true
45
+ end
46
+ end