Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Instancia o inAppBrowser com o código para dispositivos iOS
- var ref = cordova.InAppBrowser.open($parameters.URLIn, '_blank', 'location=no,hidenavigationbuttons=yes,hideurlbar=yes,closebuttoncolor=#ffffff,toolbarcolor=#003365,lefttoright=yes,closebuttoncaption=Back,hidespinner=yes,enableViewportScale=yes,toolbarposition=top');
- // Se o disp+ositivo for android instancia o browser de forma propria para estes dispositivos
- if(isAndroid())
- {
- ref = cordova.InAppBrowser.open($parameters.URLIn, '_blank', 'location=yes,hidenavigationbuttons=yes,hideurlbar=yes,closebuttoncolor=#ffffff,toolbarcolor=#003365,lefttoright=yes');
- }
- /*
- * Abre uma Instância do Browser no contexto da aplicação
- * para fazer donwload dos ficheiros referentes a CRC e BCB
- */
- ref.addEventListener('loadstop', function(event) {
- if (event.url.indexOf('/Home/DownloadFile') != -1) {
- // Cria o O caminho para o ficheiro no dispositivo
- var devicePathDownload = createDevicePathDownload();
- //Cria a instância do filetransfer
- var fileTransfer = new FileTransfer();
- // Faz o download do ficheiro e abre o mesmo no dispositivo
- downloadFile(event.url, devicePathDownload);
- }
- });
- /*
- * Efetua o download do ficheio para o dispositivo do utilizador
- */
- function downloadFile(uri, devicePathDownload)
- {
- //Cria a instância do filetransfer
- var fileTransfer = new FileTransfer();
- fileTransfer.download(
- uri,
- devicePathDownload,
- function(entry)
- {
- fileOpen(devicePathDownload);
- },
- function(error)
- {
- console.log('Error status: ' + error.status + ' - Error target: ' + error.target + ' - Error code: ' + error.code);
- },
- false,
- {
- headers: {
- "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
- }
- }
- );
- }
- /*
- * Abre o ficheiro PDF no dispositivo com uma das aplicação do utilizador
- * A aplicação para abrir o ficheiro depende das predefinições do utilizador para abrir ficheiros PDF
- */
- function fileOpen(devicePathDownload)
- {
- cordova.plugins.fileOpener2.open(
- devicePathDownload,
- 'application/pdf',
- {
- error : function(e) {
- console.log('Error status: ' + e.status + ' - Error message: ' + e.message);
- },
- success : function () {
- }
- });
- }
- /*
- * Cria o caminho para a pasta Downloads no dispositivo (Android ou iOS)
- * Retorna o caminho para o ficheiro no dispositivo de acordo com o sistema operativo
- */
- function createDevicePathDownload()
- {
- // Cria o nome do ficheiro
- var nameFile = CreateNameFile();
- // Cria o caminho para o ficheiro (por default cria o caminho para iOS)
- var devicePathDownload = 'cdvfile://localhost/persistent/path/to/' + nameFile;
- if(isAndroid())
- {
- devicePathDownload = '/storage/emulated/0/path/to/file/' + nameFile;
- }
- return devicePathDownload;
- }
- /*
- * Verifica se o dispositivo é Android
- * Retorna True no caso de sucesso e false caso contrario
- */
- function isAndroid()
- {
- var userAgent = navigator.userAgent.toLowerCase();
- return userAgent.indexOf("android") > -1;
- }
- /*
- * Cria o nome do ficheiro
- */
- function CreateNameFile()
- {
- //Cria o nome do ficheiro
- var nameFile = 'Mapa.pdf';
- if (urlFile.indexOf('bcbweb') != -1)
- {
- nameFile = 'Mapa_BCB.pdf';
- }
- else if(urlFile.indexOf('crcweb') != -1)
- {
- nameFile = 'Mapa_CRC.pdf';
- }
- return nameFile;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement