);
}elsif($mediatype eq "asx"){
$player_js = qq();
}
$page =~ s/\$player_js\$/$player_js/;
#BACKGROUND
$page =~ s/\$background\$/$background/g;
$page =~ s/\$brandTags\$/$brandTags/g;
$page =~ s/\$presby\$/$presby/g;
print "$page";
print PAGE $page;
close(PAGE);
}
sub div2(){
my $file = shift;
my $embed;
my $src;
#EMBED AUDIO REAL OR WINDOWS MEDIA
$src = $file;
if($mediatype eq "ram"){
$embed = &embed_realmedia($src);
}elsif($mediatype eq "asx"){
$embed = &embed_windowsmedia($src);
}
$div2 = "$embed";
}
sub mediacontrols(){
my $file = shift;
my $controls;
#Embed RealPlayer Controls
if($mediatype eq "ram"){
$controls = qq();
}
elsif($mediatype eq "asx"){
$controls = qq();
}
return($controls);
}
sub embed_realmedia(){
my $file = shift;
my $code;
my $mediasource;
if ($file =~ /sportsline_nfl/ || $file =~ /nflfilms/){
$file =~s/real\/sportsline_nfl/\/real\/sportslinenfl/;
$file = "http:\/\/boss.streamos.com$file";
}
elsif ($file =~ /sportslinenfl/){
$file = "http:\/\/boss.streamos.com$file";
}
else {
$file = "http://ww1.sportsline.com".$file;
#$file = "http://stage1.sportsline.com".$file;
}
if(($brand eq "NCAAB")||($contentid eq "55")||($mediasubject eq "basketball.ncaab")){
$mediasource = $file;
}
elsif($mediaformat eq "v"){
#$mediasource = "/u/mp/1/playlist-video-real.cgi?file=$file";
$mediasource = $file;
}else{
$mediasource = $file;
}
#RealPlayer Object
$code = qq();
return($code);
}
sub embed_windowsmedia(){
my $file = shift;
my $code;
my $mediasource;
#$file = "http://ww1.sportsline.com".$file unless($file =~ /http\:\/\/www\.sportsline\.com/);
#$file = "http://stage1.sportsline.com".$file;
#$file = "http://ww1.sportsline.com".$file;
$file = "http://ww1.sportsline.com".$file;
if($mediaformat eq "v"){
#$mediasource = $file;
$mediasource = "/u/mp/1/playlist-video-wmp.cgi?file=".$file."&band=".$bandwidth;
}else{
$mediasource = $file;
}
$code = qq();
return($code);
}
sub parseXML(){
if($contenttype eq "1"){
#TYPE 1 LOOKING FOR AUDIO FOR 'MORE MEDIA'
if($mediasubject){
$sport = $mediasubject;
}elsif($subject){
$sport = $subject;
}else{
$sport = $att{'subject'};
}
foreach $value (@values){
if($subject =~ /$value/){
if ($contentid == 4130253){
$audiopageFile = "0,3281,$sportsId{$value},00.xml"; last;
}else{
$mediapageFile = "0,3596,$sportsId{$value},00.xml";
$audiopageFile = "0,3281,$sportsId{$value},00.xml"; last;
}
}elsif($mediasubject =~ /$value/){
$mediapageFile = "0,3596,$sportsId{$value},00.xml";
$audiopageFile = "0,3281,$sportsId{$value},00.xml"; last;
}elsif($att{'subject'} =~ /$value/){
$mediapageFile = "0,3596,$sportsId{$value},00.xml";
$audiopageFile = "0,3281,$sportsId{$value},00.xml"; last;
}elsif($sportID{$contentlid} =~ /$value/){
$mediapageFile = "0,3596,$sportsId{$value},00.xml";
$audiopageFile = "0,3281,$sportsId{$value},00.xml"; last;
}
}
$limit = 75;
if (-e "$mediapageDir$mediapageFile"){
&parse_mediapageXML($mediapageFile);
}
# &sort_mediaData();
&parse_audiopageXML($audiopageFile);
&lmore_media();
}elsif($contenttype eq "2"){
#TYPE 2 MENU LINK
foreach $value (@values){
if($subject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($mediasubject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($att{'subject'} =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}
}
$subject = $mediasubject;
$limit = 55;
#TYPE 2 Video Commented begin
$mediapageFile = "0,3596,$sportsId{$mediasubject},00.xml";
if (-e "$mediapageDir$mediapageFile"){
&parse_mediapageXML($mediapageFile);
}
#TYPE 2 Video Commented end
if((($mediasubject eq "basketball.nba") || ($mediasubject eq "basketball.wnba") || ($mediasubject eq "hockey.nhl") || ($mediasubject eq "autoracing") || ($mediasubject eq "tennis") || ($mediasubject eq "golf") || ($mediasubject eq "football.nfl")) && ($mediaformat eq "v") && ($mediatype eq "ram") && ($contenttype eq "2")){
$icon = $vidImg;
&parse_audiopageXML($audiopageFile);
$haveVideo = "[$lid]";
&more_media();
}else{
# &sort_mediaData();
&parse_audiopageXML($audiopageFile);
$haveVideo = "[$lid]";
&more_media();
}
}
elsif (($contenttype eq "3") && ($brand eq "porsche")){
$m_media .= `cat /html/u/madness/2003/game-highlights-navigation.html`;
}
elsif (($contenttype eq "3") && ($brand eq "xp")){
$m_media .= `cat /html/u/madness/2003/xp-navigation.html`;
}
elsif (($contenttype eq "3") && ($brand eq "nfl")){
if ($bandwidth eq "56k"){
$m_media .= `cat /html/u/football/nfl/video/navigation_56k.html`;
}
elsif ($bandwidth eq "100k"){
$m_media .= `cat /html/u/football/nfl/video/navigation_100k.html`;
}
elsif ($bandwidth eq "300k"){
$m_media .= `cat /html/u/football/nfl/video/navigation_300k.html`;
}
else{
$m_media .= `/html/u/football/nfl/video/navigation_100k.html`;
}
foreach $key (keys(%sportsId)){
if($sportsId{$key} =~ "$contentid"){
$subject = "$key";
}else{
}
}
$limit = 125; #1818
$audiopageFile = "0,3281,$contentid,00.xml";
&parse_audiopageXML($audiopageFile);
$mediapageFile = "0,3596,$contentid,00.xml";
if (-e "$mediapageDir$mediapageFile"){
&parse_mediapageXML($mediapageFile);
}
#&more_media();
# $m_media = $m_media.$j;
}
elsif($contenttype eq "3"){
#TYPE 3 AUDIO INDEX LINK
foreach $key (keys(%sportsId)){
if($sportsId{$key} =~ "$contentid"){
$subject = "$key";
}else{
}
}
$limit = 125; #1818
$audiopageFile = "0,3281,$contentid,00.xml";
&parse_audiopageXML($audiopageFile);
$mediapageFile = "0,3596,$contentid,00.xml";
if (-e "$mediapageDir$mediapageFile"){
&parse_mediapageXML($mediapageFile);
}
#&sort_mediaData();
#&related_media();
&more_media();
}elsif($contenttype eq "4"){
#TYPE 4 AUDIO ALPHA LINK
foreach $key (keys(%sportsId)){
$compare_id = $sportsId{$key} . "_";
$compare_id = $sportsId{$key};
if($contentid =~ /^$compare_id$/){
$subject = "$key";
last;
}else{
}
}
$limit = 725;
$audiopageFile = "0,3281,$contentid,00.xml";
$audiopageFile = "0,3281,$alphaXML,00.xml";
&parse_audiopageXML($audiopageFile);
#&related_media();
$alphaClips = &more_media();
}elsif($contenttype eq "5"){
#TYPE 5 VIDEO LINK
foreach $value (@values){
if($subject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($mediasubject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($att{'subject'} =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}
}
$subject = $mediasubject;
$limit = 65;
#TYPE 5 Video Commeted begin
$mediapageFile = "0,3596,$sportsId{$mediasubject},00.xml";
if (-e "$mediapageDir$mediapageFile"){ &parse_mediapageXML($mediapageFile); }
#TYPE 5 Video Commeted end
#&sort_mediaData();
&parse_audiopageXML($audiopageFile);
&lmore_media();
}elsif($contenttype eq "6"){
#TYPE 6 VIDEO LINK
foreach $value (@values){
if($subject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($mediasubject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($att{'subject'} =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}
}
$subject = $mediasubject;
$limit = 65;
#TYPE 6 Video Commeted begin
$mediapageFile = "0,3596,$sportsId{$mediasubject},00.xml";
if (-e "$mediapageDir$mediapageFile"){ &parse_mediapageXML($mediapageFile); }
#TYPE 6 Video Commeted end
&parse_audiopageXML($audiopageFile);
&lmore_media();
}elsif ($contenttype eq "temp"){
#TYPE TEMP
$file = "http:\/\/boss.streamos.com$file";
foreach $value (@values){
if($subject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($mediasubject =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}elsif($att{'subject'} =~ /$value/){
$lid = $sportsId{$value}; $audiopageFile = "0,3281,$lid,00.xml"; last;
}
}
$subject = $mediasubject;
$limit = 65;
$mediapageFile = "0,3596,$sportsId{$mediasubject},00.xml";
if (-e "$mediapageDir$mediapageFile"){
&parse_mediapageXML($mediapageFile);
}
&parse_audiopageXML($audiopageFile);
}
}
sub parse_mediapageXML(){
my $mediapageFile = shift;
#SET MEDIA PAGE PARSER OBJECT
my $mediapageParser = new XML::Parser(ErrorContext => 2);
$mediapageParser->setHandlers(Start => \&start_handler,
End => \&end_handler,
Char => \&mediapageChar_handler);
#PARSE AUDIO PAGE
sort (@date);
$test = $mediapageDir . $mediapageFile;
unless(-e $test){
$mediapageFile = ""; #NO ALTERNATE MEDIA PAGE
}
#PARSE AUDIO PAGE FILE
eval{$mediapageParser->parsefile("$mediapageDir$mediapageFile")} if($mediapageFile);
$error .= "EVAL: mediapageParser '$mediapageDir$mediapageFile' $@
\n";
if($@){};
}
sub parse_audiopageXML(){
$audiopageFile = shift;
#SET AUDIO PAGE PARSER OBJECT
my $audiopageParser = new XML::Parser(ErrorContext => 2);
$audiopageParser->setHandlers(Start => \&startaudio_handler,
End => \&end_handler,
Char => \&audiopageChar_handler);
#PARSE AUDIO PAGE
$test = $audiopageDir . $audiopageFile;
unless(-e $test){
#$audiopageFile = "0,3281,13,00.xml"; #ALTERNATE AUDIO PAGE
$audiopageFile = "0,3281,59,00.xml"; #ALTERNATE AUDIO PAGE
}
$audiopageFile = "0,3281,59,00.xml" unless($audiopageFile); #ALTERNATE AUDIO PAGE
#PARSE AUDIO PAGE FILE
eval{$audiopageParser->parsefile("$audiopageDir$audiopageFile")};
$error .= "EVAL: audiopageParser '$audiopageDir$audiopageFile' $@
\n";
if($@){};
$mSize = @more_m_person;
}
sub search_dir(){
#FIND FILE TO BE OPENED
my $dir = shift;
my $storyId = shift;
my $type = shift;
my $file;
my @list = `ls -t $dir`;
foreach $filename (@list){
chomp($filename);
next unless($filename =~ /xml$/);
if($filename =~ /$storyId/){
$file = $filename;
last;
}
}
return($file);
}
sub end_handler {
$expat = shift;
$element = shift;
}
sub mediaEnd_handler {
$expat = shift;
$element = shift;
if($element eq "media_instance"){
($junk,$end) = split(/\_/, $metaId);
$end = "_$end";
}
}
sub headline_titles(){
##HEADLINE TITLES MUST BEGIN WITH A CAPITAL LETTER AND BE LONGER THAN 5 CHARACTERS
##AS A SAFEGUARD AGAINST BAD DATA IN XML FILES (an apostrophe in a name returns 3 headline files)
if($data =~ /^[a-z]/){
return(1);
}
if(length($data) < 5){
return(1);
}
}
sub headlineChar_handler {
($p, $data) = @_;
$data =~ s/\n+/ /g;
$substr = substr($data,0,1);
return() if(&headline_titles); ##SCREENS OUT BAD DATA IN HEADLINES
if($element eq "headline" && $data ne " "){
push(@headline_m_link, $att{'href'});
push(@headline_m_data, $data);
$headline_items++;
}
}
sub mediaRef(){
my $mediaRef;
my $mediaLink = shift;
my $refType = shift; #('audio' | 'video')
if($mediaLink =~ /cbs.sportsline.com/){
$mediaLink =~ s/\.$mediatype$//;
if($mediaLink =~ /$mediatype$/){
$mediaRef = "javascript:goMovie('$mediaLink','$refType')";
}else{
$mediaRef = "javascript:goMovie('$mediaLink.$mediatype','$refType')";
}
$mediaLink =~ s/http:\/\/ww1\.sportsline\.com//;
}elsif($mediaLink =~ /nflcom/ && $mediaLink =~ /rm/){
$mediaRef = "javascript:goMovie('$mediaLink','$refType')";
#}elsif($mediaLink =~ /asx/){
# $mediaRef = "javascript:goMovie('$mediaLink','wmp')";
}else{
$mediaRef = "javascript:goMovie('http://ww1.sportsline.com$mediaLink.$mediatype','$refType')";
}
return($mediaRef);
}
sub sort_mediaData(){
#reverse sort (@date);
foreach $cid (@cID){
#Controls NFL.com and SPLN video Clips feed_ID eq 5 for NFL.com
next if($feed_id[$cid] eq "5");
#foreach $cid (sort(@cID)){
#next unless($cid);
if(
($href[$cid] =~ /$metaId/) &&
(
($href[$cid] =~ /$mediatype$/ || $href[$cid] =~ /rm$/)
||
($href[$cid] =~ /$mediatype$/ || $href[$cid] =~ /ram$/)
||
($href[$cid] =~ /$mediatype$/ || $href[$cid] =~ /smi$/)
)
){
#REQUESTED CLIP
$mediaRef = &mediaRef($href[$cid],$type[$cid]);
$embedRef = $href[$cid];
$embedRef =~ s/http:\/\/ww1.sportsline.com//g;
$metaLink = $mediaRef;
$related_person = "$iname[$cid]" unless($person);
$related_date = $date[$cid];
unless($related_person){
$related_person = $title[$cid];
$title[$cid] = "";
}
unshift(@related_m_person, $related_person);
unshift(@related_m_date, $date[$cid]);
unshift(@related_m_title, $title[$cid]);
unshift(@related_m_mediaRef, $mediaRef);
unshift(@related_m_data, $synopsis[$cid]);
unshift(@related_m_type, $type[$cid]);
}else{
#OTHER CLIPS
$mediaRef = &mediaRef($href[$cid],$type[$cid]);
$test = join("\
", @related_data);
unless($iname[$cid]){
$iname[$cid] = $title[$cid];
$title[$cid] = "";
}
push(@more_m_person, $iname[$cid]);
push(@more_m_date, "$date[$cid]");
push(@more_m_title, $title[$cid]);
push(@more_m_mediaRef, $mediaRef);
push(@more_m_href, $href[$cid]);
push(@more_m_data, $synopsis[$cid]);
push(@more_m_type, $type[$cid]);
push(@more_m_feed_id, $feed_id[$cid]);
}
}
}
sub start_handler {
$expat = shift;
$element = shift;
while (@_) {
$atts = shift;
$val = shift;
$val =~ s/\s+$/\n/g;
$att{$atts} = $val;
}
$i++;
}
sub mediapageChar_handler {
$p = shift;
$data = shift;
$es = join(", ", @es);
$jj++;
$data =~ s/\n+/ /g;
#ELEMENT
#return if(grep(/$att{'content_id'}/, @cID));
push(@es, $element) unless(grep(/$element/, @es));
#SORT
if($element eq "media_collection"){
#content_type subject
$cgID = $att{'content_group_id'};
$subject[$cgID] = $att{'subject'};
}elsif($element eq "media"){
foreach $Key (keys %att){
}
$cID = $att{'content_id'};
push(@cID, $cID) unless(grep(/$cID/, @cID));
$x = grep(/$att{'content_id'}/, @cID);
if($cID){
#push(@cID, $cID) unless(grep(/$cID/, @cID));
$type[$cID] = $att{'type'};
$league_id[$cID] = $att{'league_id'};
$sport_id[$cID] = $att{'sport_id'};
$team_id[$cID] = $att{'team_id'};
$player_id[$cID] = $att{'player_id'};
$date[$cID] = $att{'date'};
$feed_id[$cID] = $att{'feed_id'} if ($att{'feed_id'} ne "");
$type[$cID] =~ s/External Real/video/g;
}
}elsif($element eq "name"){
if($data =~ /[A-Z]/){
$iname[$cID] = $data;
}
}elsif($element eq "title"){
if($data =~ /[A-Z]/){
$title[$cID] = $data;
$title{$cID} = $data;
}
}elsif($element eq "synopsis"){
if($data =~ /[A-Z]/){
$synopsis[$cID] = $data;
}
}elsif($element eq "media_instance"){
($junk,$end) = split(/\_/, $metaId);
$end = "_$end";
if(($att{'href'} =~ /$mediatype$/) &&($att{'href'} =~ /$end/)){
#if(($att{'href'} =~ /$mediatype$/)&&($att{'href'} =~ /$metaId/))
#STOPPED
#href type
$href[$cID] = $att{'href'};
$mFormat[$cID] = $att{'type'};
}elsif($att{'href'} =~ /rm$/ || $att{'href'} =~ /rtsp$/ || $att{'href'} =~ /smi$/){
$href[$cID] = $att{'href'};
$mFormat[$cID] = $att{'type'};
}else{
}
}
}
sub startaudio_handler {
$expat = shift;
$element = shift;
%att = ();
while (@_) {
$att = shift;
$val = shift;
$val =~ s/\s+$/\n/g;
$att{$att} = $val;
}
$i++;
}
sub audiopageChar_handler {
($p, $data) = @_;
$data =~ s/\n+/ /g;
# HOW DO WE DEAL WITH VIDEO ?!?!?!?!??!?
if(($mediatype eq "asx") && ($mediaformat eq "v") && ($att{'href'} =~ /_g/)){
$att{'href'} =~ s/_g/_h/g;
}
if($element eq "link" && $data ne " "){
if($masterAudio =~ /$att{'href'}/){
#DISCARD DUPLICATE CLIP
}else{
#AUDIOPAGE ATTRIBUTES: (name, title, type, date, href)
if(($att{'type'} eq "audio")||($att{'type'} eq "video")){
##JS CALL TO EMBEDED PLAYER
$mediaRef = &mediaRef($att{'href'},$att{'type'});
##EMBED FILE REFERENCE
if(($att{'href'} =~ /$metaId/)&&($metaId)){
## THIS IS THE CLIP REQUESTED, PLACE AT THE TOP OF THE LIST!!
$embedRef = "$att{'href'}.$mediatype";
$metaLink = $mediaRef;
$alpha_by = substr($att{'last_name'},0,1);
$related_person = &names;
$related_date = $att{'date'};
unshift(@related_m_person, $related_person);
unshift(@related_m_last, $att{'last_name'});
unshift(@related_m_date, $att{'date'});
unshift(@related_m_title, $att{'title'});
unshift(@related_m_mediaRef, $mediaRef);
unshift(@related_m_data, $data);
unshift(@related_m_type, $att{'type'});
}else{
#LIMIT THE NUMBER OF AUDIO CLIPS ($j needed for "More Media" section title)
if($j++ >=$limit){ #1818#COUNT MORE MEDIA CLIPS
#return;
}
$name = &names;
push(@more_m_person, $name);
push(@more_m_last, $att{'last_name'});
push(@more_m_date, "$att{'date'}");
push(@more_m_title, $att{'title'});
push(@more_m_mediaRef, $mediaRef);
push(@more_m_data, $data);
push(@more_m_type, $att{'type'});
}
$t2_first_clip = "$att{'href'}.$mediatype" unless($t2_first_clip);
$metaLink = $mediaRef unless($metaLink);
}elsif ($att{'type'} eq "video"){
}
}
}
}
sub names(){
my $person;
$person = "$att{'name'}";
$person = "$att{'first_name'} $att{'last_name'}" unless($person);
return($person);
}
sub changeColor(){
#CHANGE THE CELL BACKGROUND COLOR ARRAY ELEMENT
my $color = shift;
$lastColor = $color;
$colorChanges++;
if($color){
$color = 0;
}else{
$color = 1;
}
return($color);
}
sub mediaPersonInsert(){
#INSERT PERSON/TITLE ROW
my $insert = shift;
my $media;
$media .= qq(| );
$media .= qq($insert |
\n);
return($media);
}
sub mediaBox(){
my $text = shift;
my $mediaBox;
$mediaBox = qq();
$mediaBox .= qq();
$mediaBox .= qq(| );
$mediaBox .= qq( $text | );
$mediaBox .= qq( |
);
return($mediaBox);
}
sub new_person(){
my $person = shift;
my $title = shift;
my $i = shift;
my $relation = shift; #"related" or "more" media
my $date = shift;
my $new_person;
my $spot;
if($person ne $last_person){
$people++;
if($relation eq "related"){
$spot = "$person
$title $date";
}else{
$spot = "$person
$title $date";
}
$color = &changeColor($color);
$topmedia = "";
$new_person = &mediaPersonInsert("$spot");
}else{
$new_person = "";
}
$last_person = $person;
return($new_person);
}
sub sort_moremedia(){
my $size = @more_m_date;
for($i=$size-1; $i>=0; $i--){
($m,$d,$y) = split (/\//, $more_m_date[$i]);
$m = $m - 1; #CONVERT TO UNIX MONTH NUMBER
$epoch = timelocal(0,0,0,$d,$m,$y);
$epoch{$i} = $epoch;
push (@dateSort, $epoch) unless(grep(/$epoch/, @dateSort));
$mmData{$epoch}{$i} = $more_m_data[$i];
$mmPerson{$epoch}{$i} = $more_m_person[$i];
$mmMediaRef{$epoch}{$i} = $more_m_mediaRef[$i];
$mmDate{$epoch}{$i} = $more_m_date[$i];
$mmType{$epoch}{$i} = $more_m_type[$i];
$mmTitle{$epoch}{$i} = $more_m_title[$i];
}
$j = 0;
foreach $ep (reverse(@dateSort)){
$x = $size -1;
for($i=0;$i<$size;$i++){
next unless($mmData{$ep}{$i});
$mmPerson[$j] = $mmPerson{$ep}{$i};
$mmData[$j] = $mmData{$ep}{$i};
$mmMediaRef[$j] = $mmMediaRef{$ep}{$i};
$mmDate[$j] = $mmDate{$ep}{$i};
$mmType[$j] = $mmType{$ep}{$i};
$mmTitle[$j] = $mmTitle{$ep}{$i};
$mmType[$j] =~ s/External Real/video/g;
$j++;
}
}
$j = 0;
}
sub more_media(){
my $j;
my $n = @more_m_person;
my $icon;
$howmany = $n;
&sort_moremedia();
$sizeof_mmP = @mmPerson;
$sizeof_m_m_p = @more_m_person;
$color = 0;
$MboxTitle = &mediaBox("MORE MEDIA");
$last_person = $more_m_person[0];
$more_m_person = "" ;
$last_person = "" ;
for($i=0;$i<$n;$i++){
next unless($mmPerson[$i]);
$icon = $audImg if($mmType[$i] eq "audio");
$icon = $vidImg if($mmType[$i] eq "video");
if(($related_person eq $more_m_person[$i])&&($contenttype >= 3)&&($related_date eq $more_m_date[$i])){
#SEPERATE VIDEO
$icon = $audImg if($mmType[$i] eq "audio");
$icon = $vidImg if($mmType[$i] eq "video");
$icon = $audImg if($more_m_type[$i] eq "audio");
$icon = $vidImg if($more_m_type[$i] eq "video");
next;
}
if($contenttype <= 3){
$icon = $audImg if($mmType[$i] eq "audio");
$icon = $vidImg if($mmType[$i] eq "video");
$icon = $audImg if($more_m_type[$i] eq "audio");
$icon = $vidImg if($more_m_type[$i] eq "video");
$m_media .= &new_person($mmPerson[$i],$mmTitle[$i],$i,"more") if($mmPerson[$i]);
$m_media .= "| $icon | ";
$m_media .= "$mmData[$i]";
$m_media .= "($mmDate[$i]) |
\n";
$lastTitle = $mm_title[$i];
$lastType = $more_m_type[$i];
last if($j++ > $limit);
}elsif($contenttype eq "4"){ #AUDIO ALPHA PAGES
if(($more_m_last[$i] =~ /^$alpha_by/)||($more_m_person[$i] =~ / $alpha_by/)){
$m_media .= &new_person($mmPerson[$i],$mmTitle[$i],$i,"more") if($mmPerson[$i]);
$m_media .= "| $icon | ";
$m_media .= "$mmData[$i] ";
$m_media .= "($mmDate[$i]) |
\n";
last if($j++ > $limit);
}
}elsif($contenttype eq "5" || $contenttype eq "6"){
#EXCLUDE CONTENT INCLUDED IN RELATED SECTION
$icon = $audImg if($mmType[$i] eq "audio");
$icon = $vidImg if($mmType[$i] eq "video");
$m_media .= &new_person($mmPerson[$i],$mmTitle[$i],$i,"more") if($mmPerson[$i]);
$m_media .= "| $icon | ";
$m_media .= "$mmData[$i] ";
$m_media .= "($mmDate[$i]) |
\n";
last if($j++ > $limit);
}
}
$m_media = $MboxTitle . $m_media if($m_media);
return($j);
}
sub lmore_media(){
my $j;
my $n = @more_m_person;
my $icon;
$howmany = $n;
&sort_moremedia();
$color = 0;
$MboxTitle = &mediaBox("MORE MEDIA");
$last_person = $more_m_person[0];
$more_m_person = "" ;
$last_person = "" ;
for($i=0;$i<$n;$i++){
$more_m_type[$i] =~ s/External Real/video/g;
$icon = $audImg if($more_m_type[$i] eq "audio");
$icon = $vidImg if($more_m_type[$i] eq "video");
if(($related_person eq $more_m_person[$i])&&($contenttype >= 3)&&($related_date eq $more_m_date[$i])){
next;
}
if($contenttype <= 3){
$m_media .= &new_person($more_m_person[$i],$more_m_title[$i],$i,"more") if($more_m_person[$i]);
$m_media .= "| $icon | ";
$m_media .= "";
$m_media .= "\n$more_m_data[$i] ";
$m_media .= "($more_m_date[$i]) |
\n";
$m_media .= "\n";
last if($j++ > $limit);
}elsif($contenttype eq "4"){ #AUDIO ALPHA PAGES
if($more_m_last[$i] =~ /^$alpha_by/){
$m_media .= &new_person($more_m_person[$i],$more_m_title[$i],$i,"more") if($more_m_person[$i]);
$m_media .= "| $icon | ";
$m_media .= "";
$m_media .= "\n$more_m_data[$i] ";
$m_media .= "($more_m_date[$i]) |
\n";
$m_media .= "\n";
last if($j++ > $limit);
}
}elsif($contenttype eq "5" || $contenttype eq "6"){
#EXCLUDE CONTENT INCLUDED IN RELATED SECTION
unless((grep(/$cID[$i]/, @related_cID))&&($cID[$i])){
$m_media .= &new_person($more_m_person[$i],$more_m_title[$i],$i,"more") if($more_m_person[$i]);
$m_media .= "| $icon | ";
$m_media .= "";
$m_media .= "\n$more_m_data[$i] ";
$m_media .= "($more_m_date[$i]) |
\n";
$m_media .= "\n";
last if($j++ > $limit);
}
}elsif($contenttype eq "temp"){
$m_media .= &new_person($more_m_person[$i],$more_m_title[$i],$i,"more") if($more_m_person[$i]);
$m_media .= "| $icon | ";
$m_media .= "";
$m_media .= "\n$more_m_data[$i] ";
$m_media .= "($more_m_date[$i]) |
\n";
$m_media .= "\n";
last if($j++ > $limit);
}
}
$m_media = $MboxTitle . $m_media if($m_media);
$m_media .= "";
return($j);
}
sub storyChar_handler {
($p, $data) = @_;
$data =~ s/\n+/ /g;
$data =~ s/\s+/ /g;
if($element eq "link" && $data ne " "){
#LINK ELEMENTS (AUDIO | VIDEO | PHOTO | STORY)
##TEST FOR CONTENT TYPE (AUDIO | VIDEO | PHOTO | STORY)
if (($att{'type'} eq "audio") || ($att{'type'} eq "AUDIO")){
&storyChar_media("audio");
}elsif(($att{'type'} eq "video") || ($att{'type'} eq "VIDEO")){
&storyChar_media("video");
}
$lasttitle = $att{'title'};
}elsif($element eq "media_instance"){ # && $data ne " ")
# if(($mediatype eq "asx") &&($att{'type'} =~ /Windows/));
}elsif($element eq "content"){ # && $data ne " ")
#CONTENT ELEMENT - SUBJECT FOUND HERE
if($att{'subject'}){
$subject = $att{'subject'} if($att{'subject'});
}
}
}
sub storyChar_media(){
##ADD:
my $mediaType = shift; # ( "audio" || "video" )
##JS CALL TO EMBEDED PLAYER
$mediaRef = &mediaRef($att{'href'},$att{'type'});
if($masterAudio =~ /$att{'href'}/){
#DUPLICATE FILE!!! - Discarding
next;
}
##EMBED FILE REFERENCE
if(($att{'href'} =~ /$metaId/)&&($metaId)){
$embedRef = "$att{'href'}.$mediatype";
$topmedia = 1;
## THIS IS THE CLIP REQUESTED, PLACE AT THE TOP!!
$metaLink = $mediaRef;
$person = "$att{'first_name'} $att{'last_name'}
$att{'title'}";
$top_person = &mediaPersonInsert("$person p:$people c:$color");
unshift(@related_m_person, &names);
unshift(@related_m_title, $att{'title'});
unshift(@related_m_mediaRef, $mediaRef);
unshift(@related_m_data, $data);
unshift(@related_m_type, $mediaType);
}else{
$person = &names;
push(@related_m_person, $person);
push(@related_m_title, $att{'title'});
push(@related_m_mediaRef, $mediaRef);
push(@related_m_data, $data);
push(@related_m_type, $mediaType);
}
}
sub storyChar_audio(){
$mediaRef = &mediaRef($att{'href'},$att{'type'});
if($masterAudio =~ /$att{'href'}/){
#DUPLICATE FILE!!! - Discarding
next;
}
##EMBED FILE REFERENCE
if(($att{'href'} =~ /$metaId/)&&($metaId)){
## THIS IS THE CLIP REQUESTED, PLACE AT THE TOP!!
$embedRef = "$att{'href'}.$mediatype";
$topmedia = 1;
$metaLink = $mediaRef;
$person = "$att{'first_name'} $att{'last_name'}
$att{'title'}";
$top_person = &mediaPersonInsert("$person p:$people c:$color");
unshift(@related_m_person, &names);
unshift(@related_m_title, $att{'title'});
unshift(@related_m_mediaRef, $mediaRef);
unshift(@related_m_data, $data);
}else{
$person = &names;
push(@related_m_person, $person);
push(@related_m_title, $att{'title'});
push(@related_m_mediaRef, $mediaRef);
push(@related_m_data, $data);
}
}
sub storyChar_video(){
#VIDEO#
$vidRef = "javascript:goMovie('$att{'href'}.$mediatype')";
$embedRef = "$att{'href'}.$mediatype";
if(($att{'href'} =~ /$metaId/)&&($metaId)){
$metaLink = $vidRef;
$top_media .= "$vidImg $data
\n";
}else{
$r_media2 .= "$vidImg $data
\n";
}
}