1+ /**
2+ * Angular service to get simple methods to manipulate url parts
3+ *
4+ * @version 0.0.2 - 2016-07-27
5+ * @link https://github.com/yllieth/angular-url-parser
6+ * @license MIT License, http://www.opensource.org/licenses/MIT
7+ */
18angular
29 . module ( 'ngUrlParser' , [ ] )
310 . factory ( 'urlParser' , function ( ) {
@@ -30,6 +37,17 @@ angular
3037 }
3138
3239 return {
40+ /**
41+ * Returns an object with url parts placed in different properties
42+ *
43+ * @param {string } [url] - location.href if not specified
44+ * @returns {{protocol, host, hostname, port, pathname, search, searchObject, hash} }
45+ */
46+ parse : function ( url ) {
47+ url = url || window . location . href ;
48+ return urlParser ( url ) ;
49+ } ,
50+
3351 /**
3452 * Returns the protocol part of the given url
3553 *
@@ -42,7 +60,7 @@ angular
4260 */
4361 getProtocol : function ( url ) {
4462 url = url || window . location . href ;
45- return urlParser ( url ) . protocol ;
63+ return this . parse ( url ) . protocol ;
4664 } ,
4765
4866 /**
@@ -57,7 +75,7 @@ angular
5775 */
5876 getHost : function ( url ) {
5977 url = url || window . location . href ;
60- return urlParser ( url ) . host ;
78+ return this . parse ( url ) . host ;
6179 } ,
6280
6381 /**
@@ -72,7 +90,7 @@ angular
7290 */
7391 getHostname : function ( url ) {
7492 url = url || window . location . href ;
75- return urlParser ( url ) . hostname ;
93+ return this . parse ( url ) . hostname ;
7694 } ,
7795
7896 /**
@@ -87,7 +105,7 @@ angular
87105 */
88106 getPort : function ( url ) {
89107 url = url || window . location . href ;
90- return urlParser ( url ) . port ;
108+ return this . parse ( url ) . port ;
91109 } ,
92110
93111 /**
@@ -102,7 +120,7 @@ angular
102120 */
103121 getRoute : function ( url ) {
104122 url = url || window . location . href ;
105- return urlParser ( url ) . pathname ;
123+ return this . parse ( url ) . pathname ;
106124 } ,
107125
108126 /**
@@ -131,7 +149,7 @@ angular
131149 */
132150 getQuerystring : function ( url ) {
133151 url = url || window . location . href ;
134- return urlParser ( url ) . search ;
152+ return this . parse ( url ) . search ;
135153 } ,
136154
137155 /**
@@ -152,7 +170,7 @@ angular
152170 getOption : function ( param , url ) {
153171 url = url || window . location . href ;
154172
155- var searchOject = urlParser ( url ) . searchObject ;
173+ var searchOject = this . parse ( url ) . searchObject ;
156174
157175 if ( typeof param === 'string' ) {
158176 return ( searchOject . hasOwnProperty ( param ) === true )
@@ -175,7 +193,7 @@ angular
175193 */
176194 getHash : function ( url ) {
177195 url = url || window . location . href ;
178- return urlParser ( url ) . hash ;
196+ return this . parse ( url ) . hash ;
179197 }
180198 } ;
181199 } ) ;
0 commit comments