diff --git a/app/application/models/project/issue/comment.php b/app/application/models/project/issue/comment.php index 18ae559e8..98019ce3f 100644 --- a/app/application/models/project/issue/comment.php +++ b/app/application/models/project/issue/comment.php @@ -111,6 +111,9 @@ public static function delete_comment($comment) */ public static function format($body) { - return \Sparkdown\Markdown($body); + $body = \Sparkdown\Markdown($body); + + // convert issue numbers into issue url + return preg_replace('/((?:' . __('tinyissue.issue') . ')?)(\s*)#(\d+)/i', '$1 #$3', $body); } } diff --git a/app/application/routes.php b/app/application/routes.php index 46c114327..efc708aaf 100644 --- a/app/application/routes.php +++ b/app/application/routes.php @@ -110,6 +110,11 @@ Route::filter('project', function() { + // find project id from issue object + if (Request::route()->parameters[0] == 0) { + return; + } + Project::load_project(Request::route()->parameters[0]); if(!Project::current()) @@ -126,9 +131,19 @@ { return Response::error('404'); } + + // load project + if (Request::route()->parameters[0] == 0) { + Request::route()->parameters = array( + Project\Issue::current()->project_id, + Project\Issue::current()->id + ); + + Project::load_project(Request::route()->parameters[0]); + } }); Route::filter('permission', function($permission) { if(!Auth::user()->permission($permission)) return Response::error('500'); -}); \ No newline at end of file +});