{"action":"closed","number":3128,"pull_request":{"url":"https://api.github.com/repos/GeoNode/geonode/pulls/3128","id":125207920,"html_url":"https://github.com/GeoNode/geonode/pull/3128","diff_url":"https://github.com/GeoNode/geonode/pull/3128.diff","patch_url":"https://github.com/GeoNode/geonode/pull/3128.patch","issue_url":"https://api.github.com/repos/GeoNode/geonode/issues/3128","number":3128,"state":"closed","locked":false,"title":"Fix missing frontend dependencies for leaflet.","user":{"login":"lucernae","id":831865,"avatar_url":"https://avatars1.githubusercontent.com/u/831865?v=3","gravatar_id":"","url":"https://api.github.com/users/lucernae","html_url":"https://github.com/lucernae","followers_url":"https://api.github.com/users/lucernae/followers","following_url":"https://api.github.com/users/lucernae/following{/other_user}","gists_url":"https://api.github.com/users/lucernae/gists{/gist_id}","starred_url":"https://api.github.com/users/lucernae/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucernae/subscriptions","organizations_url":"https://api.github.com/users/lucernae/orgs","repos_url":"https://api.github.com/users/lucernae/repos","events_url":"https://api.github.com/users/lucernae/events{/privacy}","received_events_url":"https://api.github.com/users/lucernae/received_events","type":"User","site_admin":false},"body":"Related with issue #3116.\r\n@simod can you please review this, because I'm not too familiar with bower and gruntfile.\r\nI tried to follow the existing pattern and code practice in Geonode's staticfiles, but you can comment on it if you see something is not right.\r\n@afabiani you might want to review this too, because I saw you made latest changes in layer_leaflet_map.html, so you are probably more familiar in this.\r\n\r\n# Changelist\r\n\r\n## Included to bower.json\r\n\r\n* Leaflet opacity control plugin\r\n* Leaflet measure plugin\r\n* Leaflet navbar plugin\r\n\r\n## Modify gruntfile tasks\r\n\r\n* Modify css url images regex pattern for replace task\r\n* Create another minified file for leaflet plugins\r\n* Refactor some js filename to match in what used in the template when\r\n  DEBUG_STATIC is true\r\n* Add task replace for task production\r\n\r\n## Related changes\r\n\r\n* Included images from library from grunt copy:development task\r\n* New minified js for assets.min.js and leaflet-plugins.min.js from\r\n  production task\r\n* New minified css for assets.min.css and leaflet-plugins.min.css\r\n* Moved some pngs from lib/css folder to lib/img from the new replace task\r\n\r\n# Testing Environment\r\n\r\n## Django settings\r\n\r\nUsing DEBUG_STATIC = True\r\n\r\n```\r\nDEBUG_STATIC = True\r\nLAYER_PREVIEW_LIBRARY = 'leaflet'\r\n# can be seen in geonode/settings.py\r\nLEAFLET_CONFIG = {\r\n    'TILES': [\r\n        # Find tiles at:\r\n        # http://leaflet-extras.github.io/leaflet-providers/preview/\r\n\r\n        # Stamen toner lite.\r\n        ('Watercolor',\r\n         'http://{s}.tile.stamen.com/watercolor/{z}/{x}/{y}.png',\r\n         'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, \\\r\n         <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> \\\r\n         &mdash; Map data &copy; \\\r\n         <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors, \\\r\n         <a href=\"http://creativecommons.org/licenses/by-sa/2.0/\"> \\\r\n         CC-BY-SA</a>'),\r\n        ('Toner Lite',\r\n         'http://{s}.tile.stamen.com/toner-lite/{z}/{x}/{y}.png',\r\n         'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, \\\r\n         <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> \\\r\n         &mdash; Map data &copy; \\\r\n         <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors, \\\r\n         <a href=\"http://creativecommons.org/licenses/by-sa/2.0/\"> \\\r\n         CC-BY-SA</a>'),\r\n    ],\r\n    'PLUGINS': {\r\n        'esri-leaflet': {\r\n            'js': 'lib/js/esri-leaflet.js',\r\n            'auto-include': True,\r\n        },\r\n        'leaflet-fullscreen': {\r\n            'css': 'lib/css/leaflet.fullscreen.css',\r\n            'js': 'lib/js/Leaflet.fullscreen.min.js',\r\n            'auto-include': True,\r\n        },\r\n        'leaflet-opacity': {\r\n            'css': 'lib/css/Control.Opacity.css',\r\n            'js': 'lib/js/Control.Opacity.js',\r\n            'auto-include': True,\r\n        },\r\n        'leaflet-navbar': {\r\n            'css': 'lib/css/Leaflet.NavBar.css',\r\n            'js': 'lib/js/Leaflet.NavBar.js',\r\n            'auto-include': True,\r\n        },\r\n        'leaflet-measure': {\r\n            'css': 'lib/css/leaflet-measure.css',\r\n            'js': 'lib/js/leaflet-measure.js',\r\n            'auto-include': True,\r\n        },\r\n    },\r\n    'SRID': 3857,\r\n    'RESET_VIEW': False\r\n}\r\n```\r\n\r\nUsing DEBUG_STATIC = False (default production environment)\r\n\r\n```\r\nDEBUG_STATIC = False\r\nLAYER_PREVIEW_LIBRARY = 'leaflet'\r\n# can be seen in geonode/settings.py\r\nLEAFLET_CONFIG = {\r\n    'TILES': [\r\n        # Find tiles at:\r\n        # http://leaflet-extras.github.io/leaflet-providers/preview/\r\n\r\n        # Stamen toner lite.\r\n        ('Watercolor',\r\n         'http://{s}.tile.stamen.com/watercolor/{z}/{x}/{y}.png',\r\n         'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, \\\r\n         <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> \\\r\n         &mdash; Map data &copy; \\\r\n         <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors, \\\r\n         <a href=\"http://creativecommons.org/licenses/by-sa/2.0/\"> \\\r\n         CC-BY-SA</a>'),\r\n        ('Toner Lite',\r\n         'http://{s}.tile.stamen.com/toner-lite/{z}/{x}/{y}.png',\r\n         'Map tiles by <a href=\"http://stamen.com\">Stamen Design</a>, \\\r\n         <a href=\"http://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a> \\\r\n         &mdash; Map data &copy; \\\r\n         <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors, \\\r\n         <a href=\"http://creativecommons.org/licenses/by-sa/2.0/\"> \\\r\n         CC-BY-SA</a>'),\r\n    ],\r\n    'PLUGINS': {\r\n        'leaflet-plugins': {\r\n            'js': 'lib/js/leaflet-plugins.min.js',\r\n            'css': 'lib/css/leaflet-plugins.min.css',\r\n            'auto-include': True,\r\n        }\r\n    },\r\n    'SRID': 3857,\r\n    'RESET_VIEW': False\r\n}\r\n```\r\n\r\n## Tested views\r\n\r\nListed here are the views that I check (manually) to see that css and js files were resolved correctly\r\n\r\n* Layer list view ( /layers )\r\n* Layer detail view ( /layers/<layername> )\r\n\r\n## Screenshots\r\n\r\n![fix_leaflet_view](https://user-images.githubusercontent.com/831865/27051285-c073e852-4fdf-11e7-80ad-11828d3f8274.gif)\r\n\r\n\r\n## Notes\r\n\r\nThere is also a missing logo at the bottom right. I'm not sure what logo is this. Maybe geonode logo?","created_at":"2017-06-12T19:10:52Z","updated_at":"2017-06-15T05:17:43Z","closed_at":"2017-06-15T05:17:42Z","merged_at":"2017-06-15T05:17:42Z","merge_commit_sha":"4ce53938edfee64e46b915714a746b9c1d2a65c1","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/GeoNode/geonode/pulls/3128/commits","review_comments_url":"https://api.github.com/repos/GeoNode/geonode/pulls/3128/comments","review_comment_url":"https://api.github.com/repos/GeoNode/geonode/pulls/comments{/number}","comments_url":"https://api.github.com/repos/GeoNode/geonode/issues/3128/comments","statuses_url":"https://api.github.com/repos/GeoNode/geonode/statuses/473b7e7594dc78892ad71aa1ef1207d251d09635","head":{"label":"lucernae:fix_leaflet_view-upstream","ref":"fix_leaflet_view-upstream","sha":"473b7e7594dc78892ad71aa1ef1207d251d09635","user":{"login":"lucernae","id":831865,"avatar_url":"https://avatars1.githubusercontent.com/u/831865?v=3","gravatar_id":"","url":"https://api.github.com/users/lucernae","html_url":"https://github.com/lucernae","followers_url":"https://api.github.com/users/lucernae/followers","following_url":"https://api.github.com/users/lucernae/following{/other_user}","gists_url":"https://api.github.com/users/lucernae/gists{/gist_id}","starred_url":"https://api.github.com/users/lucernae/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucernae/subscriptions","organizations_url":"https://api.github.com/users/lucernae/orgs","repos_url":"https://api.github.com/users/lucernae/repos","events_url":"https://api.github.com/users/lucernae/events{/privacy}","received_events_url":"https://api.github.com/users/lucernae/received_events","type":"User","site_admin":false},"repo":{"id":40961481,"name":"geonode","full_name":"lucernae/geonode","owner":{"login":"lucernae","id":831865,"avatar_url":"https://avatars1.githubusercontent.com/u/831865?v=3","gravatar_id":"","url":"https://api.github.com/users/lucernae","html_url":"https://github.com/lucernae","followers_url":"https://api.github.com/users/lucernae/followers","following_url":"https://api.github.com/users/lucernae/following{/other_user}","gists_url":"https://api.github.com/users/lucernae/gists{/gist_id}","starred_url":"https://api.github.com/users/lucernae/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucernae/subscriptions","organizations_url":"https://api.github.com/users/lucernae/orgs","repos_url":"https://api.github.com/users/lucernae/repos","events_url":"https://api.github.com/users/lucernae/events{/privacy}","received_events_url":"https://api.github.com/users/lucernae/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/lucernae/geonode","description":"GeoNode is an open source platform that facilitates the creation, sharing, and collaborative use of geospatial data.","fork":true,"url":"https://api.github.com/repos/lucernae/geonode","forks_url":"https://api.github.com/repos/lucernae/geonode/forks","keys_url":"https://api.github.com/repos/lucernae/geonode/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lucernae/geonode/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lucernae/geonode/teams","hooks_url":"https://api.github.com/repos/lucernae/geonode/hooks","issue_events_url":"https://api.github.com/repos/lucernae/geonode/issues/events{/number}","events_url":"https://api.github.com/repos/lucernae/geonode/events","assignees_url":"https://api.github.com/repos/lucernae/geonode/assignees{/user}","branches_url":"https://api.github.com/repos/lucernae/geonode/branches{/branch}","tags_url":"https://api.github.com/repos/lucernae/geonode/tags","blobs_url":"https://api.github.com/repos/lucernae/geonode/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lucernae/geonode/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lucernae/geonode/git/refs{/sha}","trees_url":"https://api.github.com/repos/lucernae/geonode/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lucernae/geonode/statuses/{sha}","languages_url":"https://api.github.com/repos/lucernae/geonode/languages","stargazers_url":"https://api.github.com/repos/lucernae/geonode/stargazers","contributors_url":"https://api.github.com/repos/lucernae/geonode/contributors","subscribers_url":"https://api.github.com/repos/lucernae/geonode/subscribers","subscription_url":"https://api.github.com/repos/lucernae/geonode/subscription","commits_url":"https://api.github.com/repos/lucernae/geonode/commits{/sha}","git_commits_url":"https://api.github.com/repos/lucernae/geonode/git/commits{/sha}","comments_url":"https://api.github.com/repos/lucernae/geonode/comments{/number}","issue_comment_url":"https://api.github.com/repos/lucernae/geonode/issues/comments{/number}","contents_url":"https://api.github.com/repos/lucernae/geonode/contents/{+path}","compare_url":"https://api.github.com/repos/lucernae/geonode/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lucernae/geonode/merges","archive_url":"https://api.github.com/repos/lucernae/geonode/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lucernae/geonode/downloads","issues_url":"https://api.github.com/repos/lucernae/geonode/issues{/number}","pulls_url":"https://api.github.com/repos/lucernae/geonode/pulls{/number}","milestones_url":"https://api.github.com/repos/lucernae/geonode/milestones{/number}","notifications_url":"https://api.github.com/repos/lucernae/geonode/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lucernae/geonode/labels{/name}","releases_url":"https://api.github.com/repos/lucernae/geonode/releases{/id}","deployments_url":"https://api.github.com/repos/lucernae/geonode/deployments","created_at":"2015-08-18T08:56:29Z","updated_at":"2017-04-26T11:18:08Z","pushed_at":"2017-06-15T03:13:18Z","git_url":"git://github.com/lucernae/geonode.git","ssh_url":"git@github.com:lucernae/geonode.git","clone_url":"https://github.com/lucernae/geonode.git","svn_url":"https://github.com/lucernae/geonode","homepage":"http://geonode.org/","size":142813,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":false,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"GeoNode:master","ref":"master","sha":"d0f5d72fef01431ed7cb97227362d932e9d0496c","user":{"login":"GeoNode","id":132843,"avatar_url":"https://avatars3.githubusercontent.com/u/132843?v=3","gravatar_id":"","url":"https://api.github.com/users/GeoNode","html_url":"https://github.com/GeoNode","followers_url":"https://api.github.com/users/GeoNode/followers","following_url":"https://api.github.com/users/GeoNode/following{/other_user}","gists_url":"https://api.github.com/users/GeoNode/gists{/gist_id}","starred_url":"https://api.github.com/users/GeoNode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GeoNode/subscriptions","organizations_url":"https://api.github.com/users/GeoNode/orgs","repos_url":"https://api.github.com/users/GeoNode/repos","events_url":"https://api.github.com/users/GeoNode/events{/privacy}","received_events_url":"https://api.github.com/users/GeoNode/received_events","type":"Organization","site_admin":false},"repo":{"id":701765,"name":"geonode","full_name":"GeoNode/geonode","owner":{"login":"GeoNode","id":132843,"avatar_url":"https://avatars3.githubusercontent.com/u/132843?v=3","gravatar_id":"","url":"https://api.github.com/users/GeoNode","html_url":"https://github.com/GeoNode","followers_url":"https://api.github.com/users/GeoNode/followers","following_url":"https://api.github.com/users/GeoNode/following{/other_user}","gists_url":"https://api.github.com/users/GeoNode/gists{/gist_id}","starred_url":"https://api.github.com/users/GeoNode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GeoNode/subscriptions","organizations_url":"https://api.github.com/users/GeoNode/orgs","repos_url":"https://api.github.com/users/GeoNode/repos","events_url":"https://api.github.com/users/GeoNode/events{/privacy}","received_events_url":"https://api.github.com/users/GeoNode/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/GeoNode/geonode","description":"GeoNode is an open source platform that facilitates the creation, sharing, and collaborative use of geospatial data.","fork":false,"url":"https://api.github.com/repos/GeoNode/geonode","forks_url":"https://api.github.com/repos/GeoNode/geonode/forks","keys_url":"https://api.github.com/repos/GeoNode/geonode/keys{/key_id}","collaborators_url":"https://api.github.com/repos/GeoNode/geonode/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/GeoNode/geonode/teams","hooks_url":"https://api.github.com/repos/GeoNode/geonode/hooks","issue_events_url":"https://api.github.com/repos/GeoNode/geonode/issues/events{/number}","events_url":"https://api.github.com/repos/GeoNode/geonode/events","assignees_url":"https://api.github.com/repos/GeoNode/geonode/assignees{/user}","branches_url":"https://api.github.com/repos/GeoNode/geonode/branches{/branch}","tags_url":"https://api.github.com/repos/GeoNode/geonode/tags","blobs_url":"https://api.github.com/repos/GeoNode/geonode/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/GeoNode/geonode/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/GeoNode/geonode/git/refs{/sha}","trees_url":"https://api.github.com/repos/GeoNode/geonode/git/trees{/sha}","statuses_url":"https://api.github.com/repos/GeoNode/geonode/statuses/{sha}","languages_url":"https://api.github.com/repos/GeoNode/geonode/languages","stargazers_url":"https://api.github.com/repos/GeoNode/geonode/stargazers","contributors_url":"https://api.github.com/repos/GeoNode/geonode/contributors","subscribers_url":"https://api.github.com/repos/GeoNode/geonode/subscribers","subscription_url":"https://api.github.com/repos/GeoNode/geonode/subscription","commits_url":"https://api.github.com/repos/GeoNode/geonode/commits{/sha}","git_commits_url":"https://api.github.com/repos/GeoNode/geonode/git/commits{/sha}","comments_url":"https://api.github.com/repos/GeoNode/geonode/comments{/number}","issue_comment_url":"https://api.github.com/repos/GeoNode/geonode/issues/comments{/number}","contents_url":"https://api.github.com/repos/GeoNode/geonode/contents/{+path}","compare_url":"https://api.github.com/repos/GeoNode/geonode/compare/{base}...{head}","merges_url":"https://api.github.com/repos/GeoNode/geonode/merges","archive_url":"https://api.github.com/repos/GeoNode/geonode/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/GeoNode/geonode/downloads","issues_url":"https://api.github.com/repos/GeoNode/geonode/issues{/number}","pulls_url":"https://api.github.com/repos/GeoNode/geonode/pulls{/number}","milestones_url":"https://api.github.com/repos/GeoNode/geonode/milestones{/number}","notifications_url":"https://api.github.com/repos/GeoNode/geonode/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/GeoNode/geonode/labels{/name}","releases_url":"https://api.github.com/repos/GeoNode/geonode/releases{/id}","deployments_url":"https://api.github.com/repos/GeoNode/geonode/deployments","created_at":"2010-06-03T18:14:47Z","updated_at":"2017-06-09T07:15:46Z","pushed_at":"2017-06-15T05:17:42Z","git_url":"git://github.com/GeoNode/geonode.git","ssh_url":"git@github.com:GeoNode/geonode.git","clone_url":"https://github.com/GeoNode/geonode.git","svn_url":"https://github.com/GeoNode/geonode","homepage":"http://geonode.org/","size":141076,"stargazers_count":505,"watchers_count":505,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":517,"mirror_url":null,"open_issues_count":336,"forks":517,"open_issues":336,"watchers":505,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/GeoNode/geonode/pulls/3128"},"html":{"href":"https://github.com/GeoNode/geonode/pull/3128"},"issue":{"href":"https://api.github.com/repos/GeoNode/geonode/issues/3128"},"comments":{"href":"https://api.github.com/repos/GeoNode/geonode/issues/3128/comments"},"review_comments":{"href":"https://api.github.com/repos/GeoNode/geonode/pulls/3128/comments"},"review_comment":{"href":"https://api.github.com/repos/GeoNode/geonode/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/GeoNode/geonode/pulls/3128/commits"},"statuses":{"href":"https://api.github.com/repos/GeoNode/geonode/statuses/473b7e7594dc78892ad71aa1ef1207d251d09635"}},"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"simod","id":779380,"avatar_url":"https://avatars3.githubusercontent.com/u/779380?v=3","gravatar_id":"","url":"https://api.github.com/users/simod","html_url":"https://github.com/simod","followers_url":"https://api.github.com/users/simod/followers","following_url":"https://api.github.com/users/simod/following{/other_user}","gists_url":"https://api.github.com/users/simod/gists{/gist_id}","starred_url":"https://api.github.com/users/simod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simod/subscriptions","organizations_url":"https://api.github.com/users/simod/orgs","repos_url":"https://api.github.com/users/simod/repos","events_url":"https://api.github.com/users/simod/events{/privacy}","received_events_url":"https://api.github.com/users/simod/received_events","type":"User","site_admin":false},"comments":7,"review_comments":16,"maintainer_can_modify":false,"commits":1,"additions":195,"deletions":131,"changed_files":63}}
{"actor":{"display_login":"simod"}}