aping-plugin-bandsintown
v0.7.8
Published
BandsInTown plugin for apiNG
Downloads
6
Maintainers
Readme
apiNG-plugin-bandsintown is a BandsInTown v2 API plugin for apiNG.
Information
- Supported apiNG models:
event
- This plugin supports the
get-native-data
parameter - This plugin needs an api key :warning:
- Used promise library: angular-bandsintown-api-factory (included in distribution files)
Documentation
- INSTALLATION
- Get file
- Include file
- Add dependency
- Add plugin
- API KEY
- USAGE
- Models
- Requests
1. INSTALLATION
I. Get file
Install via either bower, npm, CDN (jsDelivr) or downloaded files:
bower install apiNG-plugin-bandsintown --save
npm install aping-plugin-bandsintown --save
- use CDN file
- download apiNG-plugin-bandsintown.zip
II. Include file
Include aping-plugin-bandsintown.min.js
in your apiNG application
<!-- when using bower -->
<script src="bower_components/apiNG-plugin-bandsintown/dist/aping-plugin-bandsintown.min.js"></script>
<!-- when using npm -->
<script src="node_modules/aping-plugin-bandsintown/dist/aping-plugin-bandsintown.min.js"></script>
<!-- when using cdn file -->
<script src="//cdn.jsdelivr.net/aping.plugin-bandsintown/latest/aping-plugin-bandsintown.min.js"></script>
<!-- when using downloaded files -->
<script src="aping-plugin-bandsintown.min.js"></script>
III. Add dependency
Add the module jtt_aping_bandsintown
as a dependency to your app module:
angular.module('app', ['jtt_aping', 'jtt_aping_bandsintown']);
IV. Add plugin
Add the plugin's directive aping-bandsintown="[]"
to your apiNG directive and configure your requests
<aping
template-url="templates/event.html"
model="event"
items="20"
aping-bandsintown="[{'artist':'Prinz Pi'}]">
</aping>
2. API KEY
Official BandsInTown Authentication Docs:
The application ID can be anything, but should be a word that describes your application or company.
Create and open js/apiNG/aping-config.js
in your application folder. It should be look like this snippet:
angular.module('jtt_aping').config(['$provide', function ($provide) {
$provide.value("apingDefaultSettings", {
apingApiKeys : {
bandsintown: [
{'app_id':'<YOUR_BANDSINTOWN_APP_ID>'}
],
//...
}
});
}]);
:warning: Replace <YOUR_BANDSINTOWN_APP_ID>
with a word that describes your application or company
3. USAGE
I. Models
Supported apiNG models
| model | content |
|----------|---------|
| event
| concerts, tours, shows |
II. Requests
Every apiNG plugin expects an array of requests as html attribute.
Requests by Artist
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| artist
| Metallica
| | Artist name (url escaped*), mbid_<id>
(MusicBrainz ID), fbid_<id>
(Facebook Page ID) | no |
| artist_id
| mbid_65f4f0c5-ef9e-490c-aee3-909e7ae6b2ab
| | (fallback) artist id, mbid_<id>
(MusicBrainz ID), fbid_<id>
(Facebook Page ID) | yes |
| showAvatar
| true
| false
| Use true
for show artists image | yes |
| items
| 20
| | Items per request (0
-n
) | yes |
| date
| all
| upcoming
| valid values: yyyy-mm-dd
, upcoming
, all
| yes |
| start_date
| 2016-01-31
| | Start date. format: yyyy-mm-dd
. Needs end_date
| yes |
| end_date
| 2016-04-15
| | End date. format: yyyy-mm-dd
. Needs start_date
| yes |
| location
| munich,germany
| | Location to search city,state
(US or CA), city,country
| yes |
| lat
| -13.163333
| | Latitude of the location. Needs lng
| yes |
| lng
| -72.545556
| | Longitude of the location. Needs lat
| yes |
| distance
| 10
| 25
| Number (miles) of radius from location (or coordinates) | yes |
| recommended
| true
| false
| Returns recommended events for a single artist matching search criteria | yes |
| exclude
| true
| false
| If true, the response will only include matching events for artists similar to the specified artist. if false, the response may also include matching events for the specified artist. | yes |
Sample requests:
[{'artist':'Prinz Pi', 'showAvatar':true}]
[{'artist':'Prinz Pi', 'location':'munich,germany', 'date':'all', 'recommended':true}]
Licence
MIT