Posted on Leave a comment

Angular.js How to remove hash from url?

Configuration:

$locationProvider
  .html5Mode(true);

.htaccess file in root directory:

RewriteEngine On 
 # If an existing asset or directory is requested go to it as it is
 
 RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
 RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
 RewriteRule ^ - [L]

 # If the requested resource doesn't exist, use index.html
 RewriteRule ^ /index.html

In this mode you can use links without the # in HTML files

<a href="/path">link</a>

Link in Browser:

http://www.example.com/base/path

Source: http://stackoverflow.com/questions/16677528/location-switching-between-html5-and-hashbang-mode-link-rewriting

Posted on Leave a comment

How to Change Bootstrap Carousel Slide Speed

The speed cannot be controlled by the API. Though you can modify CSS that is in charge of that. find in the bootstrap.css file:

.carousel-inner > .item {
    position: relative;
    display: none;
    -webkit-transition: 0.6s ease-in-out left;
    -moz-transition: 0.6s ease-in-out left;
    -o-transition: 0.6s ease-in-out left;
    transition: 0.6s ease-in-out left;
}

and change 0.6s to the time you want. You also might want to edit time in the function call below:

.emulateTransitionEnd(2000)

at bootstrap.js in function Carousel.prototype.slide. That synchronize transition and prevent slide to disapear before transition ends.

Source: http://stackoverflow.com/questions/17332431/how-can-i-control-the-speed-that-bootstrap-carousel-slides-in-items/17332516#17332516

Posted on Leave a comment

Cordova: How to download file and get download progress?

var assetURL = 'http://www.anywebsite.com/test.mp3';
var store = cordova.file.externalRootDirectory; // output in android: file:///storage/emulated/0/
// or
// var store = "cdvfile://localhost/persistent/";
var fileName = 'Sounds/test.mp3';
// NOTE: Sounds folder should already be there in order to download file in that folder

var fileTransfer = new FileTransfer();
fileTransfer.download(assetURL, store + fileName, 
        function(entry) {
            console.log("Success!");
            //appStart();
        }, 
        function(err) {
            console.log("Error");
            console.dir(err);
        });
fileTransfer.onprogress = function(result){
     var percent =  result.loaded / result.total * 100;
     percent = Math.round(percent);
     console.log('Downloaded:  ' + percent + '%');    
};

 

Posted on Leave a comment

Cordova: How to get list of all Files/Directories in a directory?

function success(entries) {
    var i;
    for (i=0; i<entries.length; i++) {
        console.log('En - ', entries[i]);
    }
}
function fail(error) {
    console.log("Failed to list directory contents: ", error);
}
// output in android: file:///storage/emulated/0/Sounds
var directory_path = cordova.file.externalRootDirectory+"Sounds";
window.resolveLocalFileSystemURL(directory_path , function(dirEntry) {
    var directoryReader = dirEntry.createReader();
    console.log(dirEntry);

    // Get a list of all the entries in the directory
    directoryReader.readEntries(success,fail);
});

Tested in Android.

Click here for more details.

Another link Mobile File Explorer with PhoneGap/Cordova has examples.

Posted on Leave a comment

Cordova: How to create directory?

/*
############
# Method 1 #
############
*/

// output in android: file:///storage/emulated/0/
var base_url = cordova.file.externalRootDirectory;
// or 
// var base_url = "cdvfile://localhost/persistent/";
var new_directory = 'TEST';

// To Create a sub Directory inside a folder
// var new_directory = 'Sounds/Test';  // Here 'Sounds' is the name of existing parent directory. Parent Directoy must exist to work fine

window.resolveLocalFileSystemURL(base_url, function (fileSystem) {
   
   dir.getDirectory(new_directory, { create: true }, function (file) {
          alert("got the file: "+ file.name + ', ' + file.fullPath);
   });
});

/*
############
# Method 2 #
############
*/

var new_directory = 'TEST';
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
 fileSystem.root.getDirectory(new_directory, { create: true }, function (file) {
 alert("got the file: "+ file.name + ', ' + file.fullPath);
 });
}, function(error) {
 alert("can't even get the file system: " + error.code);
});

For Documentation Visit: https://www.npmjs.com/package/cordova-plugin-file#android-file-system-layout

Posted on Leave a comment

How to get Base64Image from input type file?

<input  type="file" id="user_img_input" onchange="upload_user_img(this);" /> 
<img src="" id="img" />
<script>
function setBase64Image(object, img_id) {
    if ( object.files && object.files[0] ) {
        var FR = new FileReader();
        FR.onload = function(e) {

             $(img_id).attr("src", e.target.result);
        };       
        FR.readAsDataURL( object.files[0] );
    }
}

 function upload_user_img(inputObject)
  {
    setBase64Image(inputObject, '#img');
  }
</script>

Live Demo:

Posted on Leave a comment

How to access Query String Values using Javascript?

Following function is very useful to easily access url paramters ( query string values).

function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}


// USAGE
// query string: ?foo=lorem&bar=&baz
var foo = getParameterByName('foo'); // "lorem"
var bar = getParameterByName('bar'); // "" (present with empty value)
var baz = getParameterByName('baz'); // "" (present with no value)
var qux = getParameterByName('qux'); // null (absent)

Source: http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript