[livejournal] r21104: LJSUP-10691: Image placeholders in comme...
Committer: amyshkin
LJSUP-10691: Image placeholders in commentsU trunk/cgi-bin/LJ/EmbedModule.pm U trunk/cgi-bin/LJ/Entry.pm U trunk/cgi-bin/LJ/S2/DayPage.pm U trunk/cgi-bin/LJ/S2/EntryPage.pm U trunk/cgi-bin/LJ/S2/FriendsPage.pm U trunk/cgi-bin/LJ/S2/RecentPage.pm U trunk/cgi-bin/LJ/Setting/EmbedPlaceholders.pm U trunk/cgi-bin/LJ/User.pm U trunk/cgi-bin/cleanhtml.pl U trunk/cgi-bin/ljviews.pl
Modified: trunk/cgi-bin/LJ/EmbedModule.pm
===================================================================
--- trunk/cgi-bin/LJ/EmbedModule.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/EmbedModule.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -480,29 +480,16 @@
return $iframe_tag unless $remote;
return $iframe_tag if $opts{edit};
- # show placeholder instead of iframe?
- my $placeholder_prop = $remote->prop('opt_embedplaceholders');
- my $do_placeholder = $placeholder_prop && $placeholder_prop ne 'N';
+ return $iframe_tag unless $opts{'video_placeholders'};
- # if placeholder_prop is not set, then show placeholder on a friends
- # page view UNLESS the embedded content is only one embed/object
- # tag and it's whitelisted video.
- my $view = LJ::Request->is_inited ? LJ::Request->notes("view") : '';
- if (! $placeholder_prop && $view eq 'friends') {
- # show placeholder if this is not whitelisted video
- $do_placeholder = 1 if $no_whitelist;
- }
-
- return $iframe_tag unless $do_placeholder;
-
# placeholder
return LJ::placeholder_link(
- placeholder_html => $iframe_tag,
- width => $width,
- height => $height,
- img => "$LJ::IMGPREFIX/videoplaceholder.png",
- link => $iframe_link,
- );
+ placeholder_html => $iframe_tag,
+ width => $width,
+ height => $height,
+ img => "$LJ::IMGPREFIX/videoplaceholder.png",
+ link => $iframe_link,
+ );
}
sub module_content {
Modified: trunk/cgi-bin/LJ/Entry.pm
===================================================================
--- trunk/cgi-bin/LJ/Entry.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/Entry.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -870,20 +870,20 @@
if($opts->{no_cut_expand}) {
$opts->{expand_cut} = 0;
- $opts->{cuturl} = $self->prop('reposted_from') || $self->url . '?page=' . $opts->{page} . '&cut_expand=1';
+ $opts->{cuturl} = $self->prop('reposted_from') || $self->url . '?page=' . $opts->{page} . '&cut_expand=1';
} elsif (!$opts->{cuturl}) {
$opts->{expand_cut} = 1;
$opts->{cuturl} = $self->prop('reposted_from') || $self->url;
}
$opts->{journalid} = $self->journalid;
- $opts->{posterid} = $self->posterid;
+ $opts->{posterid} = $self->posterid;
$opts->{entry_url} = $self->prop('reposted_from') || $self->url;
-
+
$self->_load_text unless $self->{_loaded_text};
my $event = $self->{event};
LJ::CleanHTML::clean_event(\$event, $opts);
- LJ::expand_embedded($self->{u}, $self->ditemid, LJ::User->remote, \$event);
+ LJ::expand_embedded($self->{u}, $self->ditemid, $remote, \$event, video_placeholders => $opts->{'video_placeholders'} );
return $event;
}
Modified: trunk/cgi-bin/LJ/S2/DayPage.pm
===================================================================
--- trunk/cgi-bin/LJ/S2/DayPage.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/S2/DayPage.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -12,8 +12,8 @@
my ($u, $remote, $opts) = @_;
my $p = Page($u, $opts);
- $p->{'_type'} = "DayPage";
- $p->{'view'} = "day";
+ $p->{'_type'} = "DayPage";
+ $p->{'view'} = "day";
$p->{'entries'} = [];
$p->{'head_content'}->set_object_type( $p->{'_type'} );
@@ -23,8 +23,8 @@
my $get = $opts->{'getargs'};
my $month = $get->{'month'};
- my $day = $get->{'day'};
- my $year = $get->{'year'};
+ my $day = $get->{'day'};
+ my $year = $get->{'year'};
my @errors = ();
if ($opts->{'pathextra'} =~ m!^/(\d\d\d\d)/(\d\d)/(\d\d)\b!) {
@@ -32,9 +32,9 @@
}
$opts->{'errors'} = [];
- if ($year !~ /^\d+$/) { push @{$opts->{'errors'}}, "Corrupt or non-existant year."; }
- if ($month !~ /^\d+$/) { push @{$opts->{'errors'}}, "Corrupt or non-existant month."; }
- if ($day !~ /^\d+$/) { push @{$opts->{'errors'}}, "Corrupt or non-existant day."; }
+ if ( $year !~ /^\d+$/ ) { push @{$opts->{'errors'}}, "Corrupt or non-existant year."; }
+ if ( $month !~ /^\d+$/ ) { push @{$opts->{'errors'}}, "Corrupt or non-existant month."; }
+ if ( $day !~ /^\d+$/ ) { push @{$opts->{'errors'}}, "Corrupt or non-existant day."; }
if ($month < 1 || $month > 12 || int($month) != $month) { push @{$opts->{'errors'}}, "Invalid month."; }
if ($year < 1970 || $year > 2038 || int($year) != $year) { push @{$opts->{'errors'}}, "Invalid year: $year"; }
if ($day < 1 || $day > 31 || int($day) != $day) { push @{$opts->{'errors'}}, "Invalid day."; }
@@ -109,6 +109,8 @@
my $tags = LJ::Tags::get_logtags($u, \@itemids);
my $userlite_journal = UserLite($u);
+ my $replace_video = $remote ? $remote->opt_embedplaceholders : 0;
+ my $ljcut_disable = $remote ? $remote->{'opt_ljcut_disable_friends'} : undef;
ENTRY:
foreach my $item (@items)
@@ -152,20 +154,36 @@
LJ::CleanHTML::clean_subject(\$subject) if $subject;
my $suspend_msg = $entry_obj && $entry_obj->should_show_suspend_msg_to($remote) ? 1 : 0;
- LJ::CleanHTML::clean_event(\$text, { 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
- 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'ljcut_disable' => $remote ? $remote->{'opt_ljcut_disable_lastn'} : undef,
- 'suspend_msg' => $suspend_msg,
- 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
- 'journalid' => $entry_obj->journalid,
- 'posterid' => $entry_obj->posterid,
- });
- LJ::expand_embedded($u, $ditemid, $remote, \$text);
+ LJ::CleanHTML::clean_event(
+ \$text,
+ {
+ 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
+ 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'ljcut_disable' => $ljcut_disable,
+ 'suspend_msg' => $suspend_msg,
+ 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
+ 'journalid' => $entry_obj->journalid,
+ 'posterid' => $entry_obj->posterid,
+ 'video_placeholders' => $replace_video,
+ },
+ );
- $text = LJ::ContentFlag->transform_post(post => $text, journal => $u,
- remote => $remote, entry => $entry_obj);
+ LJ::expand_embedded(
+ $u,
+ $ditemid,
+ $remote,
+ \$text,
+ 'video_placeholders' => $replace_video,
+ );
+ $text = LJ::ContentFlag->transform_post(
+ 'post' => $text,
+ 'journal' => $u,
+ 'remote' => $remote,
+ 'entry' => $entry_obj,
+ );
+
my $nc = "";
$nc .= "nc=$replycount" if $replycount && $remote && $remote->{'opt_nctalklinks'};
Modified: trunk/cgi-bin/LJ/S2/EntryPage.pm
===================================================================
--- trunk/cgi-bin/LJ/S2/EntryPage.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/S2/EntryPage.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -144,9 +144,11 @@
my ($self, $destlist, $srclist, $depth) = @_;
my $replace_images_in_comments = 0;
+ my $replace_video_in_comments = 0;
if( $remote ) {
$replace_images_in_comments = $remote->opt_placeholders_comments;
+ $replace_video_in_comments = $remote->opt_videoplaceholders_comments;
}
foreach my $com (@$srclist) {
@@ -161,11 +163,12 @@
LJ::CleanHTML::clean_comment(
\$text, {
- 'preformatted' => $com->{'props'}->{'opt_preformatted'},
- 'anon_comment' => (!$pu || $pu->{'journaltype'} eq 'I'),
- 'nocss' => 1,
- 'posterid' => $com->{'posterid'},
- 'img_placeholders' => $replace_images_in_comments,
+ 'preformatted' => $com->{'props'}->{'opt_preformatted'},
+ 'anon_comment' => (!$pu || $pu->{'journaltype'} eq 'I'),
+ 'nocss' => 1,
+ 'posterid' => $com->{'posterid'},
+ 'img_placeholders' => $replace_images_in_comments,
+ 'video_placeholders' => $replace_video_in_comments,
});
# local time in mysql format to gmtime
@@ -536,8 +539,9 @@
my $no_cut_expand = !$get->{cut_expand} && $get->{page} && $get->{page} > 1 ? 1 : 0;
my $event = $entry->event_html({
- no_cut_expand => $no_cut_expand,
- page => $get->{page},
+ no_cut_expand => $no_cut_expand,
+ page => $get->{page},
+ video_placeholders => $remote ? $remote->opt_embedplaceholders : 0,
});
if ($get->{'nohtml'}) {
Modified: trunk/cgi-bin/LJ/S2/FriendsPage.pm
===================================================================
--- trunk/cgi-bin/LJ/S2/FriendsPage.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/S2/FriendsPage.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -215,10 +215,12 @@
return $lite{$id} = UserLite($posters{$id} || $friends{$id});
};
- my $eventnum = 0;
+ my $eventnum = 0;
my $hiddenentries = 0;
+ my $ljcut_disable = $remote ? $remote->{'opt_ljcut_disable_friends'} : undef;
my $replace_images_in_friendspage = 0;
+ my $replace_video = $remote ? $remote->opt_embedplaceholders : 0;
if( $u->equals($remote) ) {
$replace_images_in_friendspage = $remote->opt_placeholders_friendspage;
@@ -293,20 +295,31 @@
'preformatted' => $logprops{$datakey}->{'opt_preformatted'},
'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url(%urlopts_style),
'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'ljcut_disable' => $remote ? $remote->{'opt_ljcut_disable_friends'} : undef,
+ 'ljcut_disable' => $ljcut_disable,
'suspend_msg' => $suspend_msg,
'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
'journalid' => $entry_obj->journalid,
'posterid' => $entry_obj->posterid,
'img_placeholders' => $replace_images_in_friendspage,
+ 'video_placeholders' => $replace_video,
});
- LJ::expand_embedded($friends{$friendid}, $ditemid, $remote, \$text);
+ LJ::expand_embedded(
+ $friends{$friendid},
+ $ditemid,
+ $remote,
+ \$text,
+ 'video_placeholders' => $replace_video,
+ );
- $text = LJ::ContentFlag->transform_post(post => $text, journal => $friends{$friendid},
- remote => $remote, entry => $entry_obj);
+ $text = LJ::ContentFlag->transform_post(
+ 'post' => $text,
+ 'journal' => $friends{$friendid},
+ 'remote' => $remote,
+ 'entry' => $entry_obj,
+ );
- my $userlite_poster = $get_lite->($posterid);
+ my $userlite_poster = $get_lite->($posterid);
my $userlite_journal = $get_lite->($friendid);
# get the poster user
Modified: trunk/cgi-bin/LJ/S2/RecentPage.pm
===================================================================
--- trunk/cgi-bin/LJ/S2/RecentPage.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/S2/RecentPage.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -131,24 +131,26 @@
my $tags = LJ::Tags::get_logtagsmulti($idsbyc);
my $userlite_journal = UserLite($u);
- my $sticky_appended = !$u->has_sticky_entry() || $skip;
+ my $sticky_appended = !$u->has_sticky_entry() || $skip;
+ my $ljcut_disable = $remote ? $remote->prop("opt_ljcut_disable_lastn") : undef;
+ my $replace_video = $remote ? $remote->opt_embedplaceholders : 0;
ENTRY:
- foreach my $item (@items)
- {
+ foreach my $item ( @items ) {
my ($posterid, $itemid, $security, $allowmask, $alldatepart) =
map { $item->{$_} } qw(posterid itemid security allowmask alldatepart);
- my $ditemid = $itemid * 256 + $item->{'anum'};
+ my $ditemid = $itemid * 256 + $item->{'anum'};
my $entry_obj = LJ::Entry->new($u, ditemid => $ditemid);
-
+
next ENTRY unless $entry_obj->visible_to($remote, {'viewall' => $viewall, 'viewsome' => $viewsome});
$entry_obj->handle_prefetched_props($logprops{$itemid});
my $replycount = $logprops{$itemid}->{'replycount'};
- my $subject = $logtext->{$itemid}->[0];
- my $text = $logtext->{$itemid}->[1];
- if ($get->{'nohtml'}) {
+ my $subject = $logtext->{$itemid}->[0];
+ my $text = $logtext->{$itemid}->[1];
+
+ if ( $get->{'nohtml'} ) {
# quote all non-LJ tags
$subject =~ s{<(?!/?lj)(.*?)>} {<$1>}gi;
$text =~ s{<(?!/?lj)(.*?)>} {<$1>}gi;
@@ -162,8 +164,9 @@
my $date = substr($alldatepart, 0, 10);
my $new_day = 0;
+
if ($date ne $lastdate) {
- $new_day = 1;
+ $new_day = 1;
$lastdate = $date;
$lastentry->{'end_day'} = 1 if $lastentry;
}
@@ -171,20 +174,36 @@
LJ::CleanHTML::clean_subject(\$subject) if $subject;
my $suspend_msg = $entry_obj && $entry_obj->should_show_suspend_msg_to($remote) ? 1 : 0;
- LJ::CleanHTML::clean_event(\$text, { 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
- 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'ljcut_disable' => ($remote) ? $remote->prop("opt_ljcut_disable_lastn") : undef,
- 'suspend_msg' => $suspend_msg,
- 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
- 'journalid' => $entry_obj->journalid,
- 'posterid' => $entry_obj->posterid,
- });
- LJ::expand_embedded($u, $ditemid, $remote, \$text);
+ LJ::CleanHTML::clean_event(
+ \$text,
+ {
+ 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
+ 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'ljcut_disable' => $ljcut_disable,
+ 'suspend_msg' => $suspend_msg,
+ 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
+ 'journalid' => $entry_obj->journalid,
+ 'posterid' => $entry_obj->posterid,
+ 'video_placeholders' => $replace_video,
+ },
+ );
- $text = LJ::ContentFlag->transform_post(post => $text, journal => $u,
- remote => $remote, entry => $entry_obj);
+ LJ::expand_embedded(
+ $u,
+ $ditemid,
+ $remote,
+ \$text,
+ 'video_placeholders' => $replace_video,
+ );
+ $text = LJ::ContentFlag->transform_post(
+ 'post' => $text,
+ 'journal' => $u,
+ 'remote' => $remote,
+ 'entry' => $entry_obj,
+ );
+
my @taglist;
while (my ($kwid, $kw) = each %{$tags->{"$u->{userid} $itemid"} || {}}) {
push @taglist, Tag($u, $kwid => $kw);
Modified: trunk/cgi-bin/LJ/Setting/EmbedPlaceholders.pm
===================================================================
--- trunk/cgi-bin/LJ/Setting/EmbedPlaceholders.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/Setting/EmbedPlaceholders.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -26,32 +26,51 @@
my ($class, $u, $errs, $args) = @_;
my $key = $class->pkgkey;
- my $embedplaceholders = $class->get_arg($args, "embedplaceholders") || $u->prop("opt_embedplaceholders") eq "Y";
+ my $imgplaceholders = $u->get_opt_videolinks;
+ my( $chk1, $chk2 );
- my $ret = LJ::html_check({
- name => "${key}embedplaceholders",
- id => "${key}embedplaceholders",
- value => 1,
- selected => $embedplaceholders ? 1 : 0,
- });
- $ret .= " <label for='${key}embedplaceholders'>" . $class->ml('setting.embedplaceholders.option') . "</label>";
+ if ( $imgplaceholders =~ /^(\d)\:(\d)$/ ) {
+ $chk1 = $1;
+ $chk2 = $2;
+ }
+ else {
+ $chk1 = 0;
+ $chk2 = 0;
+ }
+ my $ret = $class->ml('setting.videoplaceholders.option2')
+ . "<label for='${key}check1'>"
+ . LJ::html_check({
+ selected => $chk1,
+ name => "${key}check1",
+ })
+ . $class->ml('setting.videoplaceholders.option2.checkbox1')
+ . "</label> "
+ . "<label for='${key}check2'>"
+ . LJ::html_check({
+ selected => $chk2,
+ name => "${key}check2",
+ })
+ . $class->ml('setting.videoplaceholders.option2.checkbox2')
+ . "</label> ";
+
+ my $errdiv = $class->errdiv($errs, "vidplaceholders");
+ $ret .= "<br />$errdiv" if $errdiv;
+
return $ret;
}
sub save {
my ($class, $u, $args) = @_;
- my $val = $class->get_arg($args, "embedplaceholders") ? "Y" : "N";
+ my @val;
+ push @val, $class->get_arg($args, $_) for map { "check$_" } 1..2;
+ @val = map { $_ eq 'on' ? 1 : 0 } @val;
+
+ my $val = join( ':', @val );
$u->set_prop( opt_embedplaceholders => $val );
return 1;
}
-sub as_html {
- my ($class, $u, $errs, $args) = @_;
-
- return $class->option($u, $errs, $args);
-}
-
1;
Modified: trunk/cgi-bin/LJ/User.pm
===================================================================
--- trunk/cgi-bin/LJ/User.pm 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/LJ/User.pm 2012-02-06 10:54:03 UTC (rev 21104)
@@ -4061,19 +4061,6 @@
return $prop eq 'Y';
}
-sub opt_embedplaceholders {
- my $u = shift;
-
- my $prop = $u->raw_prop('opt_embedplaceholders');
-
- if (defined $prop) {
- return $prop;
- } else {
- my $imagelinks = $u->prop('opt_imagelinks');
- return $imagelinks;
- }
-}
-
# opt_imagelinks format:
# 0|1 - replace images with placeholders at friends page
# : - delimiter
@@ -4108,6 +4095,36 @@
return 0;
}
+sub get_opt_videolinks {
+ my $u = shift;
+ my $opt = $u->raw_prop("opt_embedplaceholders") || "0:0";
+ $opt = "0:0" unless $opt;
+ $opt = "1:0" unless $opt =~ /^\d\:\d$/;
+ return $opt;
+}
+
+sub opt_embedplaceholders {
+ my $u = shift;
+ my $opt = $u->get_opt_videolinks;
+
+ if ( $opt =~ /^(\d)\:\d$/ ) {
+ return $1;
+ }
+
+ return 0;
+}
+
+sub opt_videoplaceholders_comments {
+ my $u = shift;
+ my $opt = $u->get_opt_videolinks;
+
+ if ( $opt =~ /^\d\:(\d)$/ ) {
+ return $1;
+ }
+
+ return 0;
+}
+
sub opt_showmutualfriends {
my $u = shift;
return $u->raw_prop('opt_showmutualfriends') ? 1 : 0;
Modified: trunk/cgi-bin/cleanhtml.pl
===================================================================
--- trunk/cgi-bin/cleanhtml.pl 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/cleanhtml.pl 2012-02-06 10:54:03 UTC (rev 21104)
@@ -452,13 +452,13 @@
# start a capture loop, because there won't be a close tag.
if ($attr->{'/'}) {
$newdata .= LJ::run_hook("transform_embed", [$token],
- nocheck => $transform_embed_nocheck, wmode => $transform_embed_wmode) || "";
+ nocheck => $transform_embed_nocheck, wmode => $transform_embed_wmode, video_placeholders => $opts->{video_placeholders}) || "";
next TOKEN;
}
$start_capture->($tag, $token, sub {
my $expanded = LJ::run_hook("transform_embed", \@capture,
- nocheck => $transform_embed_nocheck, wmode => $transform_embed_wmode);
+ nocheck => $transform_embed_nocheck, wmode => $transform_embed_wmode, video_placeholders => $opts->{video_placeholders});
$newdata .= $expanded || "";
});
next TOKEN;
@@ -1996,6 +1996,7 @@
'remove_positioning' => 1,
'posterid' => $opts->{'posterid'},
'img_placeholders' => $opts->{'img_placeholders'},
+ 'video_placeholders' => $opts->{'video_placeholders'},
});
}
Modified: trunk/cgi-bin/ljviews.pl
===================================================================
--- trunk/cgi-bin/ljviews.pl 2012-02-06 09:24:26 UTC (rev 21103)
+++ trunk/cgi-bin/ljviews.pl 2012-02-06 10:54:03 UTC (rev 21104)
@@ -1266,6 +1266,9 @@
});
}
+ my $ljcut_disable = $remote ? $remote->prop("opt_ljcut_disable_lastn") : undef;
+ my $replace_video = $remote ? $remote->opt_embedplaceholders : 0;
+
# spit out the S1
ENTRY:
@@ -1334,19 +1337,37 @@
$lastn_event{'itemargs'} = $itemargs;
my $suspend_msg = $entry_obj && $entry_obj->should_show_suspend_msg_to($remote) ? 1 : 0;
- LJ::CleanHTML::clean_event(\$event, { 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
- 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'ljcut_disable' => ($remote) ? $remote->{'opt_ljcut_disable_lastn'} : undef,
- 'suspend_msg' => $suspend_msg,
- 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
- 'journalid' => $entry_obj->journalid,
- 'posterid' => $entry_obj->posterid,
- });
- LJ::expand_embedded($u, $ditemid, $remote, \$event);
- $event = LJ::ContentFlag->transform_post(post => $event, journal => $u,
- remote => $remote, entry => $entry_obj);
+ LJ::CleanHTML::clean_event(
+ \$event,
+ {
+ 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
+ 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'ljcut_disable' => $ljcut_disable,
+ 'suspend_msg' => $suspend_msg,
+ 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
+ 'journalid' => $entry_obj->journalid,
+ 'posterid' => $entry_obj->posterid,
+ 'video_placeholders' => $replace_video,
+ },
+ );
+
+ LJ::expand_embedded(
+ $u,
+ $ditemid,
+ $remote,
+ \$event,
+ 'video_placeholders' => $replace_video,
+ );
+
+ $event = LJ::ContentFlag->transform_post(
+ 'post' => $event,
+ 'journal' => $u,
+ 'remote' => $remote,
+ 'entry' => $entry_obj,
+ );
+
$lastn_event{'event'} = $event;
my $permalink = "$journalbase/$ditemid.html";
@@ -1785,6 +1806,9 @@
$replace_images_in_friendspage = $remote->opt_placeholders_friendspage;
}
+ my $ljcut_disable = $remote ? $remote->prop("opt_ljcut_disable_lastn") : undef;
+ my $replace_video = $remote ? $remote->opt_embedplaceholders : 0;
+
my %friends_events = ();
my $events = \$friends_events{'events'};
@@ -1827,10 +1851,10 @@
$event = LJ::Lang::ml(
'friendsposts.reposted',
{
- 'user' => $logprops{$datakey}->{'repost_author'},
- 'subject' => $logprops{$datakey}->{'repost_subject'},
+ 'user' => $logprops{$datakey}->{'repost_author'},
+ 'subject' => $logprops{$datakey}->{'repost_subject'},
'orig_url' => $logprops{$datakey}->{'repost_url'},
- 'url' => $entry_obj->url,
+ 'url' => $entry_obj->url,
});
}
@@ -1898,17 +1922,30 @@
'preformatted' => $logprops{$datakey}->{'opt_preformatted'},
'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url(%urlopts_style),
'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'ljcut_disable' => ($remote) ? $remote->{'opt_ljcut_disable_friends'} : undef,
+ 'ljcut_disable' => $ljcut_disable,
'suspend_msg' => $suspend_msg,
'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
'journalid' => $entry_obj->journalid,
'posterid' => $entry_obj->posterid,
'img_placeholders' => $replace_images_in_friendspage,
+ 'video_placeholders' => $replace_video,
});
- LJ::expand_embedded($friends{$friendid}, $ditemid, $remote, \$event);
- $event = LJ::ContentFlag->transform_post(post => $event, journal => $friends{$friendid},
- remote => $remote, entry => $entry_obj);
+ LJ::expand_embedded(
+ $friends{$friendid},
+ $ditemid,
+ $remote,
+ \$event,
+ 'video_placeholders' => $replace_video,
+ );
+
+ $event = LJ::ContentFlag->transform_post(
+ 'post' => $event,
+ 'journal' => $friends{$friendid},
+ 'remote' => $remote,
+ 'entry' => $entry_obj,
+ );
+
$friends_event{'event'} = $event;
# do the picture
@@ -2576,6 +2613,9 @@
my $events = "";
my $eventnum = 0;
+ my $ljcut_disable = $remote ? $remote->prop("opt_ljcut_disable_lastn") : undef;
+ my $replace_video = $remote ? $remote->opt_embedplaceholders : 0;
+
ENTRY:
foreach my $item (@items) {
my ($itemid, $posterid, $security, $alldatepart, $anum) =
@@ -2619,6 +2659,7 @@
my %day_event = ();
$day_event{'itemid'} = $itemid;
$day_event{'datetime'} = LJ::fill_var_props($vars, 'DAY_DATE_FORMAT', \%day_date_format);
+
if ($subject ne "") {
LJ::CleanHTML::clean_subject(\$subject);
$day_event{'subject'} = LJ::fill_var_props($vars, 'DAY_SUBJECT', {
@@ -2627,23 +2668,40 @@
}
my $itemargs = "journal=$user&itemid=$ditemid";
-
+
$day_event{'itemargs'} = $itemargs;
my $suspend_msg = $entry_obj && $entry_obj->should_show_suspend_msg_to($remote) ? 1 : 0;
- LJ::CleanHTML::clean_event(\$event, { 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
- 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
- 'ljcut_disable' => ($remote) ? $remote->{'opt_ljcut_disable_lastn'} : undef,
- 'suspend_msg' => $suspend_msg,
- 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
- 'journalid' => $entry_obj->journalid,
- 'posterid' => $entry_obj->posterid,
- });
- LJ::expand_embedded($u, $ditemid, $remote, \$event);
-
- $event = LJ::ContentFlag->transform_post(post => $event, journal => $u,
- remote => $remote, entry => $entry_obj);
+
+ LJ::CleanHTML::clean_event(
+ \$event,
+ {
+ 'preformatted' => $logprops{$itemid}->{'opt_preformatted'},
+ 'cuturl' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'entry_url' => $entry_obj->prop('reposted_from') || $entry_obj->url,
+ 'ljcut_disable' => $ljcut_disable,
+ 'suspend_msg' => $suspend_msg,
+ 'unsuspend_supportid' => $suspend_msg ? $entry_obj->prop("unsuspend_supportid") : 0,
+ 'journalid' => $entry_obj->journalid,
+ 'posterid' => $entry_obj->posterid,
+ 'video_placeholders' => $replace_video,
+ });
+
+ LJ::expand_embedded(
+ $u,
+ $ditemid,
+ $remote,
+ \$event,
+ 'video_placeholders' => $replace_video,
+ );
+
+ $event = LJ::ContentFlag->transform_post(
+ 'post' => $event,
+ 'journal' => $u,
+ 'remote' => $remote,
+ 'entry' => $entry_obj,
+ );
+
$day_event{'event'} = $event;
my $permalink = "$journalbase/$ditemid.html";
