File tree Expand file tree Collapse file tree 2 files changed +14
-14
lines changed
BlogEngine/BlogEngine.Core Expand file tree Collapse file tree 2 files changed +14
-14
lines changed Original file line number Diff line number Diff line change 88 using System . Linq ;
99 using System . Net . Mail ;
1010 using System . Text ;
11+ using System . Text . RegularExpressions ;
1112 using System . Web ;
1213
1314 using BlogEngine . Core . Data . Models ;
@@ -694,28 +695,27 @@ public bool IsVisibleToPublic
694695 }
695696
696697 /// <summary>
697- /// URL of the first image in the post, if any
698+ /// URL of the first image in the post, if any.
699+ /// If there's no first image, returns the URL to "images/defaultImg.jpg" in the current theme used in the blog
698700 /// </summary>
699701 public string FirstImgSrc
700702 {
701703 get
702704 {
703- int idx = Content . IndexOf ( "<img src=" ) ;
704- if ( idx > 0 )
705+ string srcValue = null ;
706+ if ( ! string . IsNullOrEmpty ( content ) )
705707 {
706- try
708+ Match match = Regex . Match ( content , @"<img\s+?.*?src=('|"")(.*?)\1.*?>" , RegexOptions . Multiline | RegexOptions . IgnoreCase ) ;
709+ if ( match . Success )
707710 {
708- idx = idx + 10 ;
709- var idxEnd = Content . IndexOf ( "\" " , idx ) ;
710- if ( idxEnd > idx )
711- {
712- var len = idxEnd - idx ;
713- return Content . Substring ( idx , len ) ;
714- }
711+ srcValue = match . Groups [ 2 ] . Value ;
715712 }
716- catch ( Exception ) { }
717713 }
718- return "" ;
714+ if ( string . IsNullOrEmpty ( srcValue ) )
715+ {
716+ srcValue = Utils . RelativeWebRoot + "Custom/Themes/" + BlogSettings . Instance . Theme + "/images/defaultImg.jpg" ;
717+ }
718+ return srcValue ;
719719 }
720720 }
721721
Original file line number Diff line number Diff line change 2020[ assembly: ComVisible ( false ) ]
2121[ assembly: AllowPartiallyTrustedCallers ]
2222[ assembly: AssemblyVersion ( "3.3.8.0" ) ]
23- [ assembly: SecurityRules ( SecurityRuleSet . Level1 ) ]
23+ [ assembly: SecurityRules ( SecurityRuleSet . Level1 ) ]
You can’t perform that action at this time.
0 commit comments