--- loncom/interface/lonmeta.pm 2005/05/09 01:51:44 1.97
+++ loncom/interface/lonmeta.pm 2005/08/13 19:32:28 1.105
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Metadata display handler
#
-# $Id: lonmeta.pm,v 1.97 2005/05/09 01:51:44 banghart Exp $
+# $Id: lonmeta.pm,v 1.105 2005/08/13 19:32:28 banghart Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -17,7 +17,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
-# You should have received a copy of the GNU General Public License
+# You should have received a copy of the GNU General Public License
# along with LON-CAPA; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
@@ -33,7 +33,7 @@ use LONCAPA::lonmetadata();
use Apache::Constants qw(:common);
use Apache::lonnet;
use Apache::loncommon();
-use Apache::lonhtmlcommon();
+use Apache::lonhtmlcommon();
use Apache::lonmsg;
use Apache::lonpublisher;
use Apache::lonlocal;
@@ -288,6 +288,36 @@ sub fieldnames {
return &Apache::lonlocal::texthash(%fields);
}
+sub select_course {
+ my ($r)=@_;
+ $r->print('
Instructor Selected Meta-Data
');
+ $r->print('
+ENDCLEAR
my %brokenurls =
&Apache::lonmsg::all_url_author_res_msg($author,$domain);
foreach (sort(keys(%brokenurls))) {
@@ -873,6 +921,81 @@ sub print_dynamic_metadata {
$r->print("");
return;
}
+sub save_instructor_metadata {
+ my ($r) = @_;
+ my $uri=$r->uri;
+ my $fn=&Apache::lonnet::filelocation('',$uri);
+ my @words = &Apache::loncommon::get_env_multiple('form.keywords');
+ $r->print('This is the save instructor metadata area ');
+ my $mfh;
+ my $formname='store';
+ my $file_content;
+ foreach (sort keys %Apache::lonpublisher::metadatafields) {
+ next if ($_ =~ /\./);
+ my $unikey=$_;
+ $unikey=~/^([A-Za-z]+)/;
+ my $tag=$1;
+ $tag=~tr/A-Z/a-z/;
+ $file_content.= "\n\<$tag";
+ foreach (split(/\,/,
+ $Apache::lonpublisher::metadatakeys{$unikey})
+ ) {
+ my $value=$Apache::lonpublisher::metadatafields{$unikey.'.'.$_};
+ $value=~s/\"/\'\'/g;
+ $file_content.=' '.$_.'="'.$value.'"' ;
+ # print $mfh ' '.$_.'="'.$value.'"';
+ }
+ $file_content.= '>'.
+ &HTML::Entities::encode
+ ($Apache::lonpublisher::metadatafields{$unikey},
+ '<>&"').
+ ''.$tag.'>';
+ }
+
+ foreach my $word (@words) {
+ $r->print('You entered:'.$word.' ');
+ }
+ my $tag = 'keywords';
+ $file_content.= "\n\<$tag";
+ $file_content.= '>'.
+ &HTML::Entities::encode
+ (join(', ',@words),
+ '<>&"').
+ '';
+ $fn =~ /\/portfolio\/(.*)$/;
+ my $new_fn = '/'.$1;
+ $env{'form.'.$formname}=$file_content;
+ $env{'form.'.$formname.'.filename'}=$new_fn;
+ &Apache::lonnet::userfileupload('uploaddoc','',
+ 'portfolio'.$env{'form.currentpath'});
+ my $status =&Apache::lonnet::userfileupload($formname,'','portfolio');
+ if (&Apache::lonnet::userfileupload($formname,'','portfolio') eq 'error: no uploaded file') {
+ $r->print('
'.
+ &mt('Could not write metadata').', '.
+ &mt('FAIL').'