Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
aa.gusti
/
opensipkd-base
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 596b9659
authored
Dec 14, 2022
by
aagusti
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
perbaikan widget map
1 parent
6649ceb1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
61 additions
and
2 deletions
opensipkd/base/views/widget_os.py
opensipkd/base/views/widgets/readonly/gmap.pt
opensipkd/base/views/widget_os.py
View file @
596b965
import
json
import
json
import
logging
from
colander
import
SchemaNode
,
null
,
Mapping
,
Invalid
,
text_
,
string_types
from
colander
import
SchemaNode
,
null
,
Mapping
,
Invalid
,
text_
,
string_types
from
deform.widget
import
Widget
,
_StrippedString
,
Select2Widget
from
deform.widget
import
Widget
,
_StrippedString
,
Select2Widget
_logging
=
logging
.
getLogger
(
__name__
)
class
DokumenWidget
(
Widget
):
class
DokumenWidget
(
Widget
):
template
=
"opensipkd.base:/views/widgets/dokumen.pt"
template
=
"opensipkd.base:/views/widgets/dokumen.pt"
...
@@ -351,7 +352,7 @@ class MapWidget(Widget):
...
@@ -351,7 +352,7 @@ class MapWidget(Widget):
"""
"""
template
=
"opensipkd.base:views/widgets/gmap.pt"
template
=
"opensipkd.base:views/widgets/gmap.pt"
readonly_template
=
"opensipkd.base:views/widgets/gmap.pt"
readonly_template
=
"opensipkd.base:views/widgets/
readonly/
gmap.pt"
map_center
=
[
0
,
0
]
map_center
=
[
0
,
0
]
map_zoom
=
12
map_zoom
=
12
gmap_key
=
None
gmap_key
=
None
...
@@ -376,6 +377,7 @@ class MapWidget(Widget):
...
@@ -376,6 +377,7 @@ class MapWidget(Widget):
def
__init__
(
self
,
**
kw
):
def
__init__
(
self
,
**
kw
):
super
()
.
__init__
(
**
kw
)
super
()
.
__init__
(
**
kw
)
_logging
.
info
(
self
.
gmap_data_style
)
self
.
gmap_data_style
=
json
.
dumps
(
self
.
gmap_data_style
)
self
.
gmap_data_style
=
json
.
dumps
(
self
.
gmap_data_style
)
def
serialize
(
self
,
field
,
cstruct
,
**
kw
):
def
serialize
(
self
,
field
,
cstruct
,
**
kw
):
...
@@ -383,6 +385,17 @@ class MapWidget(Widget):
...
@@ -383,6 +385,17 @@ class MapWidget(Widget):
cstruct
=
""
cstruct
=
""
readonly
=
kw
.
get
(
"readonly"
,
self
.
readonly
)
readonly
=
kw
.
get
(
"readonly"
,
self
.
readonly
)
template
=
readonly
and
self
.
readonly_template
or
self
.
template
template
=
readonly
and
self
.
readonly_template
or
self
.
template
_logging
.
debug
(
self
.
gmap_data_style
)
# if readonly:
gmap_data_style
=
{
"editable"
:
not
readonly
,
"draggable"
:
not
readonly
,
"clickable"
:
True
,
"removable"
:
not
readonly
,
}
self
.
gmap_data_style
=
json
.
dumps
(
gmap_data_style
)
_logging
.
info
(
self
.
gmap_data_style
)
values
=
self
.
get_template_values
(
field
,
cstruct
,
kw
)
values
=
self
.
get_template_values
(
field
,
cstruct
,
kw
)
return
field
.
renderer
(
template
,
**
values
)
return
field
.
renderer
(
template
,
**
values
)
...
...
opensipkd/base/views/widgets/readonly/gmap.pt
0 → 100644
View file @
596b965
<span tal:define="name name|field.name;
css_class css_class|field.widget.css_class;
oid oid|field.oid;
style style|field.widget.style;
map_zoom map_zoom|field.widget.map_zoom;
map_center map_center|field.widget.map_center;
gmap_key gmap_key|field.widget.gmap_key;
gmap_height gmap_height|field.widget.gmap_height;
gmap_width gmap_width|field.widget.gmap_width;
gmap_control gmap_control|field.widget.gmap_control;
html_info html_info|field.widget.html_info;
gmap_data_style gmap_data_style|field.widget.gmap_data_style;
gmap_edit_url gmap_edit_url|field.widget.gmap_edit_url;
show_options show_options|field.widget.show_options;
"
tal:omit-tag="">
<textarea id="${oid}" name="${name}" readonly
tal:attributes="class string: form-control ${css_class or ''};
style style;
attributes|field.widget.attributes|{};">${cstruct}</textarea>
<div class="row" tal:condition="show_options">
<div id="gmap" class="gmap"></div>
<style>
.gmap {
height: ${gmap_height};
width: ${gmap_width};
}
</style>
<script type="text/javascript">
let map_zoom = ${map_zoom};
let map_center = ${map_center};
let geom = document.getElementById('${oid}');
let contents = ${html_info};
let edit_url = "${gmap_edit_url}";
let gmapDataStyle = ${structure: gmap_data_style};
let gmapControls = ${gmap_control};
//styleControls = document.getElementById("${oid}-options");
//styleControls.value = JSON.stringify(featureStyleOptions);
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?v=3&key=${gmap_key}&libraries=drawing&callback=initMap">
</script>
</span>
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment