Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Item13193: deprecate jquery.gradient
Item13138: finished jquery.stars, new rating formfield, docu and examples
- Loading branch information
1 parent
2240f5b
commit aa89b32
Showing
7 changed files
with
214 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
%META:TOPICINFO{author="micha" comment="reprev" date="1420807369" format="1.1" reprev="2" version="2"}% | ||
%META:TOPICPARENT{name="JQueryPlugin"}% | ||
---+ %TOPIC% | ||
%JQPLUGINS{"stars" | ||
format=" | ||
Homepage: $homepage <br /> | ||
Author(s): $author <br /> | ||
Version: $version | ||
" | ||
}% | ||
|
||
%STARTSECTION{"summary"}% | ||
Flexible and non-obstructive star rating. This plugin turns an HTML =<input>= element into a star rating widget. | ||
The design is heavily influenced by [[%SYSTEMWEB%.JQueryRating]] by Fyneworks.com bit requries considerably less HTML markup | ||
which is of advantage with high precision ratings. | ||
|
||
Features: | ||
|
||
* arbitrary number of stars | ||
* arbitrary precision of star rating by splitting each star | ||
* mouse wheel support | ||
* non-obstructive integration using CSS and HTML5 | ||
|
||
%ENDSECTION{"summary"}% | ||
|
||
---++ Usage | ||
|
||
There are two ways to make use of this plugin, either as part of a [[%SYSTEMWEB%.DataForms][DataForm definition]] (see [[#Formfield_61rating_61][Formfield =rating=]]) | ||
or writing HTML yourself. | ||
|
||
<verbatim class="tml"> | ||
%JQREQUIRE{"stars"}% | ||
|
||
<input class='jqStars' | ||
value='...' | ||
name='...' | ||
data-num-stars='...' | ||
data-split='...' | ||
data-values='...' | ||
disabled /> | ||
</verbatim> | ||
|
||
* any =input= element with a CSS class =jqStars= will be initialized automatically | ||
* =value= defines the initial value of the star rating | ||
* the =disabled= property flags the =input= element as read-only | ||
* the =data-num-stars= parameter specifies the maximum number of stars | ||
* the =data-split= parameter specifies the precision of a sub-star rating by numbers of parts each star is split up | ||
* the =data-values= parameter may optionally provide a json object of values to be selected | ||
|
||
The json object in =data-values= can either be a plain array of values such as in | ||
|
||
<verbatim class="html"> | ||
<input class="jqStars" | ||
value="I like it" | ||
data-values='["very low", "low", "substandard", "standard", "superior", "I like it", "quite good", "good", "very good", "excellent"]' | ||
/> | ||
</verbatim> | ||
|
||
... or an array of objects of the form ={"label": "value"}=: | ||
|
||
<verbatim class="html"> | ||
<input class="jqStars" | ||
value="e" | ||
data-values='[{"very low":"a"}, {"low":"b"}, {"substandard":"c"}, {"standard":"d"}, {"superior":"e"}, {"I like it":"f"}, {"quite good":"g"}, {"good":"i"}, {"very good":"j"}, {"excellent":"k"}]' | ||
/> | ||
</verbatim> | ||
|
||
---++ Formfield =rating= | ||
|
||
The jquery stars plugin is used to implement a =rating= formfield. Here are some examples: | ||
|
||
| *Name* | *Type* | *Size* | *Values* | *Description* | *Attributes* | | ||
| Rating1 | rating | 5 | | | | | ||
| Rating2 | rating | 1 | very low, low, substandard, standard, superior, I like it, quite good, good, very good, excellent | | | | ||
| Rating3 | rating | 10 | | | split:2 | | ||
| Rating4 | rating+values | 1 | very low=1, low=2, substandard=3, standard=4, superior=5, I like it=6, quite good=7, good=8, very good=9, excellent=10 | | | | ||
|
||
* Rating1 defines a simple numeric 5 star rating | ||
* Rating2 defines a simple scheme using named categories. | ||
* Rating3 defines a 10 star rating by increments of 0.5 steps | ||
* Rating4 defines a numeric rating where each value is mapped to a named category | ||
|
||
The =Size= column specifies the number of stars. If =Values= are defined as well, their number will overwrite the =Size= value. | ||
Note, that the =Attributes= column will be used to parametrize the jquery.stars plugin. | ||
|
||
---++ Examples | ||
%JQREQUIRE{"stars"}% | ||
|
||
---+++ default settings | ||
<input class="jqStars" value="0" /> | ||
|
||
---+++ read only | ||
<input class="jqStars" value="2" disabled /> | ||
|
||
<input class="jqStars" value="2.5" disabled /> | ||
|
||
<input class="jqStars" value="2.5" data-split="2" disabled /> | ||
|
||
---+++ 10 stars | ||
|
||
<input class="jqStars" data-num-stars="10" /> | ||
|
||
---+++ 10 stars, split 10 | ||
|
||
<input class="jqStars" value="4.2" data-num-stars="10" data-split="10" /> | ||
|
||
---+++ 10 stars, split 100 | ||
|
||
<input class="jqStars" value="5.25" data-num-stars="10" data-split="100" /> | ||
|
||
---+++ named values | ||
|
||
<input class="jqStars" value="I like it" data-values='["very low", "low", "substandard", "standard", "superior", "I like it", "quite good", "good", "very good", "excellent"]' /> | ||
|
||
---+++ mapped values | ||
|
||
<input class="jqStars" value="e" data-values='[{"very low":"a"}, {"low":"b"}, {"substandard":"c"}, {"standard":"d"}, {"superior":"e"}, {"I like it":"f"}, {"quite good":"g"}, {"good":"i"}, {"very good":"j"}, {"excellent":"k"}]' /> |
41 changes: 41 additions & 0 deletions
41
JQueryPlugin/lib/Foswiki/Configure/Checkers/JQueryPlugin/Plugins/Gradient/Enabled.pm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# See bottom of file for license and copyright information | ||
package Foswiki::Configure::Checkers::JQueryPlugin::Plugins::Gradient::Enabled; | ||
|
||
use warnings; | ||
use strict; | ||
|
||
use Foswiki::Configure::Checker (); | ||
our @ISA = qw( Foswiki::Configure::Checker ); | ||
|
||
sub check { | ||
my $this = shift; | ||
my $warnings; | ||
|
||
if ( $Foswiki::cfg{JQueryPlugin}{Plugins}{Gradient}{Enabled} ) { | ||
$warnings .= $this->WARN(<<'HERE'); | ||
This plugin is deprecated. Please use CSS. See http://colorzilla.com/gradient-editor/. | ||
HERE | ||
} | ||
|
||
return $warnings; | ||
} | ||
|
||
1; | ||
__END__ | ||
Foswiki - The Free and Open Source Wiki, http://foswiki.org/ | ||
Copyright (C) 2008-2014 Foswiki Contributors. Foswiki Contributors | ||
are listed in the AUTHORS file in the root of this distribution. | ||
NOTE: Please extend that file, not this notice. | ||
This program is free software; you can redistribute it and/or | ||
modify it under the terms of the GNU General Public License | ||
as published by the Free Software Foundation; either version 2 | ||
of the License, or (at your option) any later version. For | ||
more details read LICENSE in the root of this distribution. | ||
This program is distributed in the hope that it will be useful, | ||
but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
As per the GPL, removal of this notice is prohibited. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
JSON,>=0,cpan,Required | ||
ONLYIF ( $Foswiki::Plugins::VERSION < 2.1) | ||
Foswiki::Plugins::ZonePlugin,>=3.1,perl,Required. required for Foswiki < 1.1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters