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.

1034 lines
62 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. t-att-readonly="logged"
  295. style="width:54%;margin-left:15px">
  296. <option value="">Country...</option>
  297. <t t-foreach="countries or []"
  298. t-as="country">
  299. <option t-att-value="country.id"
  300. t-att-selected="country.id == int(country_id)">
  301. <t t-esc="country.name"/>
  302. </option>
  303. </t>
  304. </select>
  305. </div>
  306. <div t-attf-class="form-group #{error and 'phone' in error and 'has-error' or ''}">
  307. <label class="col-md-3 col-sm-4 control-label"
  308. for="phone">Phone
  309. </label>
  310. <div class="col-md-7 col-sm-8 bottom-line"
  311. style="padding-bottom:20px">
  312. <input type="text" class="form-control"
  313. name="phone"
  314. required="True"
  315. t-att-readonly="logged"
  316. t-attf-value="#{phone or ''}"
  317. placeholder="e.g. (+32).81.81.37.00"/>
  318. </div>
  319. </div>
  320. <div t-attf-class="form-group #{error and 'share_product_id' in error and 'has-error' or ''}">
  321. <label class="col-md-3 col-sm-4 control-label"
  322. style="width:25%"
  323. for="share_product_id">Parts type
  324. </label>
  325. <select id="share_product_id"
  326. name="share_product_id"
  327. class="col-md-7 col-sm-8 form-control "
  328. style="width:54%;margin-left:15px">
  329. <t t-foreach="products or []"
  330. t-as="product">
  331. <option t-att-value="product.id"
  332. t-att-selected="product.id == int(share_product_id)">
  333. <t t-esc="product.short_name"/>
  334. </option>
  335. </t>
  336. </select>
  337. </div>
  338. <div name="share_div" class="form-group">
  339. <table style="width:80%">
  340. <tr>
  341. <td width="30%">
  342. <label style="text-align:right; width:100%;padding-right:30px">
  343. Parts number
  344. </label>
  345. </td>
  346. <td width="15%">
  347. <div class="css_quantity input-group oe_website_spinner">
  348. <span class="input-group-addon"
  349. style="margin-left:0px">
  350. <a t-attf-href="#"
  351. class="mb8 js_add_cart_json">
  352. <i class="fa fa-minus"></i>
  353. </a>
  354. </span>
  355. <input type="text"
  356. class="js_quantity form-control"
  357. data-min="1"
  358. name="ordered_parts"
  359. t-attf-value="#{ordered_parts or 1}"/>
  360. <span class="input-group-addon">
  361. <a t-attf-href="#"
  362. class="mb8 float_left js_add_cart_json">
  363. <i class="fa fa-plus"></i>
  364. </a>
  365. </span>
  366. </div>
  367. </td>
  368. <td width="5%">x</td>
  369. <td id="share_price" width="5%">25
  370. </td>
  371. <td width="7%"
  372. style="text-align:left;margin-right:20px">
  373. <span t-esc="company.currency_id.symbol"/>
  374. </td>
  375. <td width="4%">=</td>
  376. <td width="20%">
  377. <div style="margin-top:12px"
  378. t-attf-class="form-group #{error and 'total_parts' in error and 'has-error' or ''}">
  379. <div>
  380. <input type="text"
  381. class="form-control total"
  382. name="total_parts"
  383. value="25"
  384. t-att-data-max="company.subscription_maximum_amount"
  385. t-att-readonly="'readonly'"
  386. />
  387. </div>
  388. </div>
  389. </td>
  390. </tr>
  391. </table>
  392. </div>
  393. <div t-if="res_company.allow_id_card_upload"
  394. t-attf-class="form-group #{error and 'file' in error and 'has-error' or ''}">
  395. <label class="col-md-3 col-sm-4 control-label"
  396. style="width:25%" for="file">Idendity
  397. card scan
  398. </label>
  399. <div class="col-md-7 col-sm-8">
  400. <input type="file" class="form-control"
  401. name="Resume"
  402. t-attf-value="#{file or ''}"
  403. style="width:50%"/>
  404. </div>
  405. </div>
  406. <div class="bottom-line"
  407. style="margin-left:178px;margin-top:0px;width:61%"></div>
  408. <br/>
  409. <div id="data_policy_approved"
  410. t-if="display_data_policy"
  411. t-attf-class="form-group">
  412. <label class="col-md-3 col-sm-4 control-label"
  413. for="data_policy_approved">Privacy
  414. Policy
  415. </label>
  416. <div class="col-md-9 col-sm-8">
  417. <div class="checkbox">
  418. <label>
  419. <input type="checkbox"
  420. name="data_policy_approved"
  421. t-att-required="data_policy_required"
  422. t-att-checked="data_policy_approved"/>
  423. <t t-raw="data_policy_text"/>
  424. </label>
  425. </div>
  426. </div>
  427. </div>
  428. <div id="internal_rules_approved"
  429. t-if="display_internal_rules"
  430. t-attf-class="form-group">
  431. <label class="col-md-3 col-sm-4 control-label"
  432. for="internal_rules_approved">
  433. Internal Rules
  434. </label>
  435. <div class="col-md-9 col-sm-8">
  436. <div class="checkbox">
  437. <label>
  438. <input type="checkbox"
  439. name="internal_rules_approved"
  440. t-att-required="internal_rules_required"
  441. t-att-checked="internal_rules_approved"/>
  442. <t t-raw="internal_rules_text"/>
  443. </label>
  444. </div>
  445. </div>
  446. </div>
  447. <table style="margin-left:195px">
  448. <tr>
  449. <td width="80%">
  450. <!-- TODO: Use a overloaded function with the captcha implementation !-->
  451. <div class="g-recaptcha"
  452. t-if="website.company_id.captcha_type == 'google'"
  453. t-att-data-sitekey="website.recaptcha_key_site"
  454. data-theme="green"/>
  455. <br/>
  456. </td>
  457. <td>
  458. <div class="form-group">
  459. <div class="col-md-offset-3 col-sm-offset-4 col-sm-8 col-md-7">
  460. <button class="btn btn-primary btn-lg">
  461. Send
  462. </button>
  463. </div>
  464. </div>
  465. </td>
  466. </tr>
  467. </table>
  468. <br/>
  469. </form>
  470. </div>
  471. </div>
  472. </div>
  473. <div class="oe_structure"/>
  474. </div>
  475. </t>
  476. </template>
  477. <template id="becomecompanycooperator" name="Become Cooperator">
  478. <t t-call="website.layout">
  479. <div id="wrap">
  480. <div class="oe_structure"/>
  481. <div class="container oe_easymy_coop">
  482. <h2 class="energie">Become Cooperator</h2>
  483. <br/>
  484. <div class="row">
  485. <div class="col-md-8">
  486. <form action="/subscription/subscribe_share"
  487. method="post" class="form-horizontal mt32"
  488. enctype="multipart/form-data">
  489. <p style="color:red;">
  490. <t t-esc="error_msg"/>
  491. </p>
  492. <input type="hidden" name="csrf_token"
  493. t-att-value="request.csrf_token()"/>
  494. <div t-attf-class="form-group"
  495. style="display: none;">
  496. <label>
  497. <input type="checkbox"
  498. t-att-checked="logged"
  499. name="logged"/>
  500. Logged
  501. </label>
  502. <label>
  503. <input type="checkbox"
  504. t-att-value="is_company"
  505. checked="checked"
  506. name="is_company"/>
  507. Is a company?
  508. </label>
  509. </div>
  510. <div t-attf-class="form-group">
  511. <label>
  512. Company Info
  513. </label>
  514. </div>
  515. <div t-attf-class="form-group #{error and 'company_register_number' in error and 'has-error' or ''}">
  516. <label class="col-md-3 col-sm-4 control-label"
  517. for="company_register_number">Company
  518. Register Number
  519. </label>
  520. <div class="col-md-7 col-sm-8">
  521. <input type="text"
  522. class="form-control mandatory-field"
  523. name="company_register_number"
  524. required="True"
  525. t-att-readonly="logged"
  526. t-attf-value="#{company_register_number or ''}"
  527. placeholder="0647980091"/>
  528. </div>
  529. </div>
  530. <div t-attf-class="form-group #{error and 'company_name' in error and 'has-error' or ''}">
  531. <label class="col-md-3 col-sm-4 control-label"
  532. for="company_name">Company name
  533. </label>
  534. <div class="col-md-7 col-sm-8">
  535. <input type="text"
  536. class="form-control mandatory-field"
  537. name="company_name"
  538. required="True"
  539. t-att-readonly="logged"
  540. t-attf-value="#{company_name or ''}"
  541. placeholder="La super coopérative"/>
  542. </div>
  543. </div>
  544. <div t-attf-class="form-group #{error and 'company_type' in error and 'has-error' or ''}">
  545. <label class="col-md-3 col-sm-4 control-label"
  546. for="company_type">Company type
  547. </label>
  548. <select name="company_type"
  549. class="col-md-7 col-sm-8 form-control"
  550. required="True"
  551. t-att-readonly="logged"
  552. style="width:54%;margin-left:15px">
  553. <option value=""></option>
  554. <t t-foreach="company_types or []"
  555. t-as="type">
  556. <option t-att-value="type[0]"
  557. t-att-selected="type[0] == company_type">
  558. <t t-esc="type[1]"/>
  559. </option>
  560. </t>
  561. </select>
  562. </div>
  563. <div t-attf-class="form-group #{error and 'company_email' in error and 'has-error' or ''}">
  564. <label class="col-md-3 col-sm-4 control-label"
  565. for="company_email">Company email
  566. </label>
  567. <div class="col-md-7 col-sm-8">
  568. <input type="text"
  569. class="form-control mandatory-field"
  570. name="company_email"
  571. required="True"
  572. t-attf-value="#{company_email or ''}"
  573. placeholder="administration@beescoop.be"/>
  574. </div>
  575. </div>
  576. <div t-if="not logged"
  577. t-attf-class="form-group #{error and 'email_from' in error and 'has-error' or ''}">
  578. <label class="col-md-3 col-sm-4 control-label"
  579. for="confirm_email">Confirm Email
  580. </label>
  581. <div class="col-md-7 col-sm-8 bottom-line"
  582. style="padding-bottom:20px">
  583. <input type="confirm_email"
  584. class="form-control mandatory-field"
  585. name="confirm_email"
  586. t-att-required="not logged"
  587. t-att-readonly="logged"
  588. t-attf-value="#{confirm_email or ''}"
  589. placeholder="didier.bourdon@bees-coop.be"/>
  590. </div>
  591. </div>
  592. <div t-attf-class="form-group #{error and 'iban' in error and 'has-error' or ''}">
  593. <label class="col-md-3 col-sm-4 control-label"
  594. for="iban">Bank Account Number
  595. </label>
  596. <div class="col-md-7 col-sm-8">
  597. <input type="text"
  598. class="form-control mandatory-field"
  599. name="iban"
  600. required="True"
  601. t-att-readonly="logged"
  602. t-attf-value="#{iban or ''}"
  603. placeholder="BE48523080767127"/>
  604. </div>
  605. </div>
  606. <br/>
  607. <div t-attf-class="form-group">
  608. <label>
  609. Main Address
  610. </label>
  611. </div>
  612. <div t-attf-class="form-group #{error and 'address' in error and 'has-error' or ''}">
  613. <label class="col-md-3 col-sm-4 control-label"
  614. for="address">Address
  615. </label>
  616. <div class="col-md-7 col-sm-8">
  617. <input type="text"
  618. class="form-control mandatory-field"
  619. name="address"
  620. required="True"
  621. t-att-readonly="logged"
  622. t-attf-value="#{address or ''}"
  623. placeholder="rue Van Hove, 19"/>
  624. </div>
  625. </div>
  626. <div t-attf-class="form-group #{error and 'zip_code' in error and 'has-error' or ''}">
  627. <label class="col-md-3 col-sm-4 control-label"
  628. for="zip_code">City
  629. </label>
  630. <div class="col-md-7 col-sm-8">
  631. <table>
  632. <tr>
  633. <td width="20%">
  634. <input type="text"
  635. class="form-control mandatory-field"
  636. name="zip_code"
  637. required="True"
  638. t-att-readonly="logged"
  639. t-attf-value="#{zip_code or ''}"
  640. placeholder="1030"/>
  641. </td>
  642. <td width="3%"></td>
  643. <td>
  644. <input type="text"
  645. class="form-control mandatory-field"
  646. name="city"
  647. required="True"
  648. t-att-readonly="logged"
  649. t-attf-value="#{city or ''}"
  650. placeholder="Bruxelles"/>
  651. </td>
  652. </tr>
  653. </table>
  654. </div>
  655. </div>
  656. <div t-attf-class="form-group #{error and 'country_id' in error and 'has-error' or ''}">
  657. <label class="col-md-3 col-sm-4 control-label"
  658. style="width:25%" for="country_id">
  659. Country
  660. </label>
  661. <select name="country_id"
  662. class="col-md-7 col-sm-8 form-control"
  663. t-att-readonly="logged"
  664. style="width:54%;margin-left:15px">
  665. <option value="">Country...</option>
  666. <t t-foreach="countries or []"
  667. t-as="country">
  668. <option t-att-value="country.id"
  669. t-att-selected="country.id == int(country_id)">
  670. <t t-esc="country.name"/>
  671. </option>
  672. </t>
  673. </select>
  674. </div>
  675. <br/>
  676. <div t-attf-class="form-group">
  677. <label>
  678. Contact Person
  679. </label>
  680. </div>
  681. <div t-attf-class="form-group #{error and 'firstname' in error and 'has-error' or ''}">
  682. <label class="col-md-3 col-sm-4 control-label"
  683. for="firstname">First Name
  684. </label>
  685. <div class="col-md-7 col-sm-8"
  686. style="padding-top:5px">
  687. <input type="text"
  688. class="form-control mandatory-field"
  689. name="firstname"
  690. required="True"
  691. t-att-readonly="logged"
  692. t-attf-value="#{firstname or ''}"
  693. placeholder="Didier"/>
  694. </div>
  695. </div>
  696. <div t-attf-class="form-group #{error and 'lastname' in error and 'has-error' or ''}">
  697. <label class="col-md-3 col-sm-4 control-label"
  698. for="lastname">Last Name
  699. </label>
  700. <div class="col-md-7 col-sm-8">
  701. <input type="text"
  702. class="form-control mandatory-field"
  703. name="lastname"
  704. required="True"
  705. t-att-readonly="logged"
  706. t-attf-value="#{lastname or ''}"
  707. placeholder="Bourdon"/>
  708. </div>
  709. </div>
  710. <div t-attf-class="form-group #{error and 'gender' in error and 'has-error' or ''}">
  711. <label class="col-md-3 col-sm-4 control-label"
  712. for="gender">Gender
  713. </label>
  714. <select name="gender"
  715. class="col-md-7 col-sm-8 form-control"
  716. required="True"
  717. t-att-readonly="logged"
  718. style="width:54%;margin-left:15px">
  719. <option value=""></option>
  720. <t t-foreach="genders or []"
  721. t-as="type">
  722. <option t-att-value="type[0]"
  723. t-att-selected="type[0] == gender">
  724. <t t-esc="type[1]"/>
  725. </option>
  726. </t>
  727. </select>
  728. </div>
  729. <div name="email_from_container"
  730. t-attf-class="form-group #{error and 'email_from' in error and 'has-error' or ''}">
  731. <label class="col-md-3 col-sm-4 control-label"
  732. for="email">Email
  733. </label>
  734. <div class="col-md-7 col-sm-8 bottom-line"
  735. style="padding-bottom:20px">
  736. <input type="email"
  737. class="form-control mandatory-field"
  738. name="email"
  739. required="True"
  740. t-att-readonly="logged"
  741. t-attf-value="#{email or ''}"
  742. placeholder="didier.bourdon@bees-coop.be"/>
  743. </div>
  744. </div>
  745. <div t-attf-class="form-group #{error and 'phone' in error and 'has-error' or ''}">
  746. <label class="col-md-3 col-sm-4 control-label"
  747. for="phone">Phone
  748. </label>
  749. <div class="col-md-7 col-sm-8 bottom-line"
  750. style="padding-bottom:20px">
  751. <input type="text" class="form-control"
  752. name="phone"
  753. required="True"
  754. t-att-readonly="logged"
  755. t-attf-value="#{phone or ''}"
  756. placeholder="e.g. (+32).81.81.37.00"/>
  757. </div>
  758. </div>
  759. <div t-attf-class="form-group #{error and 'contact_person_function' in error and 'has-error' or ''}">
  760. <label class="col-md-3 col-sm-4 control-label"
  761. for="contact_person_function">
  762. Function
  763. </label>
  764. <div class="col-md-7 col-sm-8">
  765. <input type="text"
  766. class="form-control mandatory-field"
  767. name="contact_person_function"
  768. required="True"
  769. t-att-readonly="logged"
  770. t-attf-value="#{contact_person_function or ''}"/>
  771. </div>
  772. </div>
  773. <div t-attf-class="form-group #{error and 'birthday' in error and 'has-error' or ''}">
  774. <label class="col-md-3 col-sm-4 control-label"
  775. for="birthdate">Birthdate
  776. </label>
  777. <div class="col-md-7 col-sm-8">
  778. <input type="text"
  779. data-inputmask="'alias': 'date'"
  780. class="form-control mandatory-field"
  781. name="birthdate" required="True"
  782. t-att-readonly="logged"
  783. t-attf-value="#{birthdate or ''}"
  784. placeholder="05/03/1978"/>
  785. </div>
  786. </div>
  787. <div t-attf-class="form-group #{error and 'lang' in error and 'has-error' or ''}">
  788. <label class="col-md-3 col-sm-4 control-label"
  789. style="width:25%" for="lang">Language
  790. </label>
  791. <select name="lang"
  792. class="col-md-7 col-sm-8 form-control"
  793. t-att-readonly="logged"
  794. style="width:30%;margin-left:15px">
  795. <option value="2">Language...</option>
  796. <t t-foreach="langs or []"
  797. t-as="langue">
  798. <option t-att-value="langue.code"
  799. t-att-selected="langue.code == lang">
  800. <t t-esc="langue.name"/>
  801. </option>
  802. </t>
  803. </select>
  804. <br/>
  805. <div class="bottom-line"
  806. style="margin-left:25%;margin-top:35px;width:59%"></div>
  807. </div>
  808. <div t-attf-class="form-group #{error and 'product_id' in error and 'has-error' or ''}">
  809. <label class="col-md-3 col-sm-4 control-label"
  810. style="width:25%"
  811. for="share_product_id">Parts type
  812. </label>
  813. <select id="share_product_id"
  814. name="share_product_id"
  815. class="col-md-7 col-sm-8 form-control "
  816. style="width:54%;margin-left:15px">
  817. <t t-foreach="products or []"
  818. t-as="product">
  819. <option t-att-value="product.id"
  820. t-att-selected="product.id == int(share_product_id)">
  821. <t t-esc="product.short_name"/>
  822. </option>
  823. </t>
  824. </select>
  825. </div>
  826. <div name="share_div" class="form-group">
  827. <table style="width:80%">
  828. <tr>
  829. <td width="30%">
  830. <label style="text-align:right; width:100%;padding-right:30px">
  831. Parts number
  832. </label>
  833. </td>
  834. <td width="15%">
  835. <div class="css_quantity input-group oe_website_spinner">
  836. <span class="input-group-addon"
  837. style="margin-left:0px">
  838. <a t-attf-href="#"
  839. class="mb8 js_add_cart_json">
  840. <i class="fa fa-minus"></i>
  841. </a>
  842. </span>
  843. <input type="text"
  844. class="js_quantity form-control"
  845. data-min="1"
  846. name="ordered_parts"
  847. t-attf-value="#{ordered_parts or 1}"/>
  848. <span class="input-group-addon">
  849. <a t-attf-href="#"
  850. class="mb8 float_left js_add_cart_json">
  851. <i class="fa fa-plus"></i>
  852. </a>
  853. </span>
  854. </div>
  855. </td>
  856. <td width="5%">x</td>
  857. <td id="share_price" width="7%">25
  858. </td>
  859. <td width="3%"></td>
  860. <td width="5%">=</td>
  861. <td width="20%">
  862. <div style="margin-top:12px"
  863. t-attf-class="form-group #{error and 'total_parts' in error and 'has-error' or ''}">
  864. <div>
  865. <input type="text"
  866. class="form-control total"
  867. name="total_parts"
  868. value="25"
  869. data-max="5000"
  870. t-att-readonly="'readonly'"
  871. />
  872. </div>
  873. </div>
  874. </td>
  875. </tr>
  876. </table>
  877. </div>
  878. <div class="bottom-line"
  879. style="margin-left:178px;margin-top:0px;width:61%"></div>
  880. <br/>
  881. <div id="data_policy_approved"
  882. t-if="display_data_policy"
  883. t-attf-class="form-group">
  884. <label class="col-md-3 col-sm-4 control-label"
  885. for="data_policy_approved">Privacy
  886. Policy
  887. </label>
  888. <div class="col-md-9 col-sm-8">
  889. <div class="checkbox">
  890. <label>
  891. <input type="checkbox"
  892. name="data_policy_approved"
  893. t-att-required="data_policy_required"
  894. t-att-checked="data_policy_approved"/>
  895. <t t-raw="data_policy_text"/>
  896. </label>
  897. </div>
  898. </div>
  899. </div>
  900. <div id="internal_rules_approved"
  901. t-if="display_internal_rules"
  902. t-attf-class="form-group">
  903. <label class="col-md-3 col-sm-4 control-label"
  904. for="internal_rules_approved">
  905. Internal Rules
  906. </label>
  907. <div class="col-md-9 col-sm-8">
  908. <div class="checkbox">
  909. <label>
  910. <input type="checkbox"
  911. name="internal_rules_approved"
  912. t-att-required="internal_rules_required"
  913. t-att-checked="internal_rules_approved"/>
  914. <t t-raw="internal_rules_text"/>
  915. </label>
  916. </div>
  917. </div>
  918. </div>
  919. <table style="margin-left:195px">
  920. <tr>
  921. <td width="80%">
  922. <!-- TODO: Use a overloaded function with the captcha implementation !-->
  923. <div class="g-recaptcha"
  924. t-if="website.company_id.captcha_type == 'google'"
  925. t-att-data-sitekey="website.recaptcha_key_site"
  926. data-theme="green"/>
  927. <br/>
  928. </td>
  929. <td>
  930. <div class="form-group">
  931. <div class="col-md-offset-3 col-sm-offset-4 col-sm-8 col-md-7">
  932. <button class="btn btn-primary btn-lg">
  933. Send
  934. </button>
  935. </div>
  936. </div>
  937. </td>
  938. </tr>
  939. </table>
  940. <br/>
  941. </form>
  942. </div>
  943. </div>
  944. </div>
  945. <div class="oe_structure"/>
  946. </div>
  947. </t>
  948. </template>
  949. <record id="menu_becomecooperator" model="website.menu">
  950. <field name="name">Become cooperator</field>
  951. <field name="url">/page/become_cooperator</field>
  952. <field name="parent_id" ref="website.main_menu"/>
  953. <field name="sequence" type="int">65</field>
  954. </record>
  955. <!--<template id="footer_coop_email_contact" inherit_id="website.footer_default" customize_show="True" name="Coop email contact">
  956. <xpath expr="//span[@t-field='res_company.email']" position="replace">
  957. <span t-field="res_company.coop_email_contact"></span>
  958. </xpath>
  959. </template>-->
  960. <template id="company_description_coop_email_contact"
  961. inherit_id="website.company_description"
  962. name="Company Description Email Contact">
  963. <xpath expr="//div[@t-field='res_company.partner_id']"
  964. position="replace">
  965. <div t-field="res_company.partner_id" t-field-options='{
  966. "widget": "contact",
  967. "fields": ["name", "address", "phone", "mobile", "fax"]}'/>
  968. <ul class="list-unstyled">
  969. <li t-ignore="true">
  970. <i class="fa fa-envelope"></i>
  971. <span t-field="res_company.coop_email_contact"></span>
  972. </li>
  973. </ul>
  974. </xpath>
  975. </template>
  976. </odoo>