Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 
 
 

71 wiersze
1.7 KiB

  1. wn.provide('wn.utils');
  2. wn.utils = {
  3. get_file_link: function(filename) {
  4. return wn.utils.is_url(filename) || (filename.indexOf("images/")!=-1) || (filename.indexOf("files/")!=-1)
  5. ? filename : 'files/' + filename;
  6. },
  7. is_url: function(txt) {
  8. return txt.toLowerCase().substr(0,7)=='http://'
  9. || txt.toLowerCase().substr(0,8)=='https://'
  10. },
  11. filter_dict: function(dict, filters) {
  12. var ret = [];
  13. if(typeof filters=='string') {
  14. return [dict[filters]]
  15. }
  16. $.each(dict, function(i, d) {
  17. for(key in filters) {
  18. if(d[key]!=filters[key]) return;
  19. }
  20. ret.push(d);
  21. });
  22. return ret;
  23. },
  24. comma_or: function(list) {
  25. return wn.utils.comma_sep(list, " or ");
  26. },
  27. comma_and: function(list) {
  28. return wn.utils.comma_sep(list, " and ");
  29. },
  30. comma_sep: function(list, sep) {
  31. if(list instanceof Array) {
  32. if(list.length==0) {
  33. return "";
  34. } else if (list.length==1) {
  35. return list[0];
  36. } else {
  37. return list.slice(0, list.length-1).join(", ") + sep + list.slice(-1)[0];
  38. }
  39. } else {
  40. return list;
  41. }
  42. },
  43. set_intro: function(me, wrapper, txt) {
  44. if(!me.intro_area) {
  45. me.intro_area = $('<div class="alert form-intro-area" style="margin-top: 20px;">')
  46. .insertBefore(wrapper.firstChild);
  47. }
  48. if(txt) {
  49. if(txt.search(/<p>/)==-1) txt = '<p>' + txt + '</p>';
  50. me.intro_area.html(txt);
  51. } else {
  52. me.intro_area.remove();
  53. me.intro_area = null;
  54. }
  55. },
  56. set_footnote: function(me, wrapper, txt) {
  57. if(!me.footnote_area) {
  58. me.footnote_area = $('<div class="alert form-intro-area" style="margin-top: 20px;">')
  59. .insertAfter(wrapper.lastChild);
  60. }
  61. if(txt) {
  62. if(txt.search(/<p>/)==-1) txt = '<p>' + txt + '</p>';
  63. me.footnote_area.html(txt);
  64. } else {
  65. me.footnote_area.remove();
  66. me.footnote_area = null;
  67. }
  68. },
  69. }