[Agriculture Domain] (#11663)
* created Soil Analysis, Water Analysis, Weather and Fertilizer doctype
* soil doctype edited and crop doctype added
* minor stuff
* Land Unit + Leaflet
* crop cycle added
* Land Unit changes + Crop cycle
* autoname for plant_analysis
* created Agriculture Task
* minor stuff
* - deleted agriculture_task
- current state after the call
* [Agriculture] modified fertilizer doctype to have a link to Item
This was done so that the `Fertilizer` doctype could track the contents exclusive to the fertilizer, whereas the `Fertilizer Item` could be a seperate entity, so as to leverage the existing ERPNext doctypes
* Added fields to `Water Analysis` doctype
- Collection Datetime
- Laboratory Testing Datetime
- Results Datetime (default to Laboratory Testing Datetime)
* Edited the doctypes `Agrivulture Task`, `Pest` and `Soil Texture`
- Created `agriculture task` doctype
- added fields `Common Name`, `Scientific Name`, `Treatment` and `Treatment Options` to `Pest` doctype
- edited `Soil Texture` doctype to contain a soil texture ternary plot diagram made using SnapSVG. The code was put in public folder so as to be accessible by the entire agriculture module
* Recursively reflect child land unit feature changes on parents
* fixed feature repition bug
* added legeneds to ternary plot
* added stuff
* changes
* fix Task
* reverted the Task Doctype to have naming in the form TASK.#####
* fixed modifications made to TASK doctype
* [dirty commit] added auto create Task from Crop on creation of Crop Cycle
* Changed the Crop Cycle Doctype
- Deleted the "Crop Cycly Task" doctype and its link from "Crop Cycle"
- Creation of a new Project with the same name as the Crop Cycle on creation of a new Crop Cycle
- Creation of all the tasks imported from Agriculture Task doctype of the Crop in the Crop Cycle
* [Agriculture Module] Modifications
- Created childtable doctype "Pest Detected"
- Added childtable "Pest Detected" to Pest
- Modified "Agriculture Task" to include "Start Day" and "End Day" of task
- Modified the code in "Crop Cycle" to create a parent task with same name as Crop Cycle
* [Agriculture Module] fixed Pest doctype not saving issue
* [Agrcilture Module] Changes in Crop Cycle
- removed the creation of a master task on creation of a new crop cycle
- temporary fix to add the pest tasks from the pests added in crop cycle
* land_unit_tree.js fields modified to have field objects instead of just field names
* Revert "land_unit_tree.js modified"
* land_unit_tree.js fields modified to have field objects instead of just field names
* [Agriculture Domain] Converted Agriculture Module to a Domain
- Converted into a Domain field from Select to Link field in Company doctype, linked to Domain doctype
- Agriculture (alpha) is now a Domain
* land_unit area aggregation enabled
* land_unit.py checks feature diff for every ancestor and not just the parent
* Removed unnecessary print messages
* agriculture.py modified to include fixtures
* fixtures added to setup.py inside agriculture module
* [Agriculture Domain] UI tests added
- 'materials' table renamed to 'materials_required' in 'Crop'
- wrote UI test for Crop, Fertilizer, Crop Cycle, Pest, Water Analysis, Soil Texture
- moved creation of tasks from client side to server side in Crop Cycle
- Plant Analysis, Water Analysis, Soil Analysis, Soil Texture docs are now autonamed in the format PAnalysis.#####, WAnalysis.#####, SAnalysis.#####, STexture.##### respectively
- company_name changed in domains.py from 'Schrute Farms.' to 'Schrute Farms'
* [Agriculture Domain] Mostly written server side tests and moved client side code to server side
- moved client side code to server side for Crop, Water Analysis, Pest, Soil Texture,
- wrote server side tests for Crop, Crop Cycle, Fertilizer, Soil Texture, Pest
- NOTE: none of the server side codes were tested
* [Agriculture Domain] All server side tests working locally
* [Agriculture Domain] Testing
- added sample test for Land Unit, which needs to be modified to test multiple things
- modified tests to be independant of each other
* Land Units tests added and area aggregation code migrated to server side
* added land_unit server side tests and on_trash added to land_unit
* Changing field location for start date
* [Agriculture Domain] deleted unnecessary comments
* [Agriculture Domain] reverted changes
* [Agriculture Domain] Modified the code to replace Pest doctype with Land Unit doctype
- Deleted the Pest doctype and replaced it with the more generic Disease doctype
- Deleted the Detected Pest doctype and replaced it with Detected Disease doctype
* [Agriculture Domain] resolves #11654, resolves #11653
* [Agriculture] Added links to soil analysis, soil texture, plant analysis in crop cycle and land unit
- not working perfectly yet
- docs are fetched but not appended
* [Agricuture] Crop Cycle modifed to link with relevent analysis docs, not fully functional
* [Agriculture] added seperate stage for client side agriculture tests
* [Agriculture] minor modification to crop_cycle.js test
* [Agriculture] fixed tests
* upgrade chromedriver in .travis.yml from 2.32 to 2.33
* [Agriculture] added land unit ui test
* [Agriculture] added Agriculture server side test as a seperate stage in travis
* tesing travis.yml
* [Agriculture] Crop Cycle is able to fetch linked analysis docs
* Modified travis.yml for modular server side testing
* [minor fix][Agriculture] in soil_texture
- fixed multiple soil_texture ternary plot creation on refresh
- fixed error on soil composition change
* Update .travis.yml
* removed location field from linked doctypes
* minor fixes and cleanup of agri
* minor fix in agriculture and domain patches
* permissions added to agriculture
- Agriculture Manager and Agriculture User roles were added to all Agriculture doctypes
* [Agriculture]
- Created Agiculture Analysis Criteria and added sample records to it
- All the analysis doctypes now fetch their fields inside a child table, form Agriculture Analysis Criteria
- Also Fertilizer does the same
This was introduced so that, new parameters could be added on demand
* minor changes requested in Agriculture
* minor changes
* minor fix
* Update desktop.py
* Update .travis.yml
diff --git a/erpnext/public/images/leaflet/farmer.png b/erpnext/public/images/leaflet/farmer.png
new file mode 100644
index 0000000..03e42ff
--- /dev/null
+++ b/erpnext/public/images/leaflet/farmer.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/layers-2x.png b/erpnext/public/images/leaflet/layers-2x.png
new file mode 100644
index 0000000..200c333
--- /dev/null
+++ b/erpnext/public/images/leaflet/layers-2x.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/layers.png b/erpnext/public/images/leaflet/layers.png
new file mode 100644
index 0000000..1a72e57
--- /dev/null
+++ b/erpnext/public/images/leaflet/layers.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/marker-icon-2x.png b/erpnext/public/images/leaflet/marker-icon-2x.png
new file mode 100644
index 0000000..e4abba3
--- /dev/null
+++ b/erpnext/public/images/leaflet/marker-icon-2x.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/marker-icon.png b/erpnext/public/images/leaflet/marker-icon.png
new file mode 100644
index 0000000..950edf2
--- /dev/null
+++ b/erpnext/public/images/leaflet/marker-icon.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/marker-shadow.png b/erpnext/public/images/leaflet/marker-shadow.png
new file mode 100644
index 0000000..9fd2979
--- /dev/null
+++ b/erpnext/public/images/leaflet/marker-shadow.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/spritesheet-2x.png b/erpnext/public/images/leaflet/spritesheet-2x.png
new file mode 100644
index 0000000..c45231a
--- /dev/null
+++ b/erpnext/public/images/leaflet/spritesheet-2x.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/spritesheet.png b/erpnext/public/images/leaflet/spritesheet.png
new file mode 100644
index 0000000..97d71c6
--- /dev/null
+++ b/erpnext/public/images/leaflet/spritesheet.png
Binary files differ
diff --git a/erpnext/public/images/leaflet/spritesheet.svg b/erpnext/public/images/leaflet/spritesheet.svg
new file mode 100644
index 0000000..3c00f30
--- /dev/null
+++ b/erpnext/public/images/leaflet/spritesheet.svg
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ viewBox="0 0 600 60"
+ height="60"
+ width="600"
+ id="svg4225"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="spritesheet.svg"
+ inkscape:export-filename="/home/fpuga/development/upstream/icarto.Leaflet.draw/src/images/spritesheet-2x.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata4258">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs4256" />
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1920"
+ inkscape:window-height="1056"
+ id="namedview4254"
+ showgrid="false"
+ inkscape:zoom="1.3101852"
+ inkscape:cx="237.56928"
+ inkscape:cy="7.2419621"
+ inkscape:window-x="1920"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg4225" />
+ <g
+ id="enabled"
+ style="fill:#464646;fill-opacity:1">
+ <g
+ id="polyline"
+ style="fill:#464646;fill-opacity:1">
+ <path
+ d="m 18,36 0,6 6,0 0,-6 -6,0 z m 4,4 -2,0 0,-2 2,0 0,2 z"
+ id="path4229"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ d="m 36,18 0,6 6,0 0,-6 -6,0 z m 4,4 -2,0 0,-2 2,0 0,2 z"
+ id="path4231"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ d="m 23.142,39.145 -2.285,-2.29 16,-15.998 2.285,2.285 z"
+ id="path4233"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ </g>
+ <path
+ id="polygon"
+ d="M 100,24.565 97.904,39.395 83.07,42 76,28.773 86.463,18 Z"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ id="rectangle"
+ d="m 140,20 20,0 0,20 -20,0 z"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ id="circle"
+ d="m 221,30 c 0,6.078 -4.926,11 -11,11 -6.074,0 -11,-4.922 -11,-11 0,-6.074 4.926,-11 11,-11 6.074,0 11,4.926 11,11 z"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ id="marker"
+ d="m 270,19 c -4.971,0 -9,4.029 -9,9 0,4.971 5.001,12 9,14 4.001,-2 9,-9.029 9,-14 0,-4.971 -4.029,-9 -9,-9 z m 0,12.5 c -2.484,0 -4.5,-2.014 -4.5,-4.5 0,-2.484 2.016,-4.5 4.5,-4.5 2.485,0 4.5,2.016 4.5,4.5 0,2.486 -2.015,4.5 -4.5,4.5 z"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <g
+ id="edit"
+ style="fill:#464646;fill-opacity:1">
+ <path
+ d="m 337,30.156 0,0.407 0,5.604 c 0,1.658 -1.344,3 -3,3 l -10,0 c -1.655,0 -3,-1.342 -3,-3 l 0,-10 c 0,-1.657 1.345,-3 3,-3 l 6.345,0 3.19,-3.17 -9.535,0 c -3.313,0 -6,2.687 -6,6 l 0,10 c 0,3.313 2.687,6 6,6 l 10,0 c 3.314,0 6,-2.687 6,-6 l 0,-8.809 -3,2.968"
+ id="path4240"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ d="m 338.72,24.637 -8.892,8.892 -2.828,0 0,-2.829 8.89,-8.89 z"
+ id="path4242"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ d="m 338.697,17.826 4,0 0,4 -4,0 z"
+ transform="matrix(-0.70698336,-0.70723018,0.70723018,-0.70698336,567.55917,274.78273)"
+ id="path4244"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ </g>
+ <g
+ id="remove"
+ style="fill:#464646;fill-opacity:1">
+ <path
+ d="m 381,42 18,0 0,-18 -18,0 0,18 z m 14,-16 2,0 0,14 -2,0 0,-14 z m -4,0 2,0 0,14 -2,0 0,-14 z m -4,0 2,0 0,14 -2,0 0,-14 z m -4,0 2,0 0,14 -2,0 0,-14 z"
+ id="path4247"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ <path
+ d="m 395,20 0,-4 -10,0 0,4 -6,0 0,2 22,0 0,-2 -6,0 z m -2,0 -6,0 0,-2 6,0 0,2 z"
+ id="path4249"
+ inkscape:connector-curvature="0"
+ style="fill:#464646;fill-opacity:1" />
+ </g>
+ </g>
+ <g
+ id="disabled"
+ transform="translate(120,0)"
+ style="fill:#bbbbbb">
+ <use
+ xlink:href="#edit"
+ id="edit-disabled"
+ x="0"
+ y="0"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#remove"
+ id="remove-disabled"
+ x="0"
+ y="0"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:none;stroke:#464646;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="circle-3"
+ d="m 581.65725,30 c 0,6.078 -4.926,11 -11,11 -6.074,0 -11,-4.922 -11,-11 0,-6.074 4.926,-11 11,-11 6.074,0 11,4.926 11,11 z"
+ inkscape:connector-curvature="0" />
+</svg>