mirror of https://github.com/apache/lucene.git
SOLR-3326: Show plugin links as real links
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1310532 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
22c40a71c2
commit
874507d982
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
#content #plugins #navigation
|
#content #plugins #navigation
|
||||||
{
|
{
|
||||||
width: 20%;
|
width: 20%;
|
||||||
|
@ -102,3 +103,15 @@
|
||||||
{
|
{
|
||||||
width: 72%;
|
width: 72%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#content #plugins #frame .entry.expanded a.linker {
|
||||||
|
background-image: none;
|
||||||
|
background-position: 0 0;
|
||||||
|
display: inline;
|
||||||
|
font-weight: normal;
|
||||||
|
padding:0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content #plugins #frame .entry.expanded a.linker:hover {
|
||||||
|
background-color:#F0F3FF;
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
//by Michalis Tzikas & Vasilis Lolos
|
||||||
|
//07-03-2012
|
||||||
|
//v1.0
|
||||||
|
/*
|
||||||
|
Copyright (C) 2011 by Michalis Tzikas & Vasilis Lolos
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
(function( $ ){
|
||||||
|
$.fn.linker = function(options) {
|
||||||
|
var defaults = {
|
||||||
|
target : '', //blank,self,parent,top
|
||||||
|
className : '',
|
||||||
|
rel : ''
|
||||||
|
};
|
||||||
|
var options = $.extend(defaults, options);
|
||||||
|
|
||||||
|
target_string = (options.target != '') ? 'target="_'+options.target+'"' : '';
|
||||||
|
class_string = (options.className != '') ? 'class="'+options.className+'"' : '';
|
||||||
|
rel_string = (options.rel != '') ? 'rel="'+options.rel+'"' : '';
|
||||||
|
|
||||||
|
$(this).each(function(){
|
||||||
|
t = $(this).text();
|
||||||
|
|
||||||
|
t = t.replace(/(https\:\/\/|http:\/\/)([www\.]?)([^\s|<]+)/gi,'<a href="$1$2$3" '+target_string+' '+class_string+' '+rel_string+'>$1$2$3</a>');
|
||||||
|
t = t.replace(/([^https\:\/\/]|[^http:\/\/]|^)(www)\.([^\s|<]+)/gi,'$1<a href="http://$2.$3" '+target_string+' '+class_string+' '+rel_string+'>$2.$3</a>');
|
||||||
|
t = t.replace(/<([^a]|^\/a])([^<>]+)>/g, "<$1$2>").replace(/<\/a>/g, "</a>").replace(/<(.)>/g, "<$1>").replace(/\n/g, '<br />');
|
||||||
|
|
||||||
|
$(this).html(t);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
})( jQuery );
|
|
@ -27,6 +27,7 @@ require
|
||||||
'lib/order!lib/jquery.sparkline',
|
'lib/order!lib/jquery.sparkline',
|
||||||
'lib/order!lib/jquery.timeago',
|
'lib/order!lib/jquery.timeago',
|
||||||
'lib/order!lib/highlight',
|
'lib/order!lib/highlight',
|
||||||
|
'lib/order!lib/linker',
|
||||||
'lib/order!lib/ZeroClipboard',
|
'lib/order!lib/ZeroClipboard',
|
||||||
'lib/order!lib/d3',
|
'lib/order!lib/d3',
|
||||||
'lib/order!lib/chosen',
|
'lib/order!lib/chosen',
|
||||||
|
|
|
@ -185,16 +185,25 @@ sammy.get
|
||||||
|
|
||||||
if( 'description' === detail_key )
|
if( 'description' === detail_key )
|
||||||
{
|
{
|
||||||
detail_value = detail_value.replace( /,/g, ',​' );
|
// For list of components
|
||||||
|
if(detail_value.match(/^Search using components: /)) {
|
||||||
|
detail_value = detail_value
|
||||||
|
.replace( /: /, ':<ul><li>' )
|
||||||
|
.replace( /,/g, '</li><li>' ) +
|
||||||
|
"</li></ul>";
|
||||||
}
|
}
|
||||||
else if( 'src' === detail_key )
|
|
||||||
{
|
|
||||||
detail_value = detail_value.replace( /\//g, '/​' );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
content += '<li><dl class="clearfix">' + "\n";
|
content += '<li><dl class="clearfix">' + "\n";
|
||||||
content += '<dt>' + detail_key + ':</dt>' + "\n";
|
content += '<dt>' + detail_key + ':</dt>' + "\n";
|
||||||
|
if($.isArray(detail_value)) {
|
||||||
|
$.each(detail_value, function(index, value) {
|
||||||
|
content += '<dd>' + value + '</dd>' + "\n";
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
content += '<dd>' + detail_value + '</dd>' + "\n";
|
content += '<dd>' + detail_value + '</dd>' + "\n";
|
||||||
|
}
|
||||||
content += '</dl></li>' + "\n";
|
content += '</dl></li>' + "\n";
|
||||||
}
|
}
|
||||||
else if( 'stats' === detail_key && details[detail_key] )
|
else if( 'stats' === detail_key && details[detail_key] )
|
||||||
|
@ -233,6 +242,24 @@ sammy.get
|
||||||
$( 'a[href="' + decodeURIComponent( context.path ) + '"]', frame_element )
|
$( 'a[href="' + decodeURIComponent( context.path ) + '"]', frame_element )
|
||||||
.parent().addClass( 'expanded' );
|
.parent().addClass( 'expanded' );
|
||||||
|
|
||||||
|
// Try to make links for anythign with http (but leave the rest alone)
|
||||||
|
$( '.detail dd' ).each(function(index) {
|
||||||
|
var txt = $(this).html();
|
||||||
|
if(txt.indexOf("http") >= 0) {
|
||||||
|
$(this).linker({
|
||||||
|
target: '', //blank,self,parent,top
|
||||||
|
className : 'linker',
|
||||||
|
rel : ''
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Add invisible whitespace after each slash
|
||||||
|
$( '.detail a.linker' ).each(function(index) {
|
||||||
|
$(this).html( $(this).html().replace( /\//g, '/​' ) );
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
$( '.entry', frame_element )
|
$( '.entry', frame_element )
|
||||||
.each
|
.each
|
||||||
(
|
(
|
||||||
|
|
Loading…
Reference in New Issue