$account = optional_param('flickr_account', '', PARAM_RAW);
$fulltext = optional_param('flickr_fulltext', '', PARAM_RAW);
+ if (empty($fulltext)) {
+ $fulltext = optional_param('s', '', PARAM_RAW);
+ }
$tag = optional_param('flickr_tag', '', PARAM_RAW);
+ $license = optional_param('flickr_license', '', PARAM_RAW);
+
$this->sess_account = 'flickr_public_'.$this->id.'_account';
$this->sess_tag = 'flickr_public_'.$this->id.'_tag';
$this->sess_text = 'flickr_public_'.$this->id.'_text';
- if (!empty($account) or !empty($fulltext) or !empty($tag)) {
- $SESSION->{$this->sess_account} = $account;
+ $this->sess_license = 'flickr_public_'.$this->id.'_license';
+
+ if (!empty($account) or !empty($fulltext) or !empty($tag) or !empty($license)) {
$SESSION->{$this->sess_tag} = $tag;
$SESSION->{$this->sess_text} = $fulltext;
+ $SESSION->{$this->sess_account} = $account;
+ $SESSION->{$this->sess_license} = $license;
}
}
$email_field->type = 'text';
$email_field->name = 'flickr_account';
- $ret['login'] = array($fulltext, $tag, $email_field);
+ $license = new stdclass;
+ $license->label = get_string('license', 'repository_flickr_public').': ';
+ $license->id = 'flickr_license_type';
+ $license->type = 'radio';
+ $license->name = 'flickr_license';
+ // all -> all licenses
+ // cc -> creative commons
+ // ccc -> reeative commons commercial
+ $license->value = implode('|', array('all', 1, 2, 3, 4, 5, 6));
+ $license->value_label = implode('|', array(
+ get_string('all', 'repository_flickr_public'),
+ get_string('by-nc-sa', 'repository_flickr_public'),
+ get_string('by-nc', 'repository_flickr_public'),
+ get_string('by-nc-nd', 'repository_flickr_public'),
+ get_string('by', 'repository_flickr_public'),
+ get_string('by-sa', 'repository_flickr_public'),
+ get_string('by-nd', 'repository_flickr_public')
+ ));
+
+ $ret['login'] = array($fulltext, $tag, $email_field, $license);
$ret['login_btn_label'] = get_string('search');
$ret['login_search_form'] = true;
return $ret;
$page = 1;
}
if (!empty($SESSION->{$this->sess_tag}) or !empty($SESSION->{$this->sess_text})
- or !empty($SESSION->{$this->sess_account})
- or !empty($this->nsid)) {
-
- $photos = $this->flickr->photos_search(array(
- 'tags'=>$SESSION->{$this->sess_tag},
- 'page'=>$page,
- 'per_page'=>24,
- 'user_id'=>$this->nsid,
- 'text'=>$SESSION->{$this->sess_text}));
+ or !empty($SESSION->{$this->sess_account}) or !empty($this->nsid))
+ {
+ if ( empty($SESSION->{$this->sess_license}) or $SESSION->{$this->sess_license}=='all') {
+ $photos = $this->flickr->photos_search(array(
+ 'tags'=>$SESSION->{$this->sess_tag},
+ 'page'=>$page,
+ 'per_page'=>24,
+ 'user_id'=>$this->nsid,
+ 'text'=>$SESSION->{$this->sess_text}
+ )
+ );
+ } else {
+ $photos = $this->flickr->photos_search(array(
+ 'tags'=>$SESSION->{$this->sess_tag},
+ 'page'=>$page,
+ 'per_page'=>24,
+ 'user_id'=>$this->nsid,
+ 'license'=>$SESSION->{$this->sess_license},
+ 'text'=>$SESSION->{$this->sess_text}
+ )
+ );
+ }
}
$ret = array();
+ if (empty($photos)) {
+ $ret['list'] = array();
+ return $ret;
+ }
$ret = $this->build_list($photos, $page, $ret);
$ret['list'] = array_filter($ret['list'], array($this, 'filter'));
return $ret;
if(login[k].value) {
field_value = ' value="'+login[k].value+'"';
}
- str += '<td align="left"><input type="'+login[k].type+'"'+' name="'+login[k].name+'"'+field_id+field_value+' /></td>';
+ if(login[k].type=='radio'){
+ var list = login[k].value.split('|');
+ var labels = login[k].value_label.split('|');
+ str += '<td align="left">';
+ for(var item in list) {
+ str +='<input type="'+login[k].type+'"'+' name="'+login[k].name+'"'+
+ field_id+' value="'+list[item]+'" />'+labels[item]+'<br />';
+ }
+ str += '</td>';
+ }else{
+ str += '<td align="left"><input type="'+login[k].type+'"'+' name="'+login[k].name+'"'+field_value+' /></td>';
+ }
}
str +='</tr>';
}
str +='</table>';
- var btn_label = login['login_btn_label']?login['login_btn_label']:fp_lang.submit;
+ var btn_label = data['login_btn_label']?data['login_btn_label']:fp_lang.submit;
if (data['login_search_form']) {
str += '<p><input type="button" onclick="repository_client.search(\''+id+'\', \''+data.repo_id+'\')" value="'+btn_label+'" /></p>';
} else {
params[data[k].name] = '';
if(el.type == 'checkbox') {
params[data[k].name] = el.checked;
+ } else if(el.type == 'radio') {
+ var tmp = document.getElementsByName(data[k].name);
+ for(var i in tmp) {
+ if (tmp[i].checked) {
+ params[data[k].name] = tmp[i].value;
+ }
+ }
} else {
params[data[k].name] = el.value;
}
var footer = document.getElementById('fp-footer-'+client_id);
footer.style.display = 'none';
var pathbar = document.getElementById('path-'+client_id);
- pathbar.style.display = 'none';
+ if(pathbar){
+ pathbar.style.display = 'none';
+ }
var panel = new YAHOO.util.Element('panel-'+client_id);
var html = '<div class="fp-rename-form">';
html += '<p><img src="'+icon+'" /></p>';
var list = null;
if (typeof client_id == 'object') {
// click button
- alert('from button');
client_id = data;
list = repository_client.fp[client_id].fs.list;
} else if(!data) {