You are on page 1of 4

jQuery.

extend(Opal, {
//
****************************************************************************
// * API FUNCTIONS SET
// *

// MAIN PAGE

/**
* Synchronises device volume information
*
* @access private
* @return number
*/
api_setVolume: function(value) {
this.lastSetSliderValues['setVolume'] = value;
this.ajax_makeApiReq('/api/control/volume/set', {'arg': value});
},
api_setVolumeUp: function() { this.ajax_makeApiReq('/api/control/volume/up');
},
api_setVolumeDown: function() {
this.ajax_makeApiReq('/api/control/volume/down'); },

/**
* Synchronises true if there is playing some audio, false in other case
*
* @access private
* @return boolean
*/
api_togglePlaypause: function() {
this.ajax_makeApiReq('/api/control/playpause/toggle'); },

/**
* Synchronises currentrly playing data
*
* @access private
* @return string
*/
api_prevTrack: function() {
this.ajax_makeApiReq('/api/control/track/previous'); },
api_nextTrack: function() {
this.ajax_makeApiReq('/api/control/track/next'); },

/**
* Synchronises device source
*
* @access private
* @return string
*/
api_nextSource: function() {
this.ajax_makeApiReq('/api/control/source/next'); },

/**
* Repeat mode managing
*
* @access private
* @return string
*/
api_nextRepeat: function() {
this.ajax_makeApiReq('/api/control/mode/repeat/next'); },

/**
* Shuffle mode managing
*
* @access private
* @return string
*/
api_nextShuffle: function(value) {
this.ajax_makeApiReq('/api/control/mode/shuffle/next'); },

// EQUALIZER PAGE

/**
* Equalizer methods
*/
api_setEqualizer: function(value) {
this.lastSetSliderValues['setEqualizer'] = value;
this.ajax_makeApiReq('/api/audio/equalizer/set', {'arg': value});
},

/**
* Preset managing methods
*/
api_setPreset: function(value) {
this.ajax_makeApiReq('/api/audio/equalizer/preset/set', {'arg': value}); },

// MIXER PAGE

/**
* Fade-in (rampup) value methods
*/
api_setFadeIn: function(value) {
this.lastSetSliderValues['setFadeIn'] = value;
this.ajax_makeApiReq('/api/audio/rampup/level/set', {'arg': value});
},

/**
* Mixer managing methods
*/
api_setMixer: function(value) {
this.lastSetSliderValues['setMixer'] = value;
this.ajax_makeApiReq('/api/audio/mixer/set', {'arg': value});
},

/**
* High volume (rampup checkbox) value methods
*/
api_setHighVolume: function(value) {
this.ajax_makeApiReq('/api/audio/rampup/enabled/set', {'arg': value}); },

// BALANCE PAGE

/**
* Balance value methods
*/
api_setBalance: function(value) {
this.lastSetSliderValues['setBalance'] = value;
this.ajax_makeApiReq('/api/audio/balance/set', {'arg': value});
},

/**
* Swap channel methods
*/
api_setcSwapChannels: function(value) {
this.ajax_makeApiReq('/api/audio/balance/swap/set', {'arg': value}); },

// SETTINGS

/**
* Manage friendly device name
*/
api_setFriendlyName: function(value) {
var name = jQuery('input[name=friendlyName]').val();
if (name != this.state.friendlyName) {
this.ajax_makeApiReq('/api/config/friendlyname/set', {'arg':
name});
}
},

/**
* Manage pairing code
*/
api_setPairingCode: function(value) {
var code = jQuery('input[name=pairingCode]').val();
if (code != this.state.pairingCode) {
this.ajax_makeApiReq('/api/config/bluetooth/code/set', {'arg':
code});
}
},
/**
* Manage audio delay
*/
api_setAudioDelays: function(value) {
this.ajax_makeApiReq('/api/audio/delay/set', {'arg': value}); },
api_syncAudioValuesList: function() {
this.ajax_makeApiReq('/api/audio/delay/values/get'); },

/**
* Manage room compensation
*/
api_setRoomCompensation: function(value) {
this.ajax_makeApiReq('/api/audio/roomcompensation/set', {'arg': value}); },
api_syncRoomCompensationList: function() {
this.ajax_makeApiReq('/api/audio/roomcompensation/values/get'); },

/**
* WiFi custom settings
*/
api_setWiFiConfig: function(ssid, encryption, key, dhcp, ip) {
this.ajax_makeApiReq('/api/config/wifi/set', {
'ssid': ssid,
'encryption': encryption,
'key': key,
'dhcp': dhcp,
'ip': ip
});
},
/**
* Synchronises device bluetoothpairing state
*
* @access private
* @return string
*/
api_setBluetoothPairingPress: function() {
this.ajax_makeApiReq('/api/control/bluetooth/pairing/press'); },

/**
* Synchronises device update version
*
* @access private
* @return string
*/
api_installUpdate: function() {
this.ajax_makeApiReq('/api/config/software/update/install'); },

// BROWSING WINDOW

/**
* Serve list managing
*/
api_setBrowsingServer: function(value) {
this.ajax_makeApiReq('/api/browsing/server/set', {'arg': value}); },

/**
* Folders managing
*/
api_setBrowseUpFolder: function() {
this.ajax_makeApiReq('/api/browsing/folder/up'); },
api_setBrowseDownFolder: function(folder) {
this.ajax_makeApiReq('/api/browsing/folder/down', {'arg': folder}); },

/**
* Other browsing content managing
*/
api_setBrowsingContent: function(value) {
this.ajax_makeApiReq('/api/browsing/content/set', {'arg': value}); }

});

You might also like