return $result;
}
- public function get_listing($uuid = '', $search = '') {
+ public function get_listing($uuid = '', $path = '') {
global $CFG;
$ret = array();
* @param <type> $path
* @return <type>
*/
- public function get_listing($path = '/'){
+ public function get_listing($path = '/', $page = ''){
global $CFG;
$list = array();
$ret = array();
/**
*
* @param <type> $photos
- * @param <type> $path
+ * @param <type> $page
* @return <type>
*/
- private function build_list($photos, $path = 1) {
+ private function build_list($photos, $page = 1) {
$photos_url = $this->flickr->urls_getUserPhotos($this->nsid);
$ret = array();
$ret['manage'] = $photos_url;
$ret['list'] = array();
$ret['pages'] = $photos['pages'];
- if($path <= $ret['pages']) {
- $ret['page'] = $path;
+ if($page <= $ret['pages']) {
+ $ret['page'] = $page;
} else {
$ret['page'] = 1;
}
/**
*
- * @param <type> $path
+ * @param string $path
+ * @param int $page
* @return <type>
*/
- public function get_listing($path = '1') {
+ public function get_listing($path = '', $page = '1') {
$photos_url = $this->flickr->urls_getUserPhotos($this->nsid);
$photos = $this->flickr->photos_search(array(
'user_id'=>$this->nsid,
'per_page'=>24,
- 'page'=>$path,
+ 'page'=>$page,
'extras'=>'original_format'
));
- return $this->build_list($photos, $path);
+ return $this->build_list($photos, $page);
}
/**
/**
*
- * @param <type> $path
+ * @param string $path
+ * @param int $page
* @return <type>
*/
- public function get_listing($path = '1') {
+ public function get_listing($path = '', $page = 1) {
$people = $this->flickr->people_findByEmail($this->flickr_account);
$this->nsid = $people['nsid'];
- $photos = $this->flickr->people_getPublicPhotos($people['nsid'], 'original_format', 24, $path);
+ $photos = $this->flickr->people_getPublicPhotos($people['nsid'], 'original_format', 24, $page);
$ret = array();
- return $this->build_list($photos, $path, $ret);
+ return $this->build_list($photos, $page, $ret);
}
/**
*
* @param <type> $photos
- * @param <type> $path
+ * @param <type> $page
* @return <type>
*/
- private function build_list($photos, $path = 1, &$ret) {
+ private function build_list($photos, $page = 1, &$ret) {
if (!empty($this->nsid)) {
$photos_url = $this->flickr->urls_getUserPhotos($this->nsid);
$ret['manage'] = $photos_url;
}
$ret['list'] = array();
$ret['pages'] = $photos['pages'];
- if (is_int($path) && $path <= $ret['pages']) {
- $ret['page'] = $path;
+ if (is_int($page) && $page <= $ret['pages']) {
+ $ret['page'] = $page;
} else {
$ret['page'] = 1;
}
var active_instance = null;
function repository_callback(id) {
- active_instance.req(id, '', 0);
+ active_instance.req(id, '');
}
var repository_client_$suffix = (function() {
// private static field
link.onclick = function() {
var re = /repo-call-$suffix-(\d+)/i;
var id = this.id.match(re);
- repository_client_$suffix.req(id[1], '', 0);
+ repository_client_$suffix.req(id[1], '');
}
link.innerHTML += ' '+repo.name;
li.appendChild(link);
logout.innerHTML = '<img src="$CFG->pixpath/a/logout.png" /> $strlogout';
oDiv.appendChild(logout);
logout.onclick = function() {
- repository_client_$suffix.req(repository_client_$suffix.repositoryid, 1, 1);
+ repository_client_$suffix.logout(repository_client_$suffix.repositoryid, 1);
}
}
}
}
_client.paging_node = function(type, page) {
if (page == _client.ds.page) {
- str = '<a class="cur_page" onclick="repository_client_$suffix.'+type+'('+_client.repositoryid+', '+page+', 0)" href="###">';
+ str = '<a class="cur_page" onclick="repository_client_$suffix.'+type+'('+_client.repositoryid+', '+page+', '+page+')" href="###">';
} else {
- str = '<a onclick="repository_client_$suffix.'+type+'('+_client.repositoryid+', '+page+', 0)" href="###">';
+ str = '<a onclick="repository_client_$suffix.'+type+'('+_client.repositoryid+', '+page+', '+page+')" href="###">';
}
return str;
}
}
return str;
}
-_client.search_paging = function(id, path) {
+_client.search_paging = function(id, path, page) {
_client.viewbar.set('disabled', false);
_client.loading('load');
_client.repositoryid = id;
var params = [];
params['p'] = path;
+ params['page'] = page;
params['env']=_client.env;
params['action']='search';
params['search_paging']='true';
el.path = _client.ds.path[i].path;
el.on('contentReady', function() {
this.on('click', function() {
- repository_client_$suffix.req(this.id, this.path, 0);
+ repository_client_$suffix.req(this.id, this.path);
})
});
}
_client.viewfiles();
}
// request file list or login
-_client.req = function(id, path, logout) {
+_client.req = function(id, path, page) {
_client.viewbar.set('disabled', false);
_client.loading('load');
_client.repositoryid = id;
- if (logout == 1) {
- action = 'logout';
- } else {
- action = 'list';
- }
+ action = 'list';
var params = [];
params['p'] = path;
params['env']=_client.env;
params['sesskey']='$sesskey';
params['ctx_id']=$context->id;
params['repo_id']=id;
+ if (page) {
+ params['page']=page;
+ }
params['accepted_types'] = _client.accepted_types;
var trans = YAHOO.util.Connect.asyncRequest('POST', '$CFG->httpswwwroot/repository/ws.php?action='+action, _client.req_cb, _client.postdata(params));
}
+_client.logout = function(id) {
+ _client.repositoryid = id;
+ var params = [];
+ params['repo_id'] = id;
+ var trans = YAHOO.util.Connect.asyncRequest('POST', '$CFG->httpswwwroot/repository/ws.php?action=logout', _client.req_cb, _client.postdata(params));
+}
_client.search_form_cb = {
success: function(o) {
var el = document.getElementById('fp-search-dlg');
* a folder name, or a identification of folder
* @return array the list of files, including meta infomation
*/
- abstract public function get_listing($parent = '/');
+ abstract public function get_listing($path = '/', $page='');
/**
* Search files in repository
* @return <type>
*/
public function search($search_text) {
- return $this->get_listing('', $search_text);
+ return $this->get_listing('', '', $search_text);
}
/**
* @param <type> $search
* @return <type>
*/
- public function get_listing($encodedpath = '', $search = '') {
+ public function get_listing($encodedpath = '', $page = '', $search = '') {
global $CFG;
try {
}
}
- public function get_listing($path='') {
+ public function get_listing($path='', $page = '') {
$picasa = new google_picasa(new google_authsub($this->subauthtoken));
$ret = array();
* @return <type>
*/
public function search($search_text) {
- return $this->get_listing('', $search_text);
+ return $this->get_listing('', '', $search_text);
}
/**
* @param <type> $search
* @return <type>
*/
- public function get_listing($encodedpath = '', $search = '') {
+ public function get_listing($encodedpath = '', $page = '', $search = '') {
global $CFG, $DB, $USER;
///check that the host has a version >2.0
}
$this->s = new S3($this->access_key, $this->secret_key);
}
- public function get_listing($path = '') {
+ public function get_listing($path = '', $page = '') {
global $CFG;
$list = array();
$list['list'] = array();
public function global_search() {
return false;
}
- public function get_listing($path='') {
+ public function get_listing($path='', $page = '') {
global $CFG;
$list = array();
$ret = array();
* @param <type> $search
* @return <type>
*/
- public function get_listing($path='', $search='') {
+ public function get_listing($path='', $page='') {
global $CFG, $action;
if($action=='upload'){
return $this->info;
public function global_search() {
return false;
}
- public function get_listing($path='') {
+ public function get_listing($path='', $page = '') {
global $CFG;
$list = array();
$ret = array();
parent::__construct($repositoryid, $context, $options);
$this->keyword = optional_param('wikimedia_keyword', '', PARAM_RAW);
}
- public function get_listing($path = '') {
+ public function get_listing($path = '', $page = '') {
global $CFG;
$client = new wikimedia;
$result = $client->search_images($this->keyword);
require_once('lib.php');
/// Parameters
- $p = optional_param('p', '', PARAM_RAW); // page or path
+ $page = optional_param('page', '', PARAM_RAW); // page
$env = optional_param('env', 'filepicker', PARAM_ALPHA);// opened in editor or moodleform
$file = optional_param('file', '', PARAM_RAW); // file to download
$title = optional_param('title', '', PARAM_FILE); // new file name
$itemid = optional_param('itemid', '', PARAM_INT);
$action = optional_param('action', '', PARAM_ALPHA);
- $ctx_id = optional_param('ctx_id', SITEID, PARAM_INT); // context ID
- $repo_id = optional_param('repo_id', 1, PARAM_INT); // repository ID
- $callback = optional_param('callback', '', PARAM_CLEANHTML);
+ $ctx_id = optional_param('ctx_id', SITEID, PARAM_INT); // context ID
+ $repo_id = optional_param('repo_id', 1, PARAM_INT); // repository ID
+ $req_path = optional_param('p', '', PARAM_RAW); // path
+ $callback = optional_param('callback', '', PARAM_CLEANHTML);
$search_text = optional_param('s', '', PARAM_CLEANHTML);
/// Headers to make it not cacheable
case 'list':
if ($repo->check_login()) {
try {
- if (!empty($p)) {
- echo json_encode($repo->get_listing($p));
- } else {
- echo json_encode($repo->get_listing());
- }
+ echo json_encode($repo->get_listing($req_path, $page));
} catch (repository_exception $e) {
$err = new stdclass;
$err->e = $e->getMessage();
public function global_search() {
return false;
}
- public function get_listing($path='') {
+ public function get_listing($path='', $page = '') {
global $CFG;
$list = array();
$ret = array();