Changeset 1823
- Timestamp:
- 04/09/08 10:05:12 (8 months ago)
- Files:
-
- branches/release-34/lib/MT.pm.pre (modified) (1 diff)
- branches/release-34/lib/MT/App.pm (modified) (2 diffs)
- branches/release-34/lib/MT/App/Comments.pm (modified) (15 diffs)
- branches/release-34/lib/MT/App/Search/Legacy.pm (modified) (3 diffs)
- branches/release-34/lib/MT/App/Trackback.pm (modified) (1 diff)
- branches/release-34/lib/MT/App/Viewer.pm (modified) (2 diffs)
- branches/release-34/lib/MT/Atom.pm (modified) (3 diffs)
- branches/release-34/lib/MT/AtomServer.pm (modified) (3 diffs)
- branches/release-34/lib/MT/Auth/MT.pm (modified) (1 diff)
- branches/release-34/lib/MT/Auth/OpenID.pm (modified) (1 diff)
- branches/release-34/lib/MT/Auth/TypeKey.pm (modified) (2 diffs)
- branches/release-34/lib/MT/Author.pm (modified) (1 diff)
- branches/release-34/lib/MT/BackupRestore.pm (modified) (3 diffs)
- branches/release-34/lib/MT/Blog.pm (modified) (1 diff)
- branches/release-34/lib/MT/CMS/Asset.pm (modified) (5 diffs)
- branches/release-34/lib/MT/CMS/Blog.pm (modified) (8 diffs)
- branches/release-34/lib/MT/CMS/Category.pm (modified) (2 diffs)
- branches/release-34/lib/MT/CMS/Comment.pm (modified) (9 diffs)
- branches/release-34/lib/MT/CMS/Common.pm (modified) (6 diffs)
- branches/release-34/lib/MT/CMS/Entry.pm (modified) (8 diffs)
- branches/release-34/lib/MT/CMS/Import.pm (modified) (1 diff)
- branches/release-34/lib/MT/CMS/Search.pm (modified) (1 diff)
- branches/release-34/lib/MT/CMS/Tag.pm (modified) (4 diffs)
- branches/release-34/lib/MT/CMS/Template.pm (modified) (5 diffs)
- branches/release-34/lib/MT/CMS/Tools.pm (modified) (2 diffs)
- branches/release-34/lib/MT/CMS/TrackBack.pm (modified) (6 diffs)
- branches/release-34/lib/MT/CMS/User.pm (modified) (1 diff)
- branches/release-34/lib/MT/Category.pm (modified) (2 diffs)
- branches/release-34/lib/MT/Entry.pm (modified) (5 diffs)
- branches/release-34/lib/MT/Import.pm (modified) (1 diff)
- branches/release-34/lib/MT/Permission.pm (modified) (1 diff)
- branches/release-34/lib/MT/PublishOption.pm (modified) (1 diff)
- branches/release-34/lib/MT/Template.pm (modified) (2 diffs)
- branches/release-34/lib/MT/Template/ContextHandlers.pm (modified) (9 diffs)
- branches/release-34/lib/MT/TemplateMap.pm (modified) (3 diffs)
- branches/release-34/lib/MT/Util.pm (modified) (1 diff)
- branches/release-34/lib/MT/WeblogPublisher.pm (modified) (3 diffs)
- branches/release-34/lib/MT/XMLRPC.pm (modified) (2 diffs)
- branches/release-34/lib/MT/XMLRPCServer.pm (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/release-34/lib/MT.pm.pre
r1819 r1823 2280 2280 require MT::Entry; 2281 2281 for my $blog_id (@blogs) { 2282 my $blog = MT::Blog->load($blog_id); 2282 my $blog = MT::Blog->load($blog_id) 2283 or next; 2283 2284 my $earliest_entry = MT::Entry->load( 2284 2285 { branches/release-34/lib/MT/App.pm
r1778 r1823 1352 1352 my $app = shift; 1353 1353 my ($commenter, $commenter_blog_id) = @_; 1354 my $blog = $app->model('blog')->load($commenter_blog_id); 1354 my $blog = $app->model('blog')->load($commenter_blog_id) 1355 or return $app->error($app->translate("Can\'t load blog #[_1].", $commenter_blog_id)); 1355 1356 my $url = $app->config('CGIPath') . $app->config('CommentScript'); 1356 1357 $url .= '?__mode=edit_profile'; … … 1614 1615 $param->{ 'auth_mode_' . $cfg->AuthenticationModule } = 1; 1615 1616 1616 my $blog = $app->model('blog')->load( $param->{blog_id} ); 1617 my $blog = $app->model('blog')->load( $param->{blog_id} ) 1618 or return $app->error($app->translate("Can\'t load blog #[_1].", $param->{blog_id})); 1617 1619 1618 1620 my ( $password, $hint, $url ); branches/release-34/lib/MT/App/Comments.pm
r1804 r1823 234 234 my $name = $q->param('username'); 235 235 my $blog_id = $q->param('blog_id'); 236 my $blog = MT::Blog->load($blog_id); 236 my $blog = MT::Blog->load($blog_id) 237 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 237 238 my $auths = $blog->commenter_authenticators; 238 239 if ( $auths !~ /MovableType/ ) { … … 326 327 my $param = {}; 327 328 $param->{$_} = $app->param($_) foreach qw(blog_id entry_id static username); 328 my $blog = $app->model('blog')->load( $param->{blog_id} ); 329 my $blog = $app->model('blog')->load( $param->{blog_id} ) 330 or return $app->error($app->translate('Can\'t load blog #[_1].', $param->{blog_id})); 329 331 my $cfg = $app->config; 330 332 if ( my $registration = $cfg->CommenterRegistration ) { … … 353 355 my $user = $app->create_user_pending($param); 354 356 unless ($user) { 355 my $blog = $app->model('blog')->load( $param->{blog_id} ); 357 my $blog = $app->model('blog')->load( $param->{blog_id} ) 358 or return $app->error($app->translate('Can\'t load blog #[_1].', $param->{blog_id})); 356 359 if ( my $provider = MT->effective_captcha_provider( $blog->captcha_provider ) ) { 357 360 $param->{captcha_fields} = $provider->form_fields( $blog->id ); … … 387 390 my $cfg = $app->config; 388 391 389 my $blog = MT::Blog->load($blog_id); 392 my $blog = MT::Blog->load($blog_id) 393 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 390 394 my $entry = MT::Entry->load($entry_id); 391 395 my $author = $entry ? $entry->author : q(); … … 484 488 $param->{$_} = $app->param($_) foreach qw(blog_id entry_id static); 485 489 486 my $blog = $app->model('blog')->load($blog_id); 490 my $blog = $app->model('blog')->load($blog_id) 491 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 487 492 ## Token expiration check 488 493 require MT::Session; … … 493 498 $commenter = MT::Author->load( $sess->name ); 494 499 if ( $sess->start() < ( time - 60 * 60 * 24 ) ) { 495 $commenter->remove ;500 $commenter->remove if $commenter; 496 501 $sess->remove; 497 502 $sess = $commenter = undef; … … 570 575 my ( $user, $entry_id, $blog_id, $ids ) = @_; 571 576 572 my $blog = MT::Blog->load($blog_id); 577 my $blog = MT::Blog->load($blog_id) 578 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 573 579 my $subject = $app->translate( "[_1] registered to the blog '[_2]'", 574 580 $user->name, $blog->name ); … … 610 616 return undef; 611 617 } 612 my $blog = $app->model('blog')->load($blog_id); 618 my $blog = $app->model('blog')->load($blog_id) 619 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 613 620 if ( my $provider = MT->effective_captcha_provider( $blog->captcha_provider ) ) { 614 621 my $image_data = $provider->generate_captcha($app, $blog_id, $token); … … 726 733 if $author && $author->preferred_language; 727 734 728 my $blog = MT::Blog->load( $entry->blog_id ); 735 my $blog = MT::Blog->load( $entry->blog_id ) 736 or return $app->error($app->translate('Can\'t load blog #[_1].', $entry->blog_id)); 729 737 if ( $author && $author->email ) { 730 738 my %head = ( … … 806 814 } 807 815 808 my $blog = $app->model('blog')->load( $entry->blog_id ); 816 my $blog = $app->model('blog')->load( $entry->blog_id ) 817 or return $app->error($app->translate('Can\'t load blog #[_1].', $entry->blog_id)); 809 818 810 819 my $text = $q->param('text') || ''; … … 990 999 unless ($tmpl) { 991 1000 require MT::DefaultTemplates; 992 $tmpl = MT::DefaultTemplates->load({ type => 'comment_response' }); 1001 $tmpl = MT::DefaultTemplates->load({ type => 'comment_response' }) 1002 or return $app->error($app->translate("Can\'t load template")); 993 1003 $tmpl->text( $app->translate_templatized( $tmpl->text ) ); 994 1004 } … … 1154 1164 # for this blog only. 1155 1165 if ( my $registration = $app->config->CommenterRegistration ) { 1156 my $blog = MT::Blog->load($blog_id); 1166 my $blog = MT::Blog->load($blog_id) 1167 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 1157 1168 if ( $registration->{Allow} && $blog->allow_commenter_regist ) { 1158 1169 my $perm = $commenter->blog_perm($blog_id); … … 1406 1417 if ( $q->param('static') eq 1 ) { 1407 1418 require MT::Entry; 1408 my $entry = MT::Entry->load( $q->param('entry_id') ); 1419 my $entry = MT::Entry->load( $q->param('entry_id') ) 1420 or return $app->error($app->translate('Can\'t load entry #[_1].', $q->param('entry_id'))); 1409 1421 $target = $entry->archive_url; 1410 1422 my $blog = MT::Blog->load( $entry->blog_id ); … … 1601 1613 unless ($tmpl) { 1602 1614 require MT::DefaultTemplates; 1603 $tmpl = MT::DefaultTemplates->load({ type => 'comment_response' }); 1615 $tmpl = MT::DefaultTemplates->load({ type => 'comment_response' }) 1616 or return $app->error($app->translate("Can\'t load template")); 1604 1617 $tmpl->text( $app->translate_templatized( $tmpl->text ) ); 1605 1618 } … … 1625 1638 unless ($tmpl) { 1626 1639 require MT::DefaultTemplates; 1627 $tmpl = MT::DefaultTemplates->load({ type => 'comment_preview' }); 1640 $tmpl = MT::DefaultTemplates->load({ type => 'comment_preview' }) 1641 or return $app->error($app->translate("Can\'t load template")); 1628 1642 $tmpl->text( $app->translate_templatized( $tmpl->text ) ); 1629 1643 } branches/release-34/lib/MT/App/Search/Legacy.pm
r1420 r1823 303 303 $blog = MT::Blog->load($app->param('blog_id')); 304 304 } 305 $include = $blog->id ;305 $include = $blog->id if $blog; 306 306 } 307 307 … … 499 499 my $blog_id = $entry->blog_id; 500 500 if ($hits{$blog_id} && $hits{$blog_id} >= $max) { 501 my $blog = $blogs{$blog_id} || MT::Blog->load($blog_id); 501 my $blog = $blogs{$blog_id} || MT::Blog->load($blog_id) 502 or next; 502 503 my @res = @{ $app->{results}{$blog->name} }; 503 504 my $count = $#res; … … 507 508 if ($app->_search_hit($entry)) { 508 509 my $blog = $blogs{$blog_id} || MT::Blog->load($blog_id); 509 $app->_store_hit_data($blog, $entry, $hits{$blog_id}++) ;510 $app->_store_hit_data($blog, $entry, $hits{$blog_id}++) if $blog; 510 511 } 511 512 } branches/release-34/lib/MT/App/Trackback.pm
r1663 r1823 272 272 return $app->_response( 273 273 Error => $app->translate("This TrackBack item is disabled.") ) 274 if $tb->is_disabled || !$cfg->AllowPings || !$blog ->allow_pings;274 if $tb->is_disabled || !$cfg->AllowPings || !$blog || !$blog->allow_pings; 275 275 276 276 if ( $tb->passphrase && ( !$pass || $pass ne $tb->passphrase ) ) { branches/release-34/lib/MT/App/Viewer.pm
r1174 r1823 157 157 my $map = MT::TemplateMap->load({ archive_type => $at, 158 158 blog_id => $app->{__blog_id}, 159 is_preferred => 1 }); 159 is_preferred => 1 }) 160 or return $app->error($app->translate("Can't load templatemap")); 160 161 my $tmpl = MT::Template->load($map->template_id) 161 162 or return $app->error($app->translate("Can't load template [_1]", $map->template_id)); … … 191 192 my $map = MT::TemplateMap->load({ archive_type => 'Individual', 192 193 blog_id => $app->{__blog_id}, 193 is_preferred => 1 }); 194 is_preferred => 1 }) 195 or return $app->error($app->translate("Can't load templatemap")); 194 196 $tmpl = MT::Template->load($map->template_id) 195 197 or return $app->error($app->translate("Can't load template [_1]", $map->template_id)); branches/release-34/lib/MT/Atom.pm
r1820 r1823 42 42 } 43 43 44 my $mt_author = MT::Author->load($entry->author_id); 44 my $mt_author = MT::Author->load($entry->author_id) 45 or return undef; 45 46 my $atom_author = new XML::Atom::Person(%param); 46 47 $atom_author->name(encode_text($mt_author->nickname, undef, 'utf-8')); … … 56 57 } 57 58 58 my $blog = MT::Blog->load($entry->blog_id); 59 my $blog = MT::Blog->load($entry->blog_id) 60 or return undef; 59 61 my $co = _create_issued($entry->authored_on, $blog); 60 62 $atom->issued($co); … … 82 84 $atom->title($asset->label); 83 85 $atom->summary($asset->description); 84 my $blog = MT::Blog->load($asset->blog_id); 86 my $blog = MT::Blog->load($asset->blog_id) 87 or return undef; 85 88 $atom->issued(_create_issued($asset->created_on, $blog)); 86 89 $atom->add_link({ rel => 'alternate', type => $asset->mime_type, branches/release-34/lib/MT/AtomServer.pm
r1820 r1823 409 409 my $app = shift; 410 410 my($entry, $no_ping) = @_; 411 my $blog = MT::Blog->load($entry->blog_id); 411 my $blog = MT::Blog->load($entry->blog_id) 412 or return; 412 413 $app->rebuild_entry( Entry => $entry, Blog => $blog, 413 414 BuildDependencies => 1 ) or return; … … 447 448 my $blog = $thing->isa('MT::Blog') ? $thing 448 449 : MT::Blog->load($thing->blog_id); 450 next unless $blog; 449 451 my $uri = $base . '/blog_id=' . $blog->id; 450 452 … … 942 944 my $blog = $thing->isa('MT::Blog') ? $thing 943 945 : MT::Blog->load($thing->blog_id); 946 next unless $blog; 944 947 my $uri = $base . '/blog_id=' . $blog->id; 945 948 my $blogname = encode_text($blog->name . ' #' . $blog->id, undef, 'utf-8'); branches/release-34/lib/MT/Auth/MT.pm
r1174 r1823 21 21 } else { 22 22 if ($q->param('pass') && $id) { 23 my $author = MT::Author->load($id); 23 my $author = MT::Author->load($id) 24 or return $app->translate('Failed to verify current password.'); 24 25 if (!$auth->is_valid_password($author, $q->param('old_pass'))) { 25 26 return $app->translate('Failed to verify current password.'); branches/release-34/lib/MT/Auth/OpenID.pm
r1720 r1823 124 124 require MT::Author; 125 125 my $sess = MT::Session->load({id => $session}); 126 $cmntr = MT::Author->load({name => $sess->name, 127 type => MT::Author::COMMENTER(), 128 auth_type => $auth_type}); 126 if ($sess) { 127 $cmntr = MT::Author->load({name => $sess->name, 128 type => MT::Author::COMMENTER(), 129 auth_type => $auth_type}); 130 } 129 131 } 130 132 } branches/release-34/lib/MT/Auth/TypeKey.pm
r1720 r1823 23 23 24 24 my $entry_id = $q->param('entry_id'); 25 my $entry = MT::Entry->load($entry_id); 26 my $blog = MT::Blog->load($q->param('blog_id') || $entry->blog_id); 25 my $entry = MT::Entry->load($entry_id) 26 or return 0; 27 my $blog = MT::Blog->load($q->param('blog_id') || $entry->blog_id) 28 or return 0; 27 29 28 30 my $ts = $q->param('ts') || ""; … … 82 84 require MT::Session; 83 85 require MT::Author; 84 my $sess = MT::Session->load({id => $session}); 86 my $sess = MT::Session->load({id => $session}) 87 or return 0; 85 88 $cmntr = MT::Author->load({name => $sess->name, 86 89 type => MT::Author::COMMENTER(), 87 auth_type => $auth_type}); 90 auth_type => $auth_type}) 91 or return 0; 88 92 if ($blog->require_typekey_emails 89 93 && !is_valid_email($cmntr->email)) branches/release-34/lib/MT/Author.pm
r1522 r1823 259 259 $entry = MT::Entry->load($entry); 260 260 } 261 die unless$entry->isa('MT::Entry');261 die if !$entry || $entry->isa('MT::Entry'); 262 262 my $perms = $author->permissions($entry->blog_id); 263 263 die unless $perms->isa('MT::Permission'); branches/release-34/lib/MT/BackupRestore.pm
r1644 r1823 614 614 my $fmgr; 615 615 if (exists $blogs_meta->{$asset->blog_id}) { 616 my $blog = MT->model('blog')->load($asset->blog_id) 617 or return 0; 618 616 619 my $meta = $blogs_meta->{$asset->blog_id}; 617 620 my $path = $asset->file_path; … … 641 644 $callback->(MT->translate("ok") . "\n"); 642 645 643 my $blog = MT->model('blog')->load($asset->blog_id);644 646 $fmgr = $blog->file_mgr; 645 647 } … … 859 861 860 862 if ($obj->parent) { 861 my $parent = MT->model('asset')->load($obj->parent); 863 my $parent = MT->model('asset')->load($obj->parent) 864 or return $xml; 862 865 $xml .= $parent->to_xml(@_); 863 866 $xml .= "\n"; branches/release-34/lib/MT/Blog.pm
r1759 r1823 493 493 require MT::Template; 494 494 foreach my $map (@maps) { 495 my $tmpl = MT::Template->load($map->template_id); 495 my $tmpl = MT::Template->load($map->template_id) 496 or return 0; 496 497 $result++ if !$tmpl->build_dynamic; 497 498 } branches/release-34/lib/MT/CMS/Asset.pm
r1787 r1823 44 44 my $place_class = $app->model('objectasset'); 45 45 my $place_iter = $place_class->load_iter( 46 {46 { 47 47 blog_id => $obj->blog_id || 0, 48 48 asset_id => $obj->parent ? $obj->parent : $obj->id … … 51 51 while (my $place = $place_iter->()) { 52 52 my $entry_class = $app->model($place->object_ds); 53 my $entry = $entry_class->load($place->object_id); 53 my $entry = $entry_class->load($place->object_id) 54 or next; 54 55 my %entry_data = ( 55 56 id => $place->object_id, … … 740 741 my $id = $q->param('id'); 741 742 my $obj = $id ? $class->load($id) : $class->new; 743 return unless $obj; 742 744 my $original = $obj->clone(); 743 745 … … 780 782 my $blog_id = $app->param('blog_id'); 781 783 require MT::Blog; 782 my $blog = MT::Blog->load($blog_id); 784 my $blog = MT::Blog->load($blog_id) 785 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 783 786 784 787 $param->{enable_archive_paths} = $blog->column('archive_path'); … … 929 932 $param{blog_id} = $blog_id; 930 933 require MT::Blog; 931 $blog = MT::Blog->load($blog_id); 934 $blog = MT::Blog->load($blog_id) 935 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 932 936 $fmgr = $blog->file_mgr; 933 937 branches/release-34/lib/MT/CMS/Blog.pm
r1822 r1823 419 419 return $app->return_to_dashboard( redirect => 1 ) unless $blog_id; 420 420 421 my $blog = $app->model('blog')->load($blog_id); 421 my $blog = $app->model('blog')->load($blog_id) 422 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 422 423 my @data; 423 424 for my $at ( split /\s*,\s*/, $blog->archive_type ) { … … 557 558 return $app->errtrans("Invalid request.") unless $blog_id; 558 559 559 my $blog = MT::Blog->load($blog_id); 560 my $blog = MT::Blog->load($blog_id) 561 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 560 562 my $order = $q->param('type'); 561 563 my @order = split /,/, $order; … … 589 591 require MT::Entry; 590 592 my $entry = MT::Entry->load($obj_id); 591 $edit_type = $entry ->class;593 $edit_type = $entry ? $entry->class : 'entry'; 592 594 } 593 595 $app->{goback} = … … 803 805 if ( $q->param('entry_id') ) { 804 806 require MT::Entry; 805 my $entry = MT::Entry->load( scalar $q->param('entry_id') ); 807 my $entry = MT::Entry->load( scalar $q->param('entry_id') ) 808 or return $app->error($app->translate('Can\'t load entry #[_1].', $q->param('entry_id'))); 806 809 require MT::Blog; 807 my $blog = MT::Blog->load( $entry->blog_id ); 810 my $blog = MT::Blog->load( $entry->blog_id ) 811 or return $app->error($app->translate('Can\'t load blog #[_1].', $entry->blog_id)); 808 812 require MT::CMS::Entry; 809 813 MT::CMS::Entry::ping_continuation( $app, … … 942 946 my $tmpl_id = $1; 943 947 require MT::Template; 944 my $tmpl = MT::Template->load($tmpl_id); 948 my $tmpl = MT::Template->load($tmpl_id) 949 or return $app->error($app->translate('Can\'t load template #[_1].', $tmpl_id)); 945 950 $param{build_type_name} = 946 951 $app->translate( "index template '[_1]'", $tmpl->name ); … … 950 955 my $entry_id = $1; 951 956 require MT::Entry; 952 my $entry = MT::Entry->load($entry_id); 957 my $entry = MT::Entry->load($entry_id) 958 or return $app->error($app->translate('Can\'t load entry #[_1].', $entry_id)); 953 959 $param{build_type_name} = 954 960 $app->translate( "[_1] '[_2]'", $entry->class_label, $entry->title ); … … 969 975 my $blog_id = $app->param('blog_id'); 970 976 require MT::Blog; 971 my $blog = MT::Blog->load($blog_id); 977 my $blog = MT::Blog->load($blog_id) 978 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 972 979 my $at = $blog->archive_type || ''; 973 980 my ( @blog_at, @at, @data ); … … 1007 1014 if ( my $tmpl_id = $app->param('tmpl_id') ) { 1008 1015 require MT::Template; 1009 my $tmpl = MT::Template->load($tmpl_id); 1016 my $tmpl = MT::Template->load($tmpl_id) 1017 or return $app->error($app->translate('Can\'t load template #[_1].', $tmpl_id)); 1010 1018 $param{index_tmpl_id} = $tmpl->id; 1011 1019 $param{index_tmpl_name} = $tmpl->name; branches/release-34/lib/MT/CMS/Category.pm
r1773 r1823 141 141 my $cat; 142 142 if ( my $moved_cat_id = $q->param('move_cat_id') ) { 143 $cat = $class->load( $q->param('move_cat_id') ); 143 $cat = $class->load( $q->param('move_cat_id') ) 144 or return; 144 145 move_category($app) or return; 145 146 } … … 440 441 $app->validate_magic() or return; 441 442 442 my $cat = $class->load( $app->param('move_cat_id') ); 443 my $cat = $class->load( $app->param('move_cat_id') ) 444 or return; 443 445 my $new_parent = $app->param('move-radio'); 444 446 branches/release-34/lib/MT/CMS/Comment.pm
r1710 r1823 1058 1058 foreach my $id (@ids) { 1059 1059 next unless $id; 1060 my $obj = $class->load($id); 1060 my $obj = $class->load($id) 1061 or next; 1061 1062 unless ($perm_checked) { 1062 1063 if ( $obj->isa('MT::TBPing') && $obj->parent->isa('MT::Entry') ) { … … 1247 1248 my $blog = $parent->blog 1248 1249 || $app->model('blog')->load($q->param('blog_id')); 1250 return $app->error($app->translate('Can\'t load blog #[_1].', $q->param('blog_id'))) unless $blog; 1249 1251 1250 1252 require MT::Sanitize; … … 1318 1320 my $blog = $parent->blog 1319 1321 || $app->model('blog')->load($app->param('blog_id')); 1322 return $app->error($app->translate('Can\'t load blog #[_1].', $app->param('blog_id'))) unless $blog; 1320 1323 1321 1324 require MT::Sanitize; … … 1372 1375 || $perms->can_manage_feedback ); 1373 1376 1374 my $c = MT::Comment->load($id); 1377 my $c = MT::Comment->load($id) 1378 or return 0; 1375 1379 if ( $perms && $perms->can_create_post && $perms->can_publish_post ) { 1376 1380 return $c->entry->author_id == $app->user->id; … … 1401 1405 my $perms = $app->permissions; 1402 1406 require MT::Entry; 1403 my $entry = MT::Entry->load( $obj->entry_id ); 1407 my $entry = MT::Entry->load( $obj->entry_id ) 1408 or return 0; 1404 1409 if ( !$perms || $perms->blog_id != $entry->blog_id ) { 1405 1410 $perms ||= $author->permissions( $entry->blog_id ); … … 1609 1614 require MT::Entry; 1610 1615 foreach my $id (@obj_ids) { 1611 my $obj = $class->load($id); 1616 my $obj = $class->load($id) 1617 or next; 1612 1618 my $old_visible = $obj->visible || 0; 1613 1619 if ( $old_visible != $new_visible ) { … … 1692 1698 for my $id (@$comments) { 1693 1699 my $cmt = MT::Comment->load($id); 1694 if ( $cmt ->commenter_id ) {1700 if ( $cmt && $cmt->commenter_id ) { 1695 1701 $commenters{ $cmt->commenter_id . ':' . $cmt->blog_id } = 1696 1702 [ $cmt->commenter_id, $cmt->blog_id ]; … … 1711 1717 my $entry = $app->model('entry')->load( $parent->entry_id ); 1712 1718 1713 unless ($parent->is_published ) {1719 if ( !$parent || $parent->is_published ) { 1714 1720 $app->error( 1715 1721 $app->translate("You can't reply to unpublished comment.") ); … … 1721 1727 return ( undef, $parent, $entry ); 1722 1728 } 1723 1724 my $blog = $app->model('blog')->load( $entry->blog_id );1725 1729 1726 1730 my $nick = $app->user->nickname || $app->translate('Registered User'); branches/release-34/lib/MT/CMS/Common.pm
r1807 r1823 132 132 my ($obj); 133 133 if ($id) { 134 $obj = $class->load($id); 134 $obj = $class->load($id) 135 or return $app->error($app->translate("Invalid ID [_1]", $id)); 135 136 } 136 137 else { … … 739 740 require MT::Entry; 740 741 my $tb_center = MT::Trackback->load( $obj->tb_id ); 741 my $entry = MT::Entry->load( $tb_center->entry_id ); 742 my $entry = MT::Entry->load( $tb_center->entry_id ) 743 or return $app->error($app->translate('Can\'t load entry #[_1].', $tb_center->entry_id)); 742 744 if ( my $ts = $obj->created_on ) { 743 745 $row->{created_on_time_formatted} = … … 760 762 } 761 763 if ( $type eq 'template' ) { 762 my $blog = $blog_class->load( scalar $q->param('blog_id') );763 764 $app->add_breadcrumb( $app->translate('Templates') ); 764 765 $param{nav_templates} = 1; … … 782 783 # add any breadcrumbs 783 784 if ( $type eq 'banlist' ) { 784 my $blog = $blog_class->load($blog_id);785 785 $app->add_breadcrumb( $app->translate('IP Banning') ); 786 786 $param{nav_config} = 1; … … 926 926 foreach (@ot) { 927 927 my $obj = $ot_class->load($_); 928 next unless $obj; 928 929 $obj->remove 929 930 or return $app->errtrans( 'Removing tag failed: [_1]', … … 946 947 require MT::Entry; 947 948 require MT::Placement; 948 my $blog = MT::Blog->load($blog_id); 949 my $blog = MT::Blog->load($blog_id) 950 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 949 951 my $at = $blog->archive_type; 950 952 if ( $at && $at ne 'None' ) { branches/release-34/lib/MT/CMS/Entry.pm
r1801 r1823 139 139 my $blog_timezone = 0; 140 140 if ($blog_id) { 141 my $blog = $blog_class->load($blog_id); 141 my $blog = $blog_class->load($blog_id) 142 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 142 143 $blog_timezone = $blog->server_offset(); 143 144 if ( $type eq 'entry' ) { … … 836 837 $fullscreen = 1; 837 838 } 839 return $app->error($app->translate('Can\'t load template.')) unless $tmpl; 838 840 839 841 # translates naughty words when PublishCharset is NOT UTF-8 … … 1079 1081 require MT::Blog; 1080 1082 my $blog_id = $app->param('blog_id'); 1081 my $blog = MT::Blog->load($blog_id); 1082 1083 my $blog = MT::Blog->load($blog_id) 1084 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 1085 1083 1086 my $archive_type; 1084 1087 … … 1349 1352 1350 1353 # blog_id sanity check 1351 next if $cat->blog_id != $obj->blog_id;1354 next if !$cat || $cat->blog_id != $obj->blog_id; 1352 1355 1353 1356 my $place = MT::Placement->new; … … 1462 1465 next unless $p =~ /^category_id_(\d+)/; 1463 1466 my $id = $1; 1464 my $entry = MT::Entry->load($id); 1467 my $entry = MT::Entry->load($id) 1468 or next; 1465 1469 return $app->error( $app->translate("Permission denied.") ) 1466 1470 unless $perms … … 1822 1826 my $entry_id = $app->param('entry_id'); 1823 1827 require MT::Entry; 1824 my $entry = MT::Entry->load($entry_id); 1828 my $entry = MT::Entry->load($entry_id) 1829 or return $app->error($app->translate('Can\'t load entry #[_1].', $entry_id)); 1825 1830 $param{url_loop} = [ map { { url => $_ } } @{ $entry->pinged_url_list } ]; 1826 1831 $param{failed_url_loop} = … … 2071 2076 my ($type) = @_; 2072 2077 my $blog_id = $app->blog->id; 2073 my $blog = $app->model('blog')->load($blog_id); 2078 my $blog = $app->model('blog')->load($blog_id) 2079 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 2074 2080 my %args = ( '_type' => $type, blog_id => $blog_id, qp => 1 ); 2075 2081 my $uri = $app->base . $app->uri( 'mode' => 'view', args => \%args ); … … 2286 2292 my $q = $app->param; 2287 2293 my $blog_id = $q->param('blog_id'); 2288 my $blog = MT::Blog->load($blog_id); 2294 my $blog = MT::Blog->load($blog_id) 2295 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 2289 2296 2290 2297 my $can_background = branches/release-34/lib/MT/CMS/Import.pm
r1369 r1823 74 74 if ($blog_id) { 75 75 $param{blog_id} = $blog_id; 76 my $blog = $app->model('blog')->load($blog_id); 76 my $blog = $app->model('blog')->load($blog_id) 77 or return $app->error($app->translate('Can\'t load blog #[_1].', $blog_id)); 77 78 $param{text_filters} = $app->load_text_filters( $blog->convert_paras ); 78 79 } branches/release-34/lib/MT/CMS/Search.pm
r1590 r1823 69 69 'perm_check' => sub { 70 70 my $ping = shift; 71 my $tb = MT::Trackback->load( $ping->tb_id ); 71 my $tb = MT::Trackback->load( $ping->tb_id ) 72 or return undef; 72 73 if ( $tb->entry_id ) { 73 74 require MT::Entry; branches/release-34/lib/MT/CMS/Tag.pm
r1615 r1823 227 227 my $entry = MT::Entry->load($id) or next; 228 228 next 229 unless $user->is_superuser 229 unless $entry 230 || $user->is_superuser 230 231 || $perms->can_edit_entry( $entry, $user ); 231 232 … … 259 260 my $entry = MT::Entry->load($id) or next; 260 261 next 261 unless $user->is_superuser 262 unless $entry 263 || $user->is_superuser 262 264 || $perms->can_edit_entry( $entry, $user ); 263 265 $entry->remove_tags(@tags); … … 290 292 my $asset = MT::Asset->load($id) or next; 291 293 next 292 unless $user->is_superuser 294 unless $asset 295 || $user->is_superuser 293 296 || $perms->can_edit_assets; 294 297 … … 322 325 my $asset = MT::Asset->load($id) or next; 323 326 next 324 unless $user->is_superuser 327 unless $asset 328 || $user->is_superuser 325 329 || $perms->can_edit_assets; 326 330 $asset->remove_tags(@tags); branches/release-34/lib/MT/CMS/Template.pm
r1786 r1823 895 895 unless $perms->can_edit_templates; 896 896 $app->validate_magic() or return; 897 my $blog = MT::Blog->load( $perms->blog_id ); 897 my $blog = MT::Blog->load( $perms->blog_id ) 898 or return $app->error($app->translate('Can\'t load blog #[_1].', $perms->blog_id)); 898 899 require MT::Template; 899 900 my @tmpl = MT::Template->load( { blog_id => $blog->id } ); … … 1256 1257 my $at = $1; 1257 1258 my $map_id = $2;
