ソースを参照

fixed handle Dodaj btns, fixed DBG

Piotr Labudda 7 年 前
コミット
c6b5d2a4e7
2 ファイル変更20 行追加16 行削除
  1. 2 1
      tools/Bocian.php
  2. 18 15
      tools/Bocian.php.addItemToRaport.js

+ 2 - 1
tools/Bocian.php

@@ -224,7 +224,8 @@ TODO: dodać możliwość wysyłania maila używajac mail()
 		UI::inlineJS(__FILE__ . '.addItemToRaport.js', [
 			'URL_FETCH_FROM_BAZA' => $this->getLink('fetchFromBazaAjax'),
 			'URL_SAVE_TO_PRACOWNICY' => $this->getLink('saveToPracownicyAjax'),
-			'URL_SAVE_TO_KONTRAHENCI' =>$this->getLink('saveToKontrahenciAjax')
+			'URL_SAVE_TO_KONTRAHENCI' =>$this->getLink('saveToKontrahenciAjax'),
+			'DBG' => V::get('DBG', 0, $_GET),
 		]);
 
 		echo '</div>'; // #smad-wrapper

+ 18 - 15
tools/Bocian.php.addItemToRaport.js

@@ -1,9 +1,9 @@
-const createReactClass = window.p5VendorJs.createReactClass;
-const h = window.p5VendorJs.React.createElement;
-const ReactDOM = window.p5VendorJs.ReactDOM;
-const AsyncTypeahead = window.p5VendorJs.AsyncTypeahead;
-const swal = window.swal;
-const DBG = 1;
+var createReactClass = window.p5VendorJs.createReactClass;
+var h = window.p5VendorJs.React.createElement;
+var ReactDOM = window.p5VendorJs.ReactDOM;
+var AsyncTypeahead = window.p5VendorJs.AsyncTypeahead;
+var swal = window.swal;
+var DBG = DBG || false;
 
 
 function convertXlinkToObjects(items) {
@@ -83,6 +83,7 @@ var P5UI_AddItemToReport_SelectKrsPerson = createReactClass({
     var krsPresons = (this.props.krs && this.props.krs['default_db__x3A__BI_audit_KRS_person:BI_audit_KRS_person'])
     ? this.props.krs['default_db__x3A__BI_audit_KRS_person:BI_audit_KRS_person']
     : [];
+    var _selectPerson = this.props.selectPerson.bind(this)
 
     return (krsPresons.length > 0)
     ? h('ol', { style: { margin: '22px', textAlign: 'left' } }, krsPresons.map(function (person) {
@@ -91,7 +92,7 @@ var P5UI_AddItemToReport_SelectKrsPerson = createReactClass({
         h('button', {
           className: "btn btn-primary",
           style: { marginLeft: "8px", padding: "4px 8px", fontSize: "small" },
-          onClick: function () { this.props.selectPerson(person) }.bind(this)
+          onClick: function () { _selectPerson(person) }
         }, "Dodaj osobę")
       ]);
     }))
@@ -210,6 +211,7 @@ var P5UI_AddItemToReport = createReactClass({
         var handleSelectNewItem = this._handleSelectNewItem.bind(this);
         var selectedBaza = this.state.baza;
         var selectedNewItem = this.state.newItemBaza;
+        var selectedItem = this.state.selected;
         var selectedLabel = '';
         if (selectedBaza) {
             var selBazaBtn = bazaBtns.filter(function (btn) { return btn.baza === selectedBaza; })
@@ -219,6 +221,7 @@ var P5UI_AddItemToReport = createReactClass({
         }
         var handleSearch = this._handleSearch.bind(this);
         var handleSelected = this._handleSelected.bind(this);
+        var _onSelect = this.props.onSelect;
         DBG && console.log('DBG: render this.state.options', this.state.options);
         return h('div', {}, [
             h('p', { style: { textAlign: "center" } }, "Wybierz bazę"),
@@ -292,25 +295,25 @@ var P5UI_AddItemToReport = createReactClass({
                 placeholder:'REGON'
               })
             ]),
-            (selectedBaza && this.state.selected) && h('div', { style: { margin: '22px' } }, [
+            (selectedBaza && selectedItem) && h('div', { style: { margin: '22px' } }, [
                 h('button', {
-                    className: "btn btn-success active",
+                    className: "btn btn-primary",
                     onClick: function () {
-                        this.props.onSelect(this.state.baza, this.state.selected);
+                        _onSelect(selectedBaza, selectedItem);
                         // ReactDOM.unmountComponentAtNode(document.getElementById('createPracownikAjax__searchBaza'));
                         // swal.close()
                     }
-                }, "Dodaj firmę")
+                }, "Dodaj firmę") // TODO:  |> KRS -> firmę, |> KRS Person -> osobę, ....
             ]),
-            ('default_db/BI_audit_KRS/BI_audit_KRS' === this.state.baza && this.state.selected) && h(P5UI_AddItemToReport_SelectKrsPerson, {
-              krs: this.state.selected,
+            ('default_db/BI_audit_KRS/BI_audit_KRS' === selectedBaza && selectedItem) && h(P5UI_AddItemToReport_SelectKrsPerson, {
+              krs: selectedItem,
               selectPerson: function (person) {
-                this.props.onSelect("default_db/BI_audit_KRS_person/BI_audit_KRS_person", person);
+                _onSelect("default_db/BI_audit_KRS_person/BI_audit_KRS_person", person);
                 // ReactDOM.unmountComponentAtNode(document.getElementById('createPracownikAjax__searchBaza'));
                 // swal.close()
               }
             }),
-            (DBG && this.state.selected) && h('pre', { style: { textAlign: 'left' } }, JSON.stringify(this.state.selected, null, 2)),
+            (DBG && selectedItem) && h('pre', { style: { textAlign: 'left' } }, JSON.stringify(selectedItem, null, 2)),
         ])
     }
 });