$(document) .ready( function() { hideElements(); $('#errorDiv').hide(); $('.loader').show(); var name = 'b'; name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]"); var regex = new RegExp("[\\?&]" + name + "=([^]*)"), results = regex.exec(location.search); results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); var b = results[1]; // This is for dealing with HTTPS deployments also encoding the URI in addition to server side encoding // So we double decode. b = decodeURIComponent(b); $.ajax({ cache : false, dataType : "json", type : 'get', url : '/bc/bcapi?CONTROLLER_NAME=BADGE_CONTROLLER&COMMAND_FUNCTION=UPDATE_PENDING&PUBLIC=true&b=' + b, success : function(data) { isValidateAuthentication(data); if (data.message == 'true') { // TODO : Nothing to do } else { // TODO : What to do } }, failure : function() { // TODO : What to do } }); $("#copy_btn").click(function() { var copyText = document.querySelector('#url'); copyText.select(); try { var successful = document.execCommand('copy'); } catch (err) { console.log('Oops, unable to copy'); } }); if (b) { $ .ajax({ dataType : "json", cache : false, type : "GET", url : "/bc/bcapi?COMMAND_FUNCTION=GET_EARNER_BADGES_BY_ENC_ID_CMD&PUBLIC=true&CONTROLLER_NAME=BADGE_CONTROLLER&b=" + b, success : function(data) { $('.loader').hide(); if (data.type == 'failure confirmation') { hideElements(); $('#error_msg').empty(); $('#error_msg').text(data.message); $('#error_msg').attr('style', 'color: red;'); } else if (!(data.type == 'failure confirmation') && data.Records.length === 0) { hideElements(); $('#error_msg').empty(); $('#error_msg').text('The badge is either expired or deleted'); $('#error_msg').attr('style', 'color: red;'); } else { showElements(); var myArray = data.Records; var myUser = data.user; var artifact1 = data.artifact1; var title = data.title; if (data != null && data.issue != null) { $('h4#userName').empty(); $('h4#userName').text(data.issue.firstName + " " + data.issue.lastName); } else if (data != null && data.user != null) { $('h4#userName').empty(); $('h4#userName').text(data.user.firstName + " " + data.user.lastName); } $('#badeges_list').empty(); $ .each( myArray, function(index) { $('#badeges_list') .append( '
'); var issuanceID = myArray[index].encIssuanceId; $ .ajax({ cache : false, type : "GET", dataType : "json", cache : false, url : "/bc/bcapi?COMMAND_FUNCTION=GETBADGE_ISSUANCE_DETAILS_BY_ID&PUBLIC=true&CONTROLLER_NAME=BADGE_CONTROLLER&b=" + encodeURIComponent(issuanceID), success : function(arr) { updateEventLogTableWithBadgeAndUserDetails(issuanceID); loadBadgeData(arr, myUser, title); } }); });// end of for } }, error : function(xhr, textStatus, error) { $('.loader').hide(); hideElements(); $('#error_msg') .text( 'Sorry, the badge you wish to view is no longer available for sharing. Please contact the earner from whom the link was provided to request a new link.'); $('#error_msg').attr('style', 'color : red;'); }, failure : function() { window.location.href = 'http://www.badgecert.com'; } }); } else { window.location.href = 'http://www.badgecert.com'; } }); function hideElements() { $('#showContent-1').hide(); $('#showContent-2').hide(); $('#errorDiv').show(); } function showElements() { $('#showContent-1').show(); $('#showContent-2').show(); $('#errorDiv').hide(); } function getRequrestParamVal(name) { name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]"); var regex = new RegExp("[\\?&]" + name + "=([^]*)"), results = regex.exec(location.search); results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); var paramVal = results[1]; return paramVal; } function loadBadgeData(arr, myUser, title) { $('#bName').empty(); $('#bName').text(decodeUriParameter(arr.badge.name) + ' - '); $('#bType').empty(); $('#bType').text((arr.badgeType.badgeTypeName).toUpperCase() + ' BADGE'); var expDate; var extRef = checkNull(arr.issue.externalReference); var extName = checkNull(arr.issue.externalName); if (extName.length < 1) { extName = ''; extRef = ''; } if (!arr.issue.expirationDate) { expDate = 'Ongoing'; } else { expDate = formatDateToMMDDYYYY(arr.issue.expirationDate); } if (!arr.badge.gamePoints) { totalPoints = 0; } else { totalPoints = arr.badge.gamePoints / 100.0; } // formattedIssueDate = arr.issue.issueDate.substring(0,arr.issue.issueDate.length-12); formattedIssueDate = formatDateToMMDDYYYY(arr.issue.issueDate); var myIssue = arr.issue; var artifcat1 = myIssue.artifact1; $('#url').empty(); $('#url').val(artifcat1); artifact2Name = myIssue.artifact2Name; artifact2 = myIssue.artifact2; if (artifact2 != null && artifact2 != '') { artifact = addhttp(arr.issue.artifact2); } if (artifact2 != null && artifact2 != '') { if (artifact2Name == null || artifact2Name == '') { if (artifact2[artifact2.length - 1] == "/") artifact2 = artifact2.replace(/\/$/, ''); artifact2Name = fetchFileNameForThirdPartyURL(artifact2); } } artifact3 = myIssue.artifact3; if (artifact3 != null && artifact3 != '') { if (!(artifact3.indexOf("/opt/") == 0)) { var fileName = fetchFileNameForThirdPartyURL(artifact3); var uploadPath = decodeURI(artifact3); } else { var uploadPath = trimUploadedPath(artifact3); var fileName = fetchFileNameFromPath(artifact3); } } var toBeappended = ''; var walletartArray; if (arr.walletList && arr.walletList.length > 0) { walletartArray = arr.walletList; } var is_name = ''; var is_to = ''; var is_by = ''; var is_loc = ''; var is_val = 0; var valueField = ''; var website = ''; if ((arr.badgeType.id == 3) || (arr.badgeType.id == 4)) { is_name = arr.issue.firstName + ' ' + arr.issue.lastName; is_to = arr.issue.firstName + ' ' + arr.issue.lastName; is_by = 'Self-Reported'; is_loc = ''; is_val = 0; } else { is_name = checkNull(arr.issue.issuerName); website = checkNull(arr.bcOrg.website); is_to = arr.issue.firstName + ' ' + arr.issue.lastName; is_by = arr.bcOrg.orgName; is_loc = checkNull(arr.issue.location); is_val = totalPoints; var units = checkNull(arr.badge.units); if (is_val > 0) { valueField = 'Issued To | ' + ': | ' + '' + arr.issue.firstName + ' ' + arr.issue.lastName + ' | ' + '