!! article Widget Page !! text Hello world !! endarticle !! test FontAwesomeIcon home !! input <phptag> echo new FontAwesomeIcon( "home" ); </phptag> !! result <p><i class="fa fa-home"></i> </p> !! end !! test FontAwesome home func !! input {{#phptag: FA::home }} !! result <p><i class="fa fa-home"></i> </p> !! end !! test func fa home func !! input {{#phptag: echo fa( 'home' ); }} !! result <p><i class="fa fa-home"></i> </p> !! end !! test FontAwesome home tag !! input <phptag> echo FA::home; </phptag> !! result <p><i class="fa fa-home"></i> </p> !! end !! test FontAwesomeIcon home fw !! input <phptag> echo new FontAwesomeIcon( 'HoMe', ['fw'] ); </phptag> !! result <p><i class="fa fa-home fa-fw"></i> </p> !! end !! test FontAwesomeIcon home fw property !! input <phptag> $i = new FontAwesomeIcon( 'HoMe' ); echo $i->fw; </phptag> !! result <p><i class="fa fa-home fa-fw"></i> </p> !! end !! test FontAwesome home fw property !! input <phptag> $i = FA::HoMe; echo $i->fw; </phptag> !! result <p><i class="fa fa-home fa-fw"></i> </p> !! end !! test func fa home fw !! input <phptag> echo fa( 'HoMe', ['fw'] ); </phptag> !! result <p><i class="fa fa-home fa-fw"></i> </p> !! end !! test FontAwesomeIcon camera-retro !! input <phptag> echo new FontAwesomeIcon( 'camera-RETRO' ); </phptag> !! result <p><i class="fa fa-camera-retro"></i> </p> !! end !! test FontAwesomeIcon camera-retro lg !! input {{#phptag: echo new FontAwesomeIcon( 'camera-retro', ['lg'] ); }} !! result <p><i class="fa fa-camera-retro fa-lg"></i> </p> !! end !! test FontAwesomeIcon camera-retro lg 3x !! input {{#phptag: echo new FontAwesomeIcon( 'camera-retro', ['LG', '3x'] ); }} !! result <p><i class="fa fa-camera-retro fa-3x"></i> </p> !! end !! test FontAwesomeIcon camera-retro lg 3x property !! input <phptag> $i = new FontAwesomeIcon( 'camera-retro' ); echo $i->LG->_3x; </phptag> !! result <p><i class="fa fa-camera-retro fa-3x"></i> </p> !! end !! test FontAwesome camera-retro lg 3x !! input {{#phptag: FA::camera_retro->LG->_3x }} !! result <p><i class="fa fa-camera-retro fa-3x"></i> </p> !! end !! test func FontAwesome camera-retro lg 3x !! input {{#phptag: echo fontawesome( 'camera-retro', ['LG', '3x'] ); }} !! result <p><i class="fa fa-camera-retro fa-3x"></i> </p> !! end !! test FontAwesomeIcon camera-retro lg 3x fw !! input {{#phptag: echo new FontAwesomeIcon( 'camera-retro', ['lg', '3x', 'fw'] ); }} !! result <p><i class="fa fa-camera-retro fa-3x fa-fw"></i> </p> !! end !! test FontAwesomeIcon spinner spin 3x !! input {{#phptag: echo new FontAwesomeIcon( 'spinner', ['spin', '3x'] ); }} !! result <p><i class="fa fa-spinner fa-spin fa-3x"></i> </p> !! end !! test FontAwesome spinner spin 3x !! input {{#phptag: FA::spinner->spin->_3x }} !! result <p><i class="fa fa-spinner fa-spin fa-3x"></i> </p> !! end !! test FontAwesomeIcon quote-left 3x border !! input {{#phptag: echo new FontAwesomeIcon( 'quote-left', ['3x', 'border'] ); }} !! result <p><i class="fa fa-quote-left fa-3x fa-border"></i> </p> !! end !! test FontAwesomeIcon quote-left 3x border pull-left !! input <phptag> echo new FontAwesomeIcon( 'quote-left', ['3x', 'BoRdEr', 'ClasS'=>'pull-left'] ); </phptag> !! result <p><i class="fa fa-quote-left fa-3x fa-border pull-left"></i> </p> !! end !! test FontAwesomeIcon quote-left 3x border pull-left class !! input <phptag> $fai = new FontAwesomeIcon( 'quote-left', ['3x', 'border'] ); $fai->class = 'pull-left'; echo $fai; </phptag> !! result <p><i class="fa fa-quote-left fa-3x fa-border pull-left"></i> </p> !! end !! test FontAwesome quote-left 3x border pull-left class !! input <phptag> $fai = FA::quote_left->_3x->border; $fai->class = 'pull-left'; echo $fai; </phptag> !! result <p><i class="fa fa-quote-left fa-3x fa-border pull-left"></i> </p> !! end !! test FontAwesome quote-left 3x border pull-left class foo bar !! input <phptag> $fai = FA::quote_left->_3x->border; $fai->class = 'pull-left foo bar'; echo $fai; </phptag> !! result <p><i class="fa fa-quote-left fa-3x fa-border pull-left foo bar"></i> </p> !! end !! test FontAwesome quote-left 3x border pull-left classes foo bar !! input <phptag> $fai = FA::quote_left->_3x->border; $fai->class = ['pull-left', 'foo', 'bar']; echo $fai; </phptag> !! result <p><i class="fa fa-quote-left fa-3x fa-border pull-left foo bar"></i> </p> !! end !! test FontAwesome quote-left 3x border pull-left classes foo bar sanitize !! input <phptag> $fai = FA::quote_left->_3x->border; $fai->class = ['pull-left', 'foo bar']; echo $fai; </phptag> !! result <p><i class="fa fa-quote-left fa-3x fa-border pull-left foo_bar"></i> </p> !! end !! test FontAwesomeIcon shield rotate-270 !! input <phptag> echo new FontAwesomeIcon( 'shield', ['rotate-270'] ); </phptag> !! result <p><i class="fa fa-shield fa-rotate-270"></i> </p> !! end !! test FontAwesome shield rotate-270 !! input <phptag> echo FontAwesome::shield->rotate_270; </phptag> !! result <p><i class="fa fa-shield fa-rotate-270"></i> </p> !! end !! test Link 1 !! input <phptag> echo new Link( "Widget Page" ); </phptag> !! result <p><a href="/wiki/Widget_Page">Widget Page</a> </p> !! end !! test Link 2 !! input <phptag> echo new Link( "Widget Page", 'Other title' ); </phptag> !! result <p><a href="/wiki/Widget_Page">Other title</a> </p> !! end !! test Link 3 !! input <phptag> echo new Link( "Widget Page notexist", 'Other title' ); </phptag> !! result <p><a href="/wiki/Widget_Page_notexist">Other title</a> </p> !! end !! test Link template variable !! input <phptag> echo new Link( "Widget Page notexist", '{{{1|test}}}' ); </phptag> !! result <p><a href="/wiki/Widget_Page_notexist">test</a> </p> !! end !! test Link span !! input <phptag> echo new Link( "Widget Page", '<span>Other title</span>' ); </phptag> !! result <p><a href="/wiki/Widget_Page"><span>Other title</span></a> </p> !! end !! test Link script !! input <phptag> echo new Link( "Widget Page", '<script>alert("Hacked")</script>' ); </phptag> !! result <p><a href="/wiki/Widget_Page"><script>alert("Hacked")</script></a> </p> !! end !! test Element div !! input <phptag> echo new Element( 'div', 'test' ); </phptag> !! result <div>test</div> !! end !! test Element span !! input <phptag> echo new Element( 'span', 'test' ); </phptag> !! result <p><span>test</span> </p> !! end !! test Element div script !! input <phptag> echo new Element( 'div', '<script>alert("Hacked")</script>' ); </phptag> !! result <div><script>alert("Hacked")</script></div> !! end !! test Element div a !! input <phptag> echo new Element( 'div', '<a href="http://hacked.you">Hacked</a>' ); </phptag> !! result <div><a href="<a rel="nofollow" class="external free" href="http://hacked.you">http://hacked.you</a>">Hacked</a></div> !! end !! test Link Element !! input <phptag> $element = new Element( 'span', 'test' ); echo new Link( "Widget Page", (string)$element ); </phptag> !! result <p><a href="/wiki/Widget_Page"><span>test</span></a> </p> !! end !! test Link Element script !! input <phptag> $element = new Element( 'span', '<script>alert("Hacked")</script>' ); echo new Link( "Widget Page", (string)$element ); </phptag> !! result <p><a href="/wiki/Widget_Page"><span><script>alert("Hacked")</script></span></a> </p> !! end !! test Image !! input <phptag> echo new Image( "Foobar.jpg" ); </phptag> !! result <p><img src="http://example.com/images/3/3a/Foobar.jpg" width="1941px" height="220px"/> </p> !! end !! test Image alt !! input <phptag> echo new Image( "Foobar.jpg", ['alt'=>'test'] ); </phptag> !! result <p><img alt="test" src="http://example.com/images/3/3a/Foobar.jpg" width="1941px" height="220px"/> </p> !! end !! test Image alt script !! input <phptag> echo new Image( "Foobar.jpg", ['alt'=>'"><script>alert(\'Hacked\')</script>'] ); </phptag> !! result <p><img alt=""><script>alert('Hacked')</script>" src="http://example.com/images/3/3a/Foobar.jpg" width="1941px" height="220px"/> </p> !! end !! test Image width !! input <phptag> echo new Image( "Foobar.jpg", ['width'=>'200px'] ); </phptag> !! result <p><img width="200px" src="http://example.com/images/thumb/3/3a/Foobar.jpg/200px-Foobar.jpg" height="23px"/> </p> !! end !! test Image imageWidth !! input <phptag> echo new Image( 'Foobar.jpg', ['imageWidth'=>'100'] ); </phptag> !! result <p><img src="http://example.com/images/thumb/3/3a/Foobar.jpg/100px-Foobar.jpg" width="100px" height="11px"/> </p> !! end !! test Image imageHeight !! input <phptag> echo new Image( 'Foobar.jpg', ['ImaGeHeiGht'=>'100'] ); </phptag> !! result <p><img src="http://example.com/images/thumb/3/3a/Foobar.jpg/883px-Foobar.jpg" width="883px" height="100px"/> </p> !! end !! test Image url !! input <phptag> $image = new Image( 'Foobar.jpg', ['ImaGeHeiGht'=>'100'] ); echo '<nowiki>', $image->url, '</nowiki>'; </phptag> !! result <p>http://example.com/images/thumb/3/3a/Foobar.jpg/883px-Foobar.jpg </p> !! end