Commit 1e3f4abb authored by Luís Rudge's avatar Luís Rudge

trying some async stuff

parent 32549864
......@@ -671,506 +671,6 @@
<option value="498">498</option>
<option value="499">499</option>
<option value="500">500</option>
<option value="501">501</option>
<option value="502">502</option>
<option value="503">503</option>
<option value="504">504</option>
<option value="505">505</option>
<option value="506">506</option>
<option value="507">507</option>
<option value="508">508</option>
<option value="509">509</option>
<option value="510">510</option>
<option value="511">511</option>
<option value="512">512</option>
<option value="513">513</option>
<option value="514">514</option>
<option value="515">515</option>
<option value="516">516</option>
<option value="517">517</option>
<option value="518">518</option>
<option value="519">519</option>
<option value="520">520</option>
<option value="521">521</option>
<option value="522">522</option>
<option value="523">523</option>
<option value="524">524</option>
<option value="525">525</option>
<option value="526">526</option>
<option value="527">527</option>
<option value="528">528</option>
<option value="529">529</option>
<option value="530">530</option>
<option value="531">531</option>
<option value="532">532</option>
<option value="533">533</option>
<option value="534">534</option>
<option value="535">535</option>
<option value="536">536</option>
<option value="537">537</option>
<option value="538">538</option>
<option value="539">539</option>
<option value="540">540</option>
<option value="541">541</option>
<option value="542">542</option>
<option value="543">543</option>
<option value="544">544</option>
<option value="545">545</option>
<option value="546">546</option>
<option value="547">547</option>
<option value="548">548</option>
<option value="549">549</option>
<option value="550">550</option>
<option value="551">551</option>
<option value="552">552</option>
<option value="553">553</option>
<option value="554">554</option>
<option value="555">555</option>
<option value="556">556</option>
<option value="557">557</option>
<option value="558">558</option>
<option value="559">559</option>
<option value="560">560</option>
<option value="561">561</option>
<option value="562">562</option>
<option value="563">563</option>
<option value="564">564</option>
<option value="565">565</option>
<option value="566">566</option>
<option value="567">567</option>
<option value="568">568</option>
<option value="569">569</option>
<option value="570">570</option>
<option value="571">571</option>
<option value="572">572</option>
<option value="573">573</option>
<option value="574">574</option>
<option value="575">575</option>
<option value="576">576</option>
<option value="577">577</option>
<option value="578">578</option>
<option value="579">579</option>
<option value="580">580</option>
<option value="581">581</option>
<option value="582">582</option>
<option value="583">583</option>
<option value="584">584</option>
<option value="585">585</option>
<option value="586">586</option>
<option value="587">587</option>
<option value="588">588</option>
<option value="589">589</option>
<option value="590">590</option>
<option value="591">591</option>
<option value="592">592</option>
<option value="593">593</option>
<option value="594">594</option>
<option value="595">595</option>
<option value="596">596</option>
<option value="597">597</option>
<option value="598">598</option>
<option value="599">599</option>
<option value="600">600</option>
<option value="601">601</option>
<option value="602">602</option>
<option value="603">603</option>
<option value="604">604</option>
<option value="605">605</option>
<option value="606">606</option>
<option value="607">607</option>
<option value="608">608</option>
<option value="609">609</option>
<option value="610">610</option>
<option value="611">611</option>
<option value="612">612</option>
<option value="613">613</option>
<option value="614">614</option>
<option value="615">615</option>
<option value="616">616</option>
<option value="617">617</option>
<option value="618">618</option>
<option value="619">619</option>
<option value="620">620</option>
<option value="621">621</option>
<option value="622">622</option>
<option value="623">623</option>
<option value="624">624</option>
<option value="625">625</option>
<option value="626">626</option>
<option value="627">627</option>
<option value="628">628</option>
<option value="629">629</option>
<option value="630">630</option>
<option value="631">631</option>
<option value="632">632</option>
<option value="633">633</option>
<option value="634">634</option>
<option value="635">635</option>
<option value="636">636</option>
<option value="637">637</option>
<option value="638">638</option>
<option value="639">639</option>
<option value="640">640</option>
<option value="641">641</option>
<option value="642">642</option>
<option value="643">643</option>
<option value="644">644</option>
<option value="645">645</option>
<option value="646">646</option>
<option value="647">647</option>
<option value="648">648</option>
<option value="649">649</option>
<option value="650">650</option>
<option value="651">651</option>
<option value="652">652</option>
<option value="653">653</option>
<option value="654">654</option>
<option value="655">655</option>
<option value="656">656</option>
<option value="657">657</option>
<option value="658">658</option>
<option value="659">659</option>
<option value="660">660</option>
<option value="661">661</option>
<option value="662">662</option>
<option value="663">663</option>
<option value="664">664</option>
<option value="665">665</option>
<option value="666">666</option>
<option value="667">667</option>
<option value="668">668</option>
<option value="669">669</option>
<option value="670">670</option>
<option value="671">671</option>
<option value="672">672</option>
<option value="673">673</option>
<option value="674">674</option>
<option value="675">675</option>
<option value="676">676</option>
<option value="677">677</option>
<option value="678">678</option>
<option value="679">679</option>
<option value="680">680</option>
<option value="681">681</option>
<option value="682">682</option>
<option value="683">683</option>
<option value="684">684</option>
<option value="685">685</option>
<option value="686">686</option>
<option value="687">687</option>
<option value="688">688</option>
<option value="689">689</option>
<option value="690">690</option>
<option value="691">691</option>
<option value="692">692</option>
<option value="693">693</option>
<option value="694">694</option>
<option value="695">695</option>
<option value="696">696</option>
<option value="697">697</option>
<option value="698">698</option>
<option value="699">699</option>
<option value="700">700</option>
<option value="701">701</option>
<option value="702">702</option>
<option value="703">703</option>
<option value="704">704</option>
<option value="705">705</option>
<option value="706">706</option>
<option value="707">707</option>
<option value="708">708</option>
<option value="709">709</option>
<option value="710">710</option>
<option value="711">711</option>
<option value="712">712</option>
<option value="713">713</option>
<option value="714">714</option>
<option value="715">715</option>
<option value="716">716</option>
<option value="717">717</option>
<option value="718">718</option>
<option value="719">719</option>
<option value="720">720</option>
<option value="721">721</option>
<option value="722">722</option>
<option value="723">723</option>
<option value="724">724</option>
<option value="725">725</option>
<option value="726">726</option>
<option value="727">727</option>
<option value="728">728</option>
<option value="729">729</option>
<option value="730">730</option>
<option value="731">731</option>
<option value="732">732</option>
<option value="733">733</option>
<option value="734">734</option>
<option value="735">735</option>
<option value="736">736</option>
<option value="737">737</option>
<option value="738">738</option>
<option value="739">739</option>
<option value="740">740</option>
<option value="741">741</option>
<option value="742">742</option>
<option value="743">743</option>
<option value="744">744</option>
<option value="745">745</option>
<option value="746">746</option>
<option value="747">747</option>
<option value="748">748</option>
<option value="749">749</option>
<option value="750">750</option>
<option value="751">751</option>
<option value="752">752</option>
<option value="753">753</option>
<option value="754">754</option>
<option value="755">755</option>
<option value="756">756</option>
<option value="757">757</option>
<option value="758">758</option>
<option value="759">759</option>
<option value="760">760</option>
<option value="761">761</option>
<option value="762">762</option>
<option value="763">763</option>
<option value="764">764</option>
<option value="765">765</option>
<option value="766">766</option>
<option value="767">767</option>
<option value="768">768</option>
<option value="769">769</option>
<option value="770">770</option>
<option value="771">771</option>
<option value="772">772</option>
<option value="773">773</option>
<option value="774">774</option>
<option value="775">775</option>
<option value="776">776</option>
<option value="777">777</option>
<option value="778">778</option>
<option value="779">779</option>
<option value="780">780</option>
<option value="781">781</option>
<option value="782">782</option>
<option value="783">783</option>
<option value="784">784</option>
<option value="785">785</option>
<option value="786">786</option>
<option value="787">787</option>
<option value="788">788</option>
<option value="789">789</option>
<option value="790">790</option>
<option value="791">791</option>
<option value="792">792</option>
<option value="793">793</option>
<option value="794">794</option>
<option value="795">795</option>
<option value="796">796</option>
<option value="797">797</option>
<option value="798">798</option>
<option value="799">799</option>
<option value="800">800</option>
<option value="801">801</option>
<option value="802">802</option>
<option value="803">803</option>
<option value="804">804</option>
<option value="805">805</option>
<option value="806">806</option>
<option value="807">807</option>
<option value="808">808</option>
<option value="809">809</option>
<option value="810">810</option>
<option value="811">811</option>
<option value="812">812</option>
<option value="813">813</option>
<option value="814">814</option>
<option value="815">815</option>
<option value="816">816</option>
<option value="817">817</option>
<option value="818">818</option>
<option value="819">819</option>
<option value="820">820</option>
<option value="821">821</option>
<option value="822">822</option>
<option value="823">823</option>
<option value="824">824</option>
<option value="825">825</option>
<option value="826">826</option>
<option value="827">827</option>
<option value="828">828</option>
<option value="829">829</option>
<option value="830">830</option>
<option value="831">831</option>
<option value="832">832</option>
<option value="833">833</option>
<option value="834">834</option>
<option value="835">835</option>
<option value="836">836</option>
<option value="837">837</option>
<option value="838">838</option>
<option value="839">839</option>
<option value="840">840</option>
<option value="841">841</option>
<option value="842">842</option>
<option value="843">843</option>
<option value="844">844</option>
<option value="845">845</option>
<option value="846">846</option>
<option value="847">847</option>
<option value="848">848</option>
<option value="849">849</option>
<option value="850">850</option>
<option value="851">851</option>
<option value="852">852</option>
<option value="853">853</option>
<option value="854">854</option>
<option value="855">855</option>
<option value="856">856</option>
<option value="857">857</option>
<option value="858">858</option>
<option value="859">859</option>
<option value="860">860</option>
<option value="861">861</option>
<option value="862">862</option>
<option value="863">863</option>
<option value="864">864</option>
<option value="865">865</option>
<option value="866">866</option>
<option value="867">867</option>
<option value="868">868</option>
<option value="869">869</option>
<option value="870">870</option>
<option value="871">871</option>
<option value="872">872</option>
<option value="873">873</option>
<option value="874">874</option>
<option value="875">875</option>
<option value="876">876</option>
<option value="877">877</option>
<option value="878">878</option>
<option value="879">879</option>
<option value="880">880</option>
<option value="881">881</option>
<option value="882">882</option>
<option value="883">883</option>
<option value="884">884</option>
<option value="885">885</option>
<option value="886">886</option>
<option value="887">887</option>
<option value="888">888</option>
<option value="889">889</option>
<option value="890">890</option>
<option value="891">891</option>
<option value="892">892</option>
<option value="893">893</option>
<option value="894">894</option>
<option value="895">895</option>
<option value="896">896</option>
<option value="897">897</option>
<option value="898">898</option>
<option value="899">899</option>
<option value="900">900</option>
<option value="901">901</option>
<option value="902">902</option>
<option value="903">903</option>
<option value="904">904</option>
<option value="905">905</option>
<option value="906">906</option>
<option value="907">907</option>
<option value="908">908</option>
<option value="909">909</option>
<option value="910">910</option>
<option value="911">911</option>
<option value="912">912</option>
<option value="913">913</option>
<option value="914">914</option>
<option value="915">915</option>
<option value="916">916</option>
<option value="917">917</option>
<option value="918">918</option>
<option value="919">919</option>
<option value="920">920</option>
<option value="921">921</option>
<option value="922">922</option>
<option value="923">923</option>
<option value="924">924</option>
<option value="925">925</option>
<option value="926">926</option>
<option value="927">927</option>
<option value="928">928</option>
<option value="929">929</option>
<option value="930">930</option>
<option value="931">931</option>
<option value="932">932</option>
<option value="933">933</option>
<option value="934">934</option>
<option value="935">935</option>
<option value="936">936</option>
<option value="937">937</option>
<option value="938">938</option>
<option value="939">939</option>
<option value="940">940</option>
<option value="941">941</option>
<option value="942">942</option>
<option value="943">943</option>
<option value="944">944</option>
<option value="945">945</option>
<option value="946">946</option>
<option value="947">947</option>
<option value="948">948</option>
<option value="949">949</option>
<option value="950">950</option>
<option value="951">951</option>
<option value="952">952</option>
<option value="953">953</option>
<option value="954">954</option>
<option value="955">955</option>
<option value="956">956</option>
<option value="957">957</option>
<option value="958">958</option>
<option value="959">959</option>
<option value="960">960</option>
<option value="961">961</option>
<option value="962">962</option>
<option value="963">963</option>
<option value="964">964</option>
<option value="965">965</option>
<option value="966">966</option>
<option value="967">967</option>
<option value="968">968</option>
<option value="969">969</option>
<option value="970">970</option>
<option value="971">971</option>
<option value="972">972</option>
<option value="973">973</option>
<option value="974">974</option>
<option value="975">975</option>
<option value="976">976</option>
<option value="977">977</option>
<option value="978">978</option>
<option value="979">979</option>
<option value="980">980</option>
<option value="981">981</option>
<option value="982">982</option>
<option value="983">983</option>
<option value="984">984</option>
<option value="985">985</option>
<option value="986">986</option>
<option value="987">987</option>
<option value="988">988</option>
<option value="989">989</option>
<option value="990">990</option>
<option value="991">991</option>
<option value="992">992</option>
<option value="993">993</option>
<option value="994">994</option>
<option value="995">995</option>
<option value="996">996</option>
<option value="997">997</option>
<option value="998">998</option>
<option value="999">999</option>
</select>
</td>
<td>
......
......@@ -58,6 +58,12 @@
};
this.query = '';
this.searchTimeout = null;
this.asyncFunction = function (callback, timeout, self) {
var args = Array.prototype.slice.call(arguments, 3);
return setTimeout(function () {
callback.apply(self || window, args);
}, timeout);
};
this.options.multiple = this.$select.attr('multiple') == "multiple";
......@@ -72,21 +78,23 @@
}).keydown($.proxy(function (event) {
// This is useful to catch "keydown" events after the browser has updated the control
clearTimeout(this.searchTimeout);
this.searchTimeout = setTimeout($.proxy(function () {
this.searchTimeout = this.asyncFunction($.proxy(function () {
var inputValue = event.target.value;
if (inputValue != this.query) {
this.query = inputValue;
this.$select.empty();
var filteredValues = this.getFilteredOptions();
var newOptions = '';
for (var i = 0; i < filteredValues.length; i++) {
var option = filteredValues[i];
this.$select.append($('<option></option>').attr('value', option.value).text(option.text));
newOptions += '<option value="'+option.value+'">'+option.text+'</option>';
}
console.log(newOptions);
this.$select.html(newOptions);
this.rebuild();
}
}, this), 300);
}, this), 300, this);
}, this));
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment