Skip to content

Commit

Permalink
Merge pull request #1366 from appsembler/main
Browse files Browse the repository at this point in the history
Update from `main` (production)
  • Loading branch information
bryanlandia authored Aug 29, 2023
2 parents f4e0fd3 + b87dee6 commit 4535790
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 14 deletions.
4 changes: 2 additions & 2 deletions common/djangoapps/track/views/segmentio.py
Original file line number Diff line number Diff line change
Expand Up @@ -289,8 +289,8 @@ def send_event(request, method, **params):
segment_key = helpers.get_current_site_configuration().get_secret_value('SEGMENT_KEY')
if segment_key:
data['writeKey'] = segment_key
data['messageId'] = 'ajs-' + uuid.uuid4().hex
site_response = requests.post(url, json=data)
data['messageId'] = 'ajs-next-' + uuid.uuid4().hex
site_response = requests.post(url, json=data) # noqa: F841
return HttpResponse(
main_response.content,
status=main_response.status_code,
Expand Down
30 changes: 18 additions & 12 deletions lms/templates/widgets/segment-io.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,25 @@
% if settings.LMS_SEGMENT_KEY and settings.LMS_SEGMENT_SITE:
## begin Copy from edx-platform/cms/templates/widgets/segment-io.html
## Appsembler: begin Segment Site
<script>
!function(){
var realOpen = XMLHttpRequest.prototype.open;
var originalAPI = '${settings.SEGMENT_ORIGINAL_API}';
var replicateAPI = '${settings.SEGMENT_REPLICATE_API}';
XMLHttpRequest.prototype.open = function() {
if (arguments[1].substr(0, originalAPI.length) === originalAPI) {
arguments[1] = replicateAPI + arguments[1].substr(originalAPI.length);
<script type="text/javascript">
!function(){
var originalAPI = '${settings.SEGMENT_ORIGINAL_API}';
var replicateAPI = '${settings.SEGMENT_REPLICATE_API}';
function replaceFetchResourceForSegmentSite(resource){
if (resource.substr(0, originalAPI.length) === originalAPI) {
resource = replicateAPI + resource.substr(originalAPI.length);
}
return realOpen.apply(this, arguments);
};
}();
</script>
return resource;
}
const { fetch: originalFetch } = window;
window.fetch = async (...args) => {
let [resource, config ] = args;
resource = replaceFetchResourceForSegmentSite(resource);
const response = await originalFetch(resource, config);
return response;
};
}();
</script>
## Appsembler: end Segment Site
## end Copy
% endif
Expand Down

0 comments on commit 4535790

Please sign in to comment.