Skip to content

Commit

Permalink
improvements in rendering of meeting api response
Browse files Browse the repository at this point in the history
  • Loading branch information
dubeyji10 committed Jul 14, 2022
1 parent 3953087 commit b021c31
Show file tree
Hide file tree
Showing 8 changed files with 272 additions and 135 deletions.
Binary file modified getdata/__pycache__/urls.cpython-38.pyc
Binary file not shown.
Binary file modified getdata/__pycache__/views.cpython-38.pyc
Binary file not shown.
2 changes: 1 addition & 1 deletion getdata/gotomeeting/refresh_tokens.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"access_token":"eyJraWQiOiJvYXV0aHYyLmxtaS5jb20uMDIxOSIsImFsZyI6IlJTNTEyIn0.eyJzYyI6ImNhbGwtY29udHJvbC52MS5jYWxscy5jb250cm9sIGNhbGxzLnYyLmluaXRpYXRlIG1lc3NhZ2luZy52MS53cml0ZSBpZGVudGl0eTpzY2ltLm9yZyByZWFsdGltZS52Mi5ub3RpZmljYXRpb25zLm1hbmFnZSBmYXgudjEucmVhZCBtZXNzYWdpbmcudjEubm90aWZpY2F0aW9ucy5tYW5hZ2Ugc3VwcG9ydDogbWVzc2FnaW5nLnYxLnNlbmQgZmF4LnYxLndyaXRlIGlkZW50aXR5OiBtZXNzYWdpbmcudjEucmVhZCB3ZWJydGMudjEucmVhZCB3ZWJydGMudjEud3JpdGUgY29sbGFiOiBjci52MS5yZWFkIGZheC52MS5ub3RpZmljYXRpb25zLm1hbmFnZSB1c2Vycy52MS5saW5lcy5yZWFkIiwic3ViIjoiMTA1MzgxODUyNTQ4NTQ2NDU5MCIsImF1ZCI6ImE3NWY4NzZkLWNiNTgtNDA0Yy1iNWMwLTRlOTFkOWJjNDA1MiIsIm9nbiI6InB3ZCIsInR5cCI6ImEiLCJleHAiOjE2NTc2MzMyODAsImlhdCI6MTY1NzYyOTY4MCwianRpIjoiODRiMWY2OGEtZmM5ZS00NTg3LTk4YzEtYjAxZDk0MDQxNTA4In0.dEczbHEbpJJWWekb8W5rBEzhZSoOsJ86pmBpXRorb0X6L5QIMZhxBX6-s0IbThGsI4P1y-5x4M7GyaByqdr6MEW_7iC4xKV9SPaz7ZR5uWb5X_q0NEZ9QcWnYh0Xr3S33Ik7W92F1uQ-j_BoVzMKQstIDNJy6KM71AEuC3X0ivrb4nrFTYWhUv3DLRQm_jNhFb67Ag1AcdlQTpRqIewQAikxo2o9suitRVxn9xuZIiMpx9CvBLYcXXb25qlFaqHqqBwj7DoJgnDPjKGKSRAOSgxl74jiRLP33l6y2kke5gVUPO6LB-PRfxeFgKiKsiI6_f6kuGrnNiDQjyDflhmxMg","token_type":"Bearer","refresh_token":"eyJraWQiOiJvYXV0aHYyLmxtaS5jb20uMDIxOSIsImFsZyI6IlJTNTEyIn0.eyJzYyI6ImNhbGwtY29udHJvbC52MS5jYWxscy5jb250cm9sIGNhbGxzLnYyLmluaXRpYXRlIG1lc3NhZ2luZy52MS53cml0ZSBpZGVudGl0eTpzY2ltLm9yZyByZWFsdGltZS52Mi5ub3RpZmljYXRpb25zLm1hbmFnZSBmYXgudjEucmVhZCBtZXNzYWdpbmcudjEubm90aWZpY2F0aW9ucy5tYW5hZ2Ugc3VwcG9ydDogbWVzc2FnaW5nLnYxLnNlbmQgZmF4LnYxLndyaXRlIGlkZW50aXR5OiBtZXNzYWdpbmcudjEucmVhZCB3ZWJydGMudjEucmVhZCB3ZWJydGMudjEud3JpdGUgY29sbGFiOiBjci52MS5yZWFkIGZheC52MS5ub3RpZmljYXRpb25zLm1hbmFnZSB1c2Vycy52MS5saW5lcy5yZWFkIiwic3ViIjoiMTA1MzgxODUyNTQ4NTQ2NDU5MCIsImF1ZCI6ImE3NWY4NzZkLWNiNTgtNDA0Yy1iNWMwLTRlOTFkOWJjNDA1MiIsIm9nbiI6InB3ZCIsInR5cCI6InIiLCJleHAiOjE2NTk5NTkxNDgsImlhdCI6MTY1NzM2NzE0OCwianRpIjoiZTU4OWYxODMtNWIzYy00YWY3LTgwOTktYjI3ODVkOTEyZjc0In0.Kh6z3qEdwY8_2RgcywN_2wPHJn5uNb2IPAAg_zSfxdelA604TGxTk3R-7BQBx9BgUJaxWis-tlrQJTHfNSD1nARQuwp6TqWl0uaInCYZu_T80UypaRVaJo1d1N6y9iw_003p0Rv0q1L5QeeOAkODQL1hd54gAIvKplZTxSmaEBoVmOvoEPYtaKTGQX3A1vV9M2wIo8yJ6mfG8jzv9-y6dkGo6CBaeprb3akWjJRQoS2cSw74j8IzRpzKOljUBotFU4UjU3TrSqqo7idE_KQpqbhp0ch_Fzk52kDctmR2vkAgJfxtbeGpCTjiM4jSqa_ZXugLvo3V5BeInhVfMIccww","expires_in":3600,"account_key":"4866136500775517190","email":"coachofanalytics@gmail.com","firstName":"CROWN","lastName":"DATA ANALYSIS AND CONSULTANCY SERVICES","organizer_key":"1053818525485464590","version":"3","account_type":""}
{"access_token":"eyJraWQiOiJvYXV0aHYyLmxtaS5jb20uMDIxOSIsImFsZyI6IlJTNTEyIn0.eyJzYyI6ImNhbGwtY29udHJvbC52MS5jYWxscy5jb250cm9sIGNhbGxzLnYyLmluaXRpYXRlIG1lc3NhZ2luZy52MS53cml0ZSBpZGVudGl0eTpzY2ltLm9yZyByZWFsdGltZS52Mi5ub3RpZmljYXRpb25zLm1hbmFnZSBmYXgudjEucmVhZCBtZXNzYWdpbmcudjEubm90aWZpY2F0aW9ucy5tYW5hZ2Ugc3VwcG9ydDogbWVzc2FnaW5nLnYxLnNlbmQgZmF4LnYxLndyaXRlIGlkZW50aXR5OiBtZXNzYWdpbmcudjEucmVhZCB3ZWJydGMudjEucmVhZCB3ZWJydGMudjEud3JpdGUgY29sbGFiOiBjci52MS5yZWFkIGZheC52MS5ub3RpZmljYXRpb25zLm1hbmFnZSB1c2Vycy52MS5saW5lcy5yZWFkIiwic3ViIjoiMTA1MzgxODUyNTQ4NTQ2NDU5MCIsImF1ZCI6ImE3NWY4NzZkLWNiNTgtNDA0Yy1iNWMwLTRlOTFkOWJjNDA1MiIsIm9nbiI6InB3ZCIsInR5cCI6ImEiLCJleHAiOjE2NTc4MDU4MTYsImlhdCI6MTY1NzgwMjIxNiwianRpIjoiMmM3MWIyNGUtODgyMy00NzA1LWEzMmYtYzI3Nzg4Y2RjY2Q4In0.NwFq_Mn3xkD5AZW89pRfGyxsj05NNmEt5WvZgZZdTHeme53ZrzNGoVgbtdlZs6U5mSawaugbsDPU6aBaT1GY7rs0C3SrnYScAiRB9dgKr-ugyO3GhGL4dwB6hXh31uwhLSO64_u_AVrlyrSFlilX3mw-z52F6fchuXo0OynyqQUFwg3F8ekTENU9PvgIZqQcZIOveK82EghKjVVneVBtN1aHg3qHIkCsDYbkjy3cQXCDUfCjsfAxrMLKYPXlqBYc2bc9fgaw-Euo8wQH6b2OkgRMZDkd6kZ-CA4A72RbcYVK-2KCd82LdvgwfDSBWnqVx6-8o5emEICYi2RLOXfJUg","token_type":"Bearer","refresh_token":"eyJraWQiOiJvYXV0aHYyLmxtaS5jb20uMDIxOSIsImFsZyI6IlJTNTEyIn0.eyJzYyI6ImNhbGwtY29udHJvbC52MS5jYWxscy5jb250cm9sIGNhbGxzLnYyLmluaXRpYXRlIG1lc3NhZ2luZy52MS53cml0ZSBpZGVudGl0eTpzY2ltLm9yZyByZWFsdGltZS52Mi5ub3RpZmljYXRpb25zLm1hbmFnZSBmYXgudjEucmVhZCBtZXNzYWdpbmcudjEubm90aWZpY2F0aW9ucy5tYW5hZ2Ugc3VwcG9ydDogbWVzc2FnaW5nLnYxLnNlbmQgZmF4LnYxLndyaXRlIGlkZW50aXR5OiBtZXNzYWdpbmcudjEucmVhZCB3ZWJydGMudjEucmVhZCB3ZWJydGMudjEud3JpdGUgY29sbGFiOiBjci52MS5yZWFkIGZheC52MS5ub3RpZmljYXRpb25zLm1hbmFnZSB1c2Vycy52MS5saW5lcy5yZWFkIiwic3ViIjoiMTA1MzgxODUyNTQ4NTQ2NDU5MCIsImF1ZCI6ImE3NWY4NzZkLWNiNTgtNDA0Yy1iNWMwLTRlOTFkOWJjNDA1MiIsIm9nbiI6InB3ZCIsInR5cCI6InIiLCJleHAiOjE2NTk5NTkxNDgsImlhdCI6MTY1NzM2NzE0OCwianRpIjoiZTU4OWYxODMtNWIzYy00YWY3LTgwOTktYjI3ODVkOTEyZjc0In0.Kh6z3qEdwY8_2RgcywN_2wPHJn5uNb2IPAAg_zSfxdelA604TGxTk3R-7BQBx9BgUJaxWis-tlrQJTHfNSD1nARQuwp6TqWl0uaInCYZu_T80UypaRVaJo1d1N6y9iw_003p0Rv0q1L5QeeOAkODQL1hd54gAIvKplZTxSmaEBoVmOvoEPYtaKTGQX3A1vV9M2wIo8yJ6mfG8jzv9-y6dkGo6CBaeprb3akWjJRQoS2cSw74j8IzRpzKOljUBotFU4UjU3TrSqqo7idE_KQpqbhp0ch_Fzk52kDctmR2vkAgJfxtbeGpCTjiM4jSqa_ZXugLvo3V5BeInhVfMIccww","expires_in":3600,"account_key":"4866136500775517190","email":"coachofanalytics@gmail.com","firstName":"CROWN","lastName":"DATA ANALYSIS AND CONSULTANCY SERVICES","organizer_key":"1053818525485464590","version":"3","account_type":""}
32 changes: 32 additions & 0 deletions getdata/templates/getdata/meetingDetails.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{% extends "main/base_templates/base.html" %} {% block content %}

<style>
#meetingItem{
display: grid;
grid-template-columns: inherit;
width: 63%;
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
border-bottom-right-radius: 20px;
padding: 10px 10px 10px 10px;
background-color: antiquewhite;
font-size: large;
color: black;
}

#message{
text-align: center;
font-size: 1.53em;
padding-top: 10px;
}
</style>
<div id="message"> --- {{ data }} --- </div>
{% for item in info %}
<hr>
<div id="meetingItem">
<div>{{item.name}} (email : {{item.attendeeEmail}} ) joined at {{item.joinTime}} left meeting at {{item.leaveTime}}</div>
</div>

{% endfor %}
<hr>
{% endblock content%}
174 changes: 54 additions & 120 deletions getdata/templates/getdata/meetingList.html
Original file line number Diff line number Diff line change
@@ -1,129 +1,63 @@

<html>
<style>

#tableData{
background-color: rgb(247, 221, 175);
padding-top: 20px;
padding-bottom: 20px;
padding-left: 1%;
padding-right: 1%;
margin-left: 2%;
margin-right: 2%;
}
#tableTopic_wrapper , #tableTopic_length{
margin-right: 10px;
margin-bottom: 20px;
}
#tableTopic tr{
background-color: antiquewhite;
font-size: smaller;
}
#tableTopic td{
background-color: rgb(253, 245, 245);
color: #000000;
font-size: smaller;
white-space: pre;
}



</style>
<style>

<title>Meetings List</title>

<h1>

not extending base template --
<br>has multiple versions of jquery which results in datatables rendering error

</h1>

<!-- datatables cdn -->

<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/r/dt/dt-1.10.22/datatables.min.css"/>
<!-- ✅ load jQuery ✅ -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- ✅ load DataTables ✅ -->
<script type="text/javascript" src="https://cdn.datatables.net/r/dt/dt-1.10.22/datatables.min.js"></script>


<!-- datatables cdn end -->
#message{
text-align: center;
font-size: 1.22em;

}
#item{
font-size: 1.11rem;
display: grid;
grid-template-columns: repeat(7,1fr);
justify-content:space-around;
padding: 10px 10px 10px 5px;
background-color: rgb(134, 243, 166);
color: rgb(12, 7, 7);
}

#item div{
text-align: center;
}
.meeting{
font-size: 1.05em;
}

</style>


<div id="message">---- {{message}} ----</div>

<br>
<div>
<div id="item">
<div>Name</div>
<div>MeetingType</div>
<div>MeetingID</div>
<div>Attendance</div>
<div>start</div>
<div>end</div>
<div>more details</div>
</div>


<script>
{% for item in data %}
<hr>
<div id="item">
<div>{{item.subject}}</div>
<div>{{item.meetingType}}</div>
<div> {{item.meetingId}} </div>
<div>{{item.numAttendees}}</div>
<div>{{item.startTime}}</div>
<div>{{item.endTime}}</div>
<div> <a href="{{item.meetingId}}" class="meeting" target="_blank" id={{item.meetingId}}> more </a></div>
</div>
{% endfor %}
<hr>

$(document).ready(function() {
getDataForDatatables();
});
</div>

console.log("---running this---");
var myMeetingsJson = "{{data}}";
const enocodedjson = myMeetingsJson;
const json = enocodedjson.replace(/&#x27;/gm, '"');
const myData = JSON.parse(json);

function getDataForDatatables(){

var jsonData = {
"data" : myData
};
setDataToTable(jsonData);
}


/* set data tables */
function setDataToTable(jsonData){
console.log("__________1__________");
console.log(jsonData);
console.log("\n\n ......................... 2 ......................... \n\n");
$('#tableTopic').DataTable( {
pagination: "bootstrap",
filter:true,
data: jsonData.data,
destroy: true,
lengthMenu:[5,10],
pageLength: 50,
"columns":[
{ "data" : "subject" },
{ "data" : "meetingId" },
{ "data" : "duration" },
{ "data" : "numAttendees" },
{ "data" : "startTime" },
{ "data" : "endTime" },
{ "data" : "recording" },

]
} );
}
</script>

<div id="proper-rendering">
here proper rendering of data
</div>
<div>
Message : {{message}}
<br><hr>
<div> using datatables to render </div><br><hr><br>
<div id="body">

<div id="tableData">
<table id="tableTopic" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>Subject</th>
<th>ID</th>
<th>Duration</th>
<th>Number of Attendees</th>
<th>Start</th>
<th>End</th>
<th>recording</th>
</tr>
</thead>
</table>
</div>
</html>

</div>

</div>
</html>
129 changes: 129 additions & 0 deletions getdata/templates/getdata/old_meetingList.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@

<html>
<style>

#tableData{
background-color: rgb(247, 221, 175);
padding-top: 20px;
padding-bottom: 20px;
padding-left: 1%;
padding-right: 1%;
margin-left: 2%;
margin-right: 2%;
}
#tableTopic_wrapper , #tableTopic_length{
margin-right: 10px;
margin-bottom: 20px;
}
#tableTopic tr{
background-color: antiquewhite;
font-size: smaller;
}
#tableTopic td{
background-color: rgb(253, 245, 245);
color: #000000;
font-size: smaller;
white-space: pre;
}



</style>

<title>Meetings List</title>

<h1>

not extending base template --
<br>has multiple versions of jquery which results in datatables rendering error

</h1>

<!-- datatables cdn -->

<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/r/dt/dt-1.10.22/datatables.min.css"/>
<!-- ✅ load jQuery ✅ -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- ✅ load DataTables ✅ -->
<script type="text/javascript" src="https://cdn.datatables.net/r/dt/dt-1.10.22/datatables.min.js"></script>


<!-- datatables cdn end -->


<script>

$(document).ready(function() {
getDataForDatatables();
});

console.log("---running this---");
var myMeetingsJson = "{{data}}";
const enocodedjson = myMeetingsJson;
const json = enocodedjson.replace(/&#x27;/gm, '"');
const myData = JSON.parse(json);

function getDataForDatatables(){

var jsonData = {
"data" : myData
};
setDataToTable(jsonData);
}


/* set data tables */
function setDataToTable(jsonData){
console.log("__________1__________");
console.log(jsonData);
console.log("\n\n ......................... 2 ......................... \n\n");
$('#tableTopic').DataTable( {
pagination: "bootstrap",
filter:true,
data: jsonData.data,
destroy: true,
lengthMenu:[5,10],
pageLength: 50,
"columns":[
{ "data" : "subject" },
{ "data" : "meetingId" },
{ "data" : "duration" },
{ "data" : "numAttendees" },
{ "data" : "startTime" },
{ "data" : "endTime" },
{ "data" : "recording" },

]
} );
}
</script>

<div id="proper-rendering">
here proper rendering of data
</div>
<div>
Message : {{message}}
<br><hr>
<div> using datatables to render </div><br><hr><br>
<div id="body">

<div id="tableData">
<table id="tableTopic" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>Subject</th>
<th>ID</th>
<th>Duration</th>
<th>Number of Attendees</th>
<th>Start</th>
<th>End</th>
<th>recording</th>
</tr>
</thead>
</table>
</div>

</div>

</div>
</html>
6 changes: 5 additions & 1 deletion getdata/urls.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
from django.urls import path
from . import views

from django.conf.urls import re_path

app_name = 'getdata'
urlpatterns = [
path('getrating/', views.getrating, name='data-getrating'),
path('index/', views.index, name='data-index'),
path('gotomeeting/',views.meetingFormView,name='meetingform1'),
# trying a url pattern for dates
# gotomeetingresult
path('gotomeetingresult/',views.gotomeetingresult,name='gotomeetingresult')
path('gotomeetingresult/',views.gotomeetingresult,name='gotomeetingresult'),
#meeting detail
re_path(r'^gotomeeting/(?P<meeting_id>[0-9]+)$', views.meetingView6, name='gotomeetingmeeting')


]
Loading

0 comments on commit b021c31

Please sign in to comment.