```/** * @NApiVersion 2.x * @NScriptType ClientS...
# suitescript
i
Copy code
/**
 * @NApiVersion 2.x
 * @NScriptType ClientScript
 * @NModuleScope SameAccount
 */
 define(['N/record','N/redirect'], function (record,nRedirect) {

    function pageInit(context) {
         currentRecord = context.currentRecord;
    }
    function gpspositionButtonUser() {
            if (navigator.geolocation) {
              navigator.geolocation.getCurrentPosition(showPosition, showError);
            } else { 
             alert ("Geolocation is not supported by this browser.");
            }
            nRedirect.toSuitelet({
              scriptId: 224,                           
              deploymentId: 1,                          
              parameters: {
                  'soid': record.get().id
              }
          })
    }
    function showPosition(position) {
        var lat =position.coords.latitude;
        var long=position.coords.longitude;
        var positiongps=lat + ',' +long;
        
       var mapgps='<https://maps.google.com/?daddr='+> positiongps;
        currentRecord.setValue({
            fieldId: 'custevent15',
            value: mapgps
        });
      }
        function showError(error) {
        switch(error.code) {
          case error.PERMISSION_DENIED:
            alert ("User denied the request for Geolocation.");
            break;
          case error.POSITION_UNAVAILABLE:
           alert( "Location information is unavailable.");
            break;
          case error.TIMEOUT:
            alert ( "The request to get user location timed out.");
            break;
          case error.UNKNOWN_ERROR:
           alert ("An unknown error occurred.");
            break;
        }
      }
    return {
        pageInit: pageInit,
        gpspositionButtonUser: gpspositionButtonUser
    };
});