You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1057 lines
63 KiB

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <odoo>
  3. <template id="assets_frontend" inherit_id="web.assets_frontend" name="Coop">
  4. <xpath expr="." position="inside">
  5. <script type="text/javascript"
  6. src="/easy_my_coop/static/src/js/easy_my_coop.js"></script>
  7. <script type="text/javascript"
  8. src="/easy_my_coop/static/src/js/jquery.inputmask.bundle.js"></script>
  9. </xpath>
  10. </template>
  11. <template id="company_operational_offices"
  12. inherit_id="website.company_description"
  13. name="Company Description">
  14. <address itemscope="itemscope" position="inside">
  15. <div class="fa fa-building-o"
  16. t-field="res_company.company_registry"/>
  17. <br/>
  18. <t t-if="res_company.partner_id.bank_ids">
  19. <div class="fa fa-bank"
  20. t-field="res_company.partner_id.bank_ids[0].sanitized_acc_number"/>
  21. </t>
  22. </address>
  23. </template>
  24. <template id="cooperator_thanks" name="Cooperator contact us">
  25. <t t-call="website.layout">
  26. <div id="wrap">
  27. <div class="oe_structure"/>
  28. <div class="container">
  29. <h1>Thanks!</h1>
  30. <div class="row">
  31. <div class="col-md-8">
  32. <div class="alert alert-success">
  33. Your subscription has been successfully
  34. registered.
  35. <button type="button" class="close"
  36. data-dismiss="alert">&amp;times;
  37. </button>
  38. </div>
  39. <p>
  40. We will get back to you shortly.
  41. </p>
  42. <ul class="list-unstyled">
  43. <li>
  44. <i class="fa fa-phone"></i>
  45. :
  46. <span t-field="res_company.phone"/>
  47. </li>
  48. <li>
  49. <i class="fa fa-envelope"></i>
  50. :
  51. <span t-field="res_company.email"/>
  52. </li>
  53. </ul>
  54. </div>
  55. <div class="col-md-4">
  56. <t t-call="website.company_description"/>
  57. </div>
  58. </div>
  59. </div>
  60. <div class="oe_structure"/>
  61. </div>
  62. </t>
  63. </template>
  64. <template id="becomecooperator" name="Become Cooperator">
  65. <t t-call="website.layout">
  66. <div id="wrap">
  67. <div class="oe_structure"/>
  68. <div class="container oe_easymy_coop">
  69. <h2 class="energie">Become Cooperator</h2>
  70. <br/>
  71. <div class="row">
  72. <div class="col-md-8">
  73. <form action="/subscription/subscribe_share"
  74. method="post" class="form-horizontal mt32"
  75. enctype="multipart/form-data">
  76. <p style="color:red;">
  77. <t t-esc="error_msg"/>
  78. </p>
  79. <input type="hidden" name="csrf_token"
  80. t-att-value="request.csrf_token()"/>
  81. <div t-attf-class="form-group">
  82. <a class='btn btn-primary' t-if="logged"
  83. t-attf-href="/my/account">You want to
  84. modify your personnal information ?
  85. </a>
  86. <br/>
  87. </div>
  88. <div t-attf-class="form-group">
  89. <a class='btn btn-primary' t-if="not logged"
  90. t-attf-href="/web/login?redirect=#{ request.httprequest.url }">
  91. You have already an account?
  92. </a>
  93. <br/>
  94. </div>
  95. <div t-attf-class="form-group"
  96. style="display: none;">
  97. <label>
  98. <input type="checkbox"
  99. t-att-checked="logged"
  100. name="logged"/>
  101. Logged
  102. </label>
  103. </div>
  104. <div t-attf-class="form-group"
  105. style="display: none;">
  106. <label>
  107. <input type="checkbox"
  108. t-att-checked="already_cooperator"
  109. name="already_cooperator"/>
  110. Already cooperator?
  111. </label>
  112. </div>
  113. <div name="email_from_container"
  114. t-attf-class="form-group #{error and 'email_from' in error and 'has-error' or ''}">
  115. <label class="col-md-3 col-sm-4 control-label"
  116. for="email">Email
  117. </label>
  118. <div class="col-md-7 col-sm-8 bottom-line"
  119. style="padding-bottom:20px">
  120. <input type="email"
  121. class="form-control mandatory-field"
  122. name="email"
  123. required="True"
  124. t-att-readonly="logged"
  125. t-attf-value="#{email or ''}"
  126. placeholder="didier.bourdon@bees-coop.be"/>
  127. </div>
  128. </div>
  129. <div t-if="not logged"
  130. name="confirm_email_container"
  131. t-attf-class="form-group #{error and 'email_from' in error and 'has-error' or ''}">
  132. <label class="col-md-3 col-sm-4 control-label"
  133. for="confirm_email">Confirm Email
  134. </label>
  135. <div class="col-md-7 col-sm-8 bottom-line"
  136. style="padding-bottom:20px">
  137. <input type="confirm_email"
  138. class="form-control mandatory-field"
  139. name="confirm_email"
  140. t-att-required="logged"
  141. t-att-readonly="logged"
  142. t-attf-value="#{confirm_email or ''}"
  143. placeholder="didier.bourdon@bees-coop.be"/>
  144. </div>
  145. </div>
  146. <div t-attf-class="form-group #{error and 'firstname' in error and 'has-error' or ''}">
  147. <label class="col-md-3 col-sm-4 control-label"
  148. for="firstname">First Name
  149. </label>
  150. <div class="col-md-7 col-sm-8"
  151. style="padding-top:5px">
  152. <input type="text"
  153. class="form-control mandatory-field"
  154. name="firstname"
  155. required="True"
  156. t-att-readonly="logged"
  157. t-attf-value="#{firstname or ''}"
  158. placeholder="Didier"/>
  159. </div>
  160. </div>
  161. <div t-attf-class="form-group #{error and 'lastname' in error and 'has-error' or ''}">
  162. <label class="col-md-3 col-sm-4 control-label"
  163. for="lastname">Last Name
  164. </label>
  165. <div class="col-md-7 col-sm-8">
  166. <input type="text"
  167. class="form-control mandatory-field"
  168. name="lastname"
  169. required="True"
  170. t-att-readonly="logged"
  171. t-attf-value="#{lastname or ''}"
  172. placeholder="Bourdon"/>
  173. </div>
  174. </div>
  175. <div t-attf-class="form-group #{error and 'gender' in error and 'has-error' or ''}">
  176. <label class="col-md-3 col-sm-4 control-label"
  177. for="gender">Gender
  178. </label>
  179. <select name="gender"
  180. class="col-md-7 col-sm-8 form-control"
  181. required="True"
  182. t-att-readonly="logged"
  183. style="width:54%;margin-left:15px">
  184. <option value=""></option>
  185. <t t-foreach="genders or []"
  186. t-as="type">
  187. <option t-att-value="type[0]"
  188. t-att-selected="type[0] == gender">
  189. <t t-esc="type[1]"/>
  190. </option>
  191. </t>
  192. </select>
  193. </div>
  194. <div t-attf-class="form-group #{error and 'birthdate' in error and 'has-error' or ''}">
  195. <label class="col-md-3 col-sm-4 control-label"
  196. for="birthdate">Birthdate
  197. </label>
  198. <div class="col-md-7 col-sm-8">
  199. <input type="text"
  200. data-inputmask="'alias': 'date'"
  201. class="form-control mandatory-field"
  202. name="birthdate" required="True"
  203. t-att-readonly="logged"
  204. t-attf-value="#{birthdate or ''}"
  205. placeholder="05/03/1978"/>
  206. </div>
  207. </div>
  208. <div t-attf-class="form-group #{error and 'iban' in error and 'has-error' or ''}">
  209. <label class="col-md-3 col-sm-4 control-label"
  210. for="iban">Bank Account Number
  211. </label>
  212. <div class="col-md-7 col-sm-8">
  213. <input type="text"
  214. class="form-control mandatory-field"
  215. name="iban"
  216. required="True"
  217. t-att-readonly="logged"
  218. t-attf-value="#{iban or ''}"
  219. placeholder="BE48523080767127"/>
  220. </div>
  221. </div>
  222. <div t-attf-class="form-group #{error and 'lang' in error and 'has-error' or ''}">
  223. <label class="col-md-3 col-sm-4 control-label"
  224. style="width:25%" for="lang">Language
  225. </label>
  226. <select name="lang"
  227. class="col-md-7 col-sm-8 form-control "
  228. t-att-readonly="logged"
  229. style="width:30%;margin-left:15px">
  230. <option value="2">Language...</option>
  231. <t t-foreach="langs or []"
  232. t-as="langue">
  233. <option t-att-value="langue.code"
  234. t-att-selected="langue.code == lang">
  235. <t t-esc="langue.name"/>
  236. </option>
  237. </t>
  238. </select>
  239. <br/>
  240. <div class="bottom-line"
  241. style="margin-left:25%;margin-top:35px;width:59%"></div>
  242. </div>
  243. <div t-attf-class="form-group #{error and 'address' in error and 'has-error' or ''}">
  244. <label class="col-md-3 col-sm-4 control-label"
  245. for="address">Address
  246. </label>
  247. <div class="col-md-7 col-sm-8">
  248. <input type="text"
  249. class="form-control mandatory-field"
  250. name="address"
  251. required="True"
  252. t-att-readonly="logged"
  253. t-attf-value="#{address or ''}"
  254. placeholder="rue Van Hove, 19"/>
  255. </div>
  256. </div>
  257. <div t-attf-class="form-group #{error and 'zip_code' in error and 'has-error' or ''}">
  258. <label class="col-md-3 col-sm-4 control-label"
  259. for="zip_code">City
  260. </label>
  261. <div class="col-md-7 col-sm-8">
  262. <table>
  263. <tr>
  264. <td width="20%">
  265. <input type="text"
  266. class="form-control mandatory-field"
  267. name="zip_code"
  268. required="True"
  269. t-att-readonly="logged"
  270. t-attf-value="#{zip_code or ''}"
  271. placeholder="1030"/>
  272. </td>
  273. <td width="3%"></td>
  274. <td>
  275. <input type="text"
  276. class="form-control mandatory-field"
  277. name="city"
  278. required="True"
  279. t-att-readonly="logged"
  280. t-attf-value="#{city or ''}"
  281. placeholder="Bruxelles"/>
  282. </td>
  283. </tr>
  284. </table>
  285. </div>
  286. </div>
  287. <div t-attf-class="form-group #{error and 'country_id' in error and 'has-error' or ''}">
  288. <label class="col-md-3 col-sm-4 control-label"
  289. style="width:25%" for="country_id">
  290. Country
  291. </label>
  292. <select name="country_id"
  293. class="col-md-7 col-sm-8 form-control "
  294. required="True"
  295. t-att-readonly="logged"
  296. style="width:54%;margin-left:15px">
  297. <option value="">Country...</option>
  298. <t t-foreach="countries or []"
  299. t-as="country">
  300. <option t-att-value="country.id"
  301. t-att-selected="country.id == int(country_id)">
  302. <t t-esc="country.name"/>
  303. </option>
  304. </t>
  305. </select>
  306. </div>
  307. <div t-attf-class="form-group #{error and 'phone' in error and 'has-error' or ''}">
  308. <label class="col-md-3 col-sm-4 control-label"
  309. for="phone">Phone
  310. </label>
  311. <div class="col-md-7 col-sm-8 bottom-line"
  312. style="padding-bottom:20px">
  313. <input type="text" class="form-control"
  314. name="phone"
  315. required="True"
  316. t-att-readonly="logged"
  317. t-attf-value="#{phone or ''}"
  318. placeholder="e.g. (+32).81.81.37.00"/>
  319. </div>
  320. </div>
  321. <div t-attf-class="form-group #{error and 'share_product_id' in error and 'has-error' or ''}">
  322. <label class="col-md-3 col-sm-4 control-label"
  323. style="width:25%"
  324. for="share_product_id">Parts type
  325. </label>
  326. <select id="share_product_id"
  327. name="share_product_id"
  328. class="col-md-7 col-sm-8 form-control "
  329. style="width:54%;margin-left:15px">
  330. <t t-foreach="products or []"
  331. t-as="product">
  332. <option t-att-value="product.id"
  333. t-att-selected="product.id == int(share_product_id)">
  334. <t t-esc="product.short_name"/>
  335. </option>
  336. </t>
  337. </select>
  338. </div>
  339. <div name="share_div" class="form-group">
  340. <table style="width:80%">
  341. <tr>
  342. <td width="30%">
  343. <label style="text-align:right; width:100%;padding-right:30px">
  344. Parts number
  345. </label>
  346. </td>
  347. <td width="15%">
  348. <div class="css_quantity input-group oe_website_spinner">
  349. <span class="input-group-addon"
  350. style="margin-left:0px">
  351. <a t-attf-href="#"
  352. class="mb8 js_add_cart_json">
  353. <i class="fa fa-minus"></i>
  354. </a>
  355. </span>
  356. <input type="text"
  357. class="js_quantity form-control"
  358. data-min="1"
  359. name="ordered_parts"
  360. t-attf-value="#{ordered_parts or 1}"/>
  361. <span class="input-group-addon">
  362. <a t-attf-href="#"
  363. class="mb8 float_left js_add_cart_json">
  364. <i class="fa fa-plus"></i>
  365. </a>
  366. </span>
  367. </div>
  368. </td>
  369. <td width="5%">x</td>
  370. <td id="share_price" width="5%">25
  371. </td>
  372. <td width="7%"
  373. style="text-align:left;margin-right:20px">
  374. <span t-esc="company.currency_id.symbol"/>
  375. </td>
  376. <td width="4%">=</td>
  377. <td width="20%">
  378. <div style="margin-top:12px"
  379. t-attf-class="form-group #{error and 'total_parts' in error and 'has-error' or ''}">
  380. <div>
  381. <input type="text"
  382. class="form-control total"
  383. name="total_parts"
  384. value="25"
  385. t-att-data-max="company.subscription_maximum_amount"
  386. t-att-readonly="'readonly'"
  387. />
  388. </div>
  389. </div>
  390. </td>
  391. </tr>
  392. </table>
  393. </div>
  394. <div t-if="res_company.allow_id_card_upload"
  395. t-attf-class="form-group #{error and 'file' in error and 'has-error' or ''}">
  396. <label class="col-md-3 col-sm-4 control-label"
  397. style="width:25%" for="file">Idendity
  398. card scan
  399. </label>
  400. <div class="col-md-7 col-sm-8">
  401. <input type="file" class="form-control"
  402. name="Resume"
  403. t-attf-value="#{file or ''}"
  404. style="width:50%"/>
  405. </div>
  406. </div>
  407. <div class="bottom-line"
  408. style="margin-left:178px;margin-top:0px;width:61%"></div>
  409. <br/>
  410. <div id="internal_rules_approved"
  411. t-if="display_internal_rules"
  412. t-attf-class="form-group">
  413. <label class="col-md-3 col-sm-4 control-label"
  414. for="internal_rules_approved">
  415. Internal Rules
  416. </label>
  417. <div class="col-md-9 col-sm-8">
  418. <div class="checkbox">
  419. <label>
  420. <input type="checkbox"
  421. name="internal_rules_approved"
  422. t-att-required="internal_rules_required"
  423. t-att-checked="internal_rules_approved"/>
  424. <t t-raw="internal_rules_text"/>
  425. </label>
  426. </div>
  427. </div>
  428. </div>
  429. <div id="data_policy_approved"
  430. t-if="display_data_policy"
  431. t-attf-class="form-group">
  432. <label class="col-md-3 col-sm-4 control-label"
  433. for="data_policy_approved">Privacy
  434. Policy
  435. </label>
  436. <div class="col-md-9 col-sm-8">
  437. <div class="checkbox">
  438. <label>
  439. <input type="checkbox"
  440. name="data_policy_approved"
  441. t-att-required="data_policy_required"
  442. t-att-checked="data_policy_approved"/>
  443. <t t-raw="data_policy_text"/>
  444. </label>
  445. </div>
  446. </div>
  447. </div>
  448. <div id="financial_risk_approved"
  449. t-if="display_financial_risk"
  450. t-attf-class="form-group">
  451. <label class="col-md-3 col-sm-4 control-label"
  452. for="financial_risk_approved">
  453. Financial Risk
  454. </label>
  455. <div class="col-md-9 col-sm-8">
  456. <div class="checkbox">
  457. <label>
  458. <input type="checkbox"
  459. name="financial_risk_approved"
  460. t-att-required="financial_risk_required"
  461. t-att-checked="financial_risk_approved"/>
  462. <t t-raw="financial_risk_text"/>
  463. </label>
  464. </div>
  465. </div>
  466. </div>
  467. <table style="margin-left:195px">
  468. <tr>
  469. <td width="80%">
  470. <!-- TODO: Use a overloaded function with the captcha implementation !-->
  471. <div class="g-recaptcha"
  472. t-if="website.company_id.captcha_type == 'google'"
  473. t-att-data-sitekey="website.recaptcha_key_site"
  474. data-theme="green"/>
  475. <br/>
  476. </td>
  477. <td>
  478. <div class="form-group">
  479. <div class="col-md-offset-3 col-sm-offset-4 col-sm-8 col-md-7">
  480. <button class="btn btn-primary btn-lg">
  481. Send
  482. </button>
  483. </div>
  484. </div>
  485. </td>
  486. </tr>
  487. </table>
  488. <br/>
  489. </form>
  490. </div>
  491. </div>
  492. </div>
  493. <div class="oe_structure"/>
  494. </div>
  495. </t>
  496. </template>
  497. <template id="becomecompanycooperator" name="Become Cooperator">
  498. <t t-call="website.layout">
  499. <div id="wrap">
  500. <div class="oe_structure"/>
  501. <div class="container oe_easymy_coop">
  502. <h2 class="energie">Become Cooperator</h2>
  503. <br/>
  504. <div class="row">
  505. <div class="col-md-8">
  506. <form action="/subscription/subscribe_share"
  507. method="post" class="form-horizontal mt32"
  508. enctype="multipart/form-data">
  509. <p style="color:red;">
  510. <t t-esc="error_msg"/>
  511. </p>
  512. <input type="hidden" name="csrf_token"
  513. t-att-value="request.csrf_token()"/>
  514. <div t-attf-class="form-group"
  515. style="display: none;">
  516. <label>
  517. <input type="checkbox"
  518. t-att-checked="logged"
  519. name="logged"/>
  520. Logged
  521. </label>
  522. <label>
  523. <input type="checkbox"
  524. t-att-value="is_company"
  525. checked="checked"
  526. name="is_company"/>
  527. Is a company?
  528. </label>
  529. </div>
  530. <div t-attf-class="form-group">
  531. <label>
  532. Company Info
  533. </label>
  534. </div>
  535. <div t-attf-class="form-group #{error and 'company_register_number' in error and 'has-error' or ''}">
  536. <label class="col-md-3 col-sm-4 control-label"
  537. for="company_register_number">Company
  538. Register Number
  539. </label>
  540. <div class="col-md-7 col-sm-8">
  541. <input type="text"
  542. class="form-control mandatory-field"
  543. name="company_register_number"
  544. required="True"
  545. t-att-readonly="logged"
  546. t-attf-value="#{company_register_number or ''}"
  547. placeholder="0647980091"/>
  548. </div>
  549. </div>
  550. <div t-attf-class="form-group #{error and 'company_name' in error and 'has-error' or ''}">
  551. <label class="col-md-3 col-sm-4 control-label"
  552. for="company_name">Company name
  553. </label>
  554. <div class="col-md-7 col-sm-8">
  555. <input type="text"
  556. class="form-control mandatory-field"
  557. name="company_name"
  558. required="True"
  559. t-att-readonly="logged"
  560. t-attf-value="#{company_name or ''}"
  561. placeholder="La super coopérative"/>
  562. </div>
  563. </div>
  564. <div t-attf-class="form-group #{error and 'company_type' in error and 'has-error' or ''}">
  565. <label class="col-md-3 col-sm-4 control-label"
  566. for="company_type">Company type
  567. </label>
  568. <select name="company_type"
  569. class="col-md-7 col-sm-8 form-control"
  570. required="True"
  571. t-att-readonly="logged"
  572. style="width:54%;margin-left:15px">
  573. <option value=""></option>
  574. <t t-foreach="company_types or []"
  575. t-as="type">
  576. <option t-att-value="type[0]"
  577. t-att-selected="type[0] == company_type">
  578. <t t-esc="type[1]"/>
  579. </option>
  580. </t>
  581. </select>
  582. </div>
  583. <div t-attf-class="form-group #{error and 'company_email' in error and 'has-error' or ''}">
  584. <label class="col-md-3 col-sm-4 control-label"
  585. for="company_email">Company email
  586. </label>
  587. <div class="col-md-7 col-sm-8">
  588. <input type="text"
  589. class="form-control mandatory-field"
  590. name="company_email"
  591. required="True"
  592. t-attf-value="#{company_email or ''}"
  593. placeholder="administration@beescoop.be"/>
  594. </div>
  595. </div>
  596. <div t-if="not logged"
  597. t-attf-class="form-group #{error and 'email_from' in error and 'has-error' or ''}">
  598. <label class="col-md-3 col-sm-4 control-label"
  599. for="confirm_email">Confirm Email
  600. </label>
  601. <div class="col-md-7 col-sm-8 bottom-line"
  602. style="padding-bottom:20px">
  603. <input type="confirm_email"
  604. class="form-control mandatory-field"
  605. name="confirm_email"
  606. t-att-required="not logged"
  607. t-att-readonly="logged"
  608. t-attf-value="#{confirm_email or ''}"
  609. placeholder="didier.bourdon@bees-coop.be"/>
  610. </div>
  611. </div>
  612. <div t-attf-class="form-group #{error and 'iban' in error and 'has-error' or ''}">
  613. <label class="col-md-3 col-sm-4 control-label"
  614. for="iban">Bank Account Number
  615. </label>
  616. <div class="col-md-7 col-sm-8">
  617. <input type="text"
  618. class="form-control mandatory-field"
  619. name="iban"
  620. required="True"
  621. t-att-readonly="logged"
  622. t-attf-value="#{iban or ''}"
  623. placeholder="BE48523080767127"/>
  624. </div>
  625. </div>
  626. <br/>
  627. <div t-attf-class="form-group">
  628. <label>
  629. Main Address
  630. </label>
  631. </div>
  632. <div t-attf-class="form-group #{error and 'address' in error and 'has-error' or ''}">
  633. <label class="col-md-3 col-sm-4 control-label"
  634. for="address">Address
  635. </label>
  636. <div class="col-md-7 col-sm-8">
  637. <input type="text"
  638. class="form-control mandatory-field"
  639. name="address"
  640. required="True"
  641. t-att-readonly="logged"
  642. t-attf-value="#{address or ''}"
  643. placeholder="rue Van Hove, 19"/>
  644. </div>
  645. </div>
  646. <div t-attf-class="form-group #{error and 'zip_code' in error and 'has-error' or ''}">
  647. <label class="col-md-3 col-sm-4 control-label"
  648. for="zip_code">City
  649. </label>
  650. <div class="col-md-7 col-sm-8">
  651. <table>
  652. <tr>
  653. <td width="20%">
  654. <input type="text"
  655. class="form-control mandatory-field"
  656. name="zip_code"
  657. required="True"
  658. t-att-readonly="logged"
  659. t-attf-value="#{zip_code or ''}"
  660. placeholder="1030"/>
  661. </td>
  662. <td width="3%"></td>
  663. <td>
  664. <input type="text"
  665. class="form-control mandatory-field"
  666. name="city"
  667. required="True"
  668. t-att-readonly="logged"
  669. t-attf-value="#{city or ''}"
  670. placeholder="Bruxelles"/>
  671. </td>
  672. </tr>
  673. </table>
  674. </div>
  675. </div>
  676. <div t-attf-class="form-group #{error and 'country_id' in error and 'has-error' or ''}">
  677. <label class="col-md-3 col-sm-4 control-label"
  678. style="width:25%" for="country_id">
  679. Country
  680. </label>
  681. <select name="country_id"
  682. class="col-md-7 col-sm-8 form-control"
  683. required="True"
  684. t-att-readonly="logged"
  685. style="width:54%;margin-left:15px">
  686. <option value="">Country...</option>
  687. <t t-foreach="countries or []"
  688. t-as="country">
  689. <option t-att-value="country.id"
  690. t-att-selected="country.id == int(country_id)">
  691. <t t-esc="country.name"/>
  692. </option>
  693. </t>
  694. </select>
  695. </div>
  696. <br/>
  697. <div t-attf-class="form-group">
  698. <label>
  699. Contact Person
  700. </label>
  701. </div>
  702. <div t-attf-class="form-group #{error and 'firstname' in error and 'has-error' or ''}">
  703. <label class="col-md-3 col-sm-4 control-label"
  704. for="firstname">First Name
  705. </label>
  706. <div class="col-md-7 col-sm-8"
  707. style="padding-top:5px">
  708. <input type="text"
  709. class="form-control mandatory-field"
  710. name="firstname"
  711. required="True"
  712. t-att-readonly="logged"
  713. t-attf-value="#{firstname or ''}"
  714. placeholder="Didier"/>
  715. </div>
  716. </div>
  717. <div t-attf-class="form-group #{error and 'lastname' in error and 'has-error' or ''}">
  718. <label class="col-md-3 col-sm-4 control-label"
  719. for="lastname">Last Name
  720. </label>
  721. <div class="col-md-7 col-sm-8">
  722. <input type="text"
  723. class="form-control mandatory-field"
  724. name="lastname"
  725. required="True"
  726. t-att-readonly="logged"
  727. t-attf-value="#{lastname or ''}"
  728. placeholder="Bourdon"/>
  729. </div>
  730. </div>
  731. <div t-attf-class="form-group #{error and 'gender' in error and 'has-error' or ''}">
  732. <label class="col-md-3 col-sm-4 control-label"
  733. for="gender">Gender
  734. </label>
  735. <select name="gender"
  736. class="col-md-7 col-sm-8 form-control"
  737. required="True"
  738. t-att-readonly="logged"
  739. style="width:54%;margin-left:15px">
  740. <option value=""></option>
  741. <t t-foreach="genders or []"
  742. t-as="type">
  743. <option t-att-value="type[0]"
  744. t-att-selected="type[0] == gender">
  745. <t t-esc="type[1]"/>
  746. </option>
  747. </t>
  748. </select>
  749. </div>
  750. <div name="email_from_container"
  751. t-attf-class="form-group #{error and 'email_from' in error and 'has-error' or ''}">
  752. <label class="col-md-3 col-sm-4 control-label"
  753. for="email">Email
  754. </label>
  755. <div class="col-md-7 col-sm-8 bottom-line"
  756. style="padding-bottom:20px">
  757. <input type="email"
  758. class="form-control mandatory-field"
  759. name="email"
  760. required="True"
  761. t-att-readonly="logged"
  762. t-attf-value="#{email or ''}"
  763. placeholder="didier.bourdon@bees-coop.be"/>
  764. </div>
  765. </div>
  766. <div t-attf-class="form-group #{error and 'phone' in error and 'has-error' or ''}">
  767. <label class="col-md-3 col-sm-4 control-label"
  768. for="phone">Phone
  769. </label>
  770. <div class="col-md-7 col-sm-8 bottom-line"
  771. style="padding-bottom:20px">
  772. <input type="text" class="form-control"
  773. name="phone"
  774. required="True"
  775. t-att-readonly="logged"
  776. t-attf-value="#{phone or ''}"
  777. placeholder="e.g. (+32).81.81.37.00"/>
  778. </div>
  779. </div>
  780. <div t-attf-class="form-group #{error and 'contact_person_function' in error and 'has-error' or ''}">
  781. <label class="col-md-3 col-sm-4 control-label"
  782. for="contact_person_function">
  783. Function
  784. </label>
  785. <div class="col-md-7 col-sm-8">
  786. <input type="text"
  787. class="form-control mandatory-field"
  788. name="contact_person_function"
  789. required="True"
  790. t-att-readonly="logged"
  791. t-attf-value="#{contact_person_function or ''}"/>
  792. </div>
  793. </div>
  794. <div t-attf-class="form-group #{error and 'birthday' in error and 'has-error' or ''}">
  795. <label class="col-md-3 col-sm-4 control-label"
  796. for="birthdate">Birthdate
  797. </label>
  798. <div class="col-md-7 col-sm-8">
  799. <input type="text"
  800. data-inputmask="'alias': 'date'"
  801. class="form-control mandatory-field"
  802. name="birthdate" required="True"
  803. t-att-readonly="logged"
  804. t-attf-value="#{birthdate or ''}"
  805. placeholder="05/03/1978"/>
  806. </div>
  807. </div>
  808. <div t-attf-class="form-group #{error and 'lang' in error and 'has-error' or ''}">
  809. <label class="col-md-3 col-sm-4 control-label"
  810. style="width:25%" for="lang">Language
  811. </label>
  812. <select name="lang"
  813. class="col-md-7 col-sm-8 form-control"
  814. t-att-readonly="logged"
  815. style="width:30%;margin-left:15px">
  816. <option value="2">Language...</option>
  817. <t t-foreach="langs or []"
  818. t-as="langue">
  819. <option t-att-value="langue.code"
  820. t-att-selected="langue.code == lang">
  821. <t t-esc="langue.name"/>
  822. </option>
  823. </t>
  824. </select>
  825. <br/>
  826. <div class="bottom-line"
  827. style="margin-left:25%;margin-top:35px;width:59%"></div>
  828. </div>
  829. <div t-attf-class="form-group #{error and 'product_id' in error and 'has-error' or ''}">
  830. <label class="col-md-3 col-sm-4 control-label"
  831. style="width:25%"
  832. for="share_product_id">Parts type
  833. </label>
  834. <select id="share_product_id"
  835. name="share_product_id"
  836. class="col-md-7 col-sm-8 form-control "
  837. style="width:54%;margin-left:15px">
  838. <t t-foreach="products or []"
  839. t-as="product">
  840. <option t-att-value="product.id"
  841. t-att-selected="product.id == int(share_product_id)">
  842. <t t-esc="product.short_name"/>
  843. </option>
  844. </t>
  845. </select>
  846. </div>
  847. <div name="share_div" class="form-group">
  848. <table style="width:80%">
  849. <tr>
  850. <td width="30%">
  851. <label style="text-align:right; width:100%;padding-right:30px">
  852. Parts number
  853. </label>
  854. </td>
  855. <td width="15%">
  856. <div class="css_quantity input-group oe_website_spinner">
  857. <span class="input-group-addon"
  858. style="margin-left:0px">
  859. <a t-attf-href="#"
  860. class="mb8 js_add_cart_json">
  861. <i class="fa fa-minus"></i>
  862. </a>
  863. </span>
  864. <input type="text"
  865. class="js_quantity form-control"
  866. data-min="1"
  867. name="ordered_parts"
  868. t-attf-value="#{ordered_parts or 1}"/>
  869. <span class="input-group-addon">
  870. <a t-attf-href="#"
  871. class="mb8 float_left js_add_cart_json">
  872. <i class="fa fa-plus"></i>
  873. </a>
  874. </span>
  875. </div>
  876. </td>
  877. <td width="5%">x</td>
  878. <td id="share_price" width="7%">25
  879. </td>
  880. <td width="3%"></td>
  881. <td width="5%">=</td>
  882. <td width="20%">
  883. <div style="margin-top:12px"
  884. t-attf-class="form-group #{error and 'total_parts' in error and 'has-error' or ''}">
  885. <div>
  886. <input type="text"
  887. class="form-control total"
  888. name="total_parts"
  889. value="25"
  890. data-max="5000"
  891. t-att-readonly="'readonly'"
  892. />
  893. </div>
  894. </div>
  895. </td>
  896. </tr>
  897. </table>
  898. </div>
  899. <div class="bottom-line"
  900. style="margin-left:178px;margin-top:0px;width:61%"></div>
  901. <br/>
  902. <div id="data_policy_approved"
  903. t-if="display_data_policy"
  904. t-attf-class="form-group">
  905. <label class="col-md-3 col-sm-4 control-label"
  906. for="data_policy_approved">Privacy
  907. Policy
  908. </label>
  909. <div class="col-md-9 col-sm-8">
  910. <div class="checkbox">
  911. <label>
  912. <input type="checkbox"
  913. name="data_policy_approved"
  914. t-att-required="data_policy_required"
  915. t-att-checked="data_policy_approved"/>
  916. <t t-raw="data_policy_text"/>
  917. </label>
  918. </div>
  919. </div>
  920. </div>
  921. <div id="internal_rules_approved"
  922. t-if="display_internal_rules"
  923. t-attf-class="form-group">
  924. <label class="col-md-3 col-sm-4 control-label"
  925. for="internal_rules_approved">
  926. Internal Rules
  927. </label>
  928. <div class="col-md-9 col-sm-8">
  929. <div class="checkbox">
  930. <label>
  931. <input type="checkbox"
  932. name="internal_rules_approved"
  933. t-att-required="internal_rules_required"
  934. t-att-checked="internal_rules_approved"/>
  935. <t t-raw="internal_rules_text"/>
  936. </label>
  937. </div>
  938. </div>
  939. </div>
  940. <table style="margin-left:195px">
  941. <tr>
  942. <td width="80%">
  943. <!-- TODO: Use a overloaded function with the captcha implementation !-->
  944. <div class="g-recaptcha"
  945. t-if="website.company_id.captcha_type == 'google'"
  946. t-att-data-sitekey="website.recaptcha_key_site"
  947. data-theme="green"/>
  948. <br/>
  949. </td>
  950. <td>
  951. <div class="form-group">
  952. <div class="col-md-offset-3 col-sm-offset-4 col-sm-8 col-md-7">
  953. <button class="btn btn-primary btn-lg">
  954. Send
  955. </button>
  956. </div>
  957. </div>
  958. </td>
  959. </tr>
  960. </table>
  961. <br/>
  962. </form>
  963. </div>
  964. </div>
  965. </div>
  966. <div class="oe_structure"/>
  967. </div>
  968. </t>
  969. </template>
  970. <record id="menu_becomecooperator" model="website.menu">
  971. <field name="name">Become cooperator</field>
  972. <field name="url">/page/become_cooperator</field>
  973. <field name="parent_id" ref="website.main_menu"/>
  974. <field name="sequence" type="int">65</field>
  975. </record>
  976. <!--<template id="footer_coop_email_contact" inherit_id="website.footer_default" customize_show="True" name="Coop email contact">
  977. <xpath expr="//span[@t-field='res_company.email']" position="replace">
  978. <span t-field="res_company.coop_email_contact"></span>
  979. </xpath>
  980. </template>-->
  981. <template id="company_description_coop_email_contact"
  982. inherit_id="website.company_description"
  983. name="Company Description Email Contact">
  984. <xpath expr="//div[@t-field='res_company.partner_id']"
  985. position="replace">
  986. <div t-field="res_company.partner_id" t-field-options='{
  987. "widget": "contact",
  988. "fields": ["name", "address", "phone", "mobile", "fax"]}'/>
  989. <ul class="list-unstyled">
  990. <li t-ignore="true">
  991. <i class="fa fa-envelope"></i>
  992. <span t-field="res_company.coop_email_contact"></span>
  993. </li>
  994. </ul>
  995. </xpath>
  996. </template>
  997. </odoo>