Changeset 2984


Ignore:
Timestamp:
04/12/05 15:12:24 (8 years ago)
Author:
hauma
Message:
  • Improved output of the redirect macro. Display the redirection target to enable clients with disabled JavaScript to follow the redirect.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trac/trunk/wiki-macros/redirect.py

    r2591 r2984  
    66from trac.WikiFormatter import CommonFormatter 
    77 
     8NL = "\n" 
     9 
    810def execute(hdf, args, env): 
     11    preview = hdf.getValue('args.preview', "") 
    912    db = env.get_db_cnx() 
    1013    out = StringIO() 
    1114    fmt = CommonFormatter(hdf, env, db) 
     15 
    1216    if args: 
    1317        link = fmt._expand_module_link(args) 
    1418        if link[0] != None: 
    15             # out.write("<tt>"); 
    16             # out.write(link[0]); 
    17             # out.write("</tt>"); 
    18             out.write("<script language=\"JavaScript\">\n") 
    19             out.write("document.location=\"") 
    20             out.write(link[0]) 
    21             out.write("\";\n") 
    22             out.write("</script>") 
    23             return out.getvalue() 
     19            out.write('<div class="system-message">') 
     20            out.write('<strong>Redirect: </strong>') 
     21            out.write('You should have been redirected to ') 
     22            out.write('<a href="' + link[0] + '">') 
     23            out.write(args) 
     24            out.write('</a>') 
     25            out.write('.') 
     26            if not preview: 
     27                out.write('Since redirection doesn\'t seem to work, please click ') 
     28                out.write('<a href="' + link[0] + '">') 
     29                out.write('here') 
     30                out.write('</a>') 
     31                out.write('.') 
     32 
     33            out.write('</div>') 
     34 
     35            if not preview: 
     36                out.write(NL) 
     37                out.write('<script language="JavaScript">' + NL) 
     38                out.write('document.location="' + link[0] + '";' + NL) 
     39                out.write('</script>' + NL) 
    2440        else: 
    25             out.write('<div class="system-message"><strong>Error: Redirection target not found.</strong></div>') 
     41            out.write('<div class="system-message">') 
     42            out.write('<strong>Redirection Error: </strong>') 
     43            out.write('Redirection target not found.') 
     44            out.write('</div>') 
     45 
    2646    else: 
    27         out.write('<div class="system-message"><strong>Error: Missing redirection URL.</strong></div>') 
     47        out.write('<div class="system-message">') 
     48        out.write('<strong>Redirection Error: </strong>') 
     49        out.write('Missing redirection target.') 
     50        out.write('</div>') 
    2851 
     52    return out.getvalue() 
     53 
Note: See TracChangeset for help on using the changeset viewer.