5Outils

Outils complémentaires pour les vendeurs du site 5euros.com. Ce plugin est gratuit :-)

目前为 2017-12-14 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name 5Outils
  3. // @namespace http://tampermonkey.net/
  4. // @version 2.1.1
  5. // @description Outils complémentaires pour les vendeurs du site 5euros.com. Ce plugin est gratuit :-)
  6. // @author Thomas21
  7. // @match https://5euros.com/dashboard/commande/*
  8. // @match https://5euros.com/dashboard/thread/*
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12. (function() {
  13. 'use strict';
  14. var APIKEY = "VotreCleIci"; // Entrez votre clé API ici, entre les guillemets
  15.  
  16. var PageTargetBlock = $('.trackingControl-Timeline');
  17. var inputTarget = $('textarea#tracking_typing_text');
  18.  
  19. if (window.location.href.indexOf("thread") > -1) {
  20. PageTargetBlock = $('.messageSubmit');
  21. inputTarget = $('textarea#message_body');
  22. }
  23.  
  24.  
  25. $(document).ready(function(){
  26.  
  27. // Chargement des données
  28. loadDynamicButtons();
  29.  
  30. });
  31.  
  32. $('body').on('click', '.dynamicButton', function(){
  33. sendMessageWithDynamicButtons($(this).attr('data-dynamicbuttonid'));
  34. $('.dynamicButton').css({'background-color' : '#EFEFF3', 'color' : '#54545E'});
  35. $(this).css({'background-color' : '#53545e', 'color' : '#f7f7f7'});
  36. });
  37. $('body').on('click', '#restartAjax', function(){
  38. $('#restartAjax').parent().hide();
  39. loadDynamicButtons();
  40. });
  41.  
  42. // FONCTIONS //
  43.  
  44. function loadDynamicButtons(){
  45. $.ajax({
  46. url: 'https://5outils.social-provider.com/messages/'+APIKEY+'/ajax',
  47. type: 'GET',
  48. dataType: 'json',
  49. error: function(retour) {
  50. erreurAjaxDynamicButtons('Impossible de joindre le serveur Social Provider.');
  51. },
  52. success: function(retour) {
  53. console.log(retour);
  54. if(retour.infos != undefined){
  55. PageTargetBlock.prepend('<div class="alert alert-info">'+retour.infos+'</div>');
  56. }
  57. if(retour.status){
  58. generateDynamicButtons(retour.content);
  59. }
  60. else {
  61. erreurAjaxDynamicButtons(retour.content);
  62. }
  63. },
  64. });
  65. }
  66. function erreurAjaxDynamicButtons(messageErreur){
  67. PageTargetBlock.prepend('<div class="alert-danger"><b>Impossible de charger les boutons dynamiques :</b> '+messageErreur+' <button id="restartAjax" class="btn btn-small btn-default">Recommencer</button></div>');
  68. }
  69.  
  70. function generateDynamicButtons(json){
  71. var outilsBtnBar = '<div id="customButtonThomas21" class="trackingControl-Buttons">';
  72. outilsBtnBar += '<h3>Raccourcis <a href="https://5outils.social-provider.com/messages" target="_blank"><button class="btn-reset btn-green btn-small btn-carret pull-right" style="color: white;">Gérer les boutons</button></a></h3>';
  73. $.each(json, function(key, bouton) {
  74. outilsBtnBar += '<button data-dynamicbuttonid="'+key+'" class="dynamicButton btn btn-greyLight">'+bouton.name+'</button>';
  75. outilsBtnBar += '<div style="display: none;"" id="DynamicButton'+key+'">'+bouton.content+'</div>';
  76. });
  77. outilsBtnBar += '</div><br><br>';
  78.  
  79. PageTargetBlock.prepend(outilsBtnBar);
  80. }
  81.  
  82. function sendMessageWithDynamicButtons(buttonID){
  83. var textePrefait = $('#DynamicButton'+buttonID).text();
  84. inputTarget.val(textePrefait);
  85. autosize.update(inputTarget);
  86. }
  87.  
  88. })();