Namecheap - sort results by regular price

Namecheap - sort results by regular prices

  1. // ==UserScript==
  2. // @name Namecheap - sort results by regular price
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description Namecheap - sort results by regular prices
  6. // @author You
  7. // @match https://www.namecheap.com/domains/registration/results.aspx?domain=*
  8. // @grant GM_registerMenuCommand
  9. // ==/UserScript==
  10.  
  11. function getLiItemPrice(element){
  12. var specialPrice = element.querySelector('.price .domain-dollar-value')
  13. var regPrice = element.querySelector('.reg-price>div')
  14. if(regPrice){
  15. return Number(regPrice.childNodes[7].textContent)
  16. }
  17. else if(specialPrice){
  18. return Number(specialPrice.childNodes[1].textContent)
  19. }
  20. }
  21.  
  22. function sortPrices(){
  23.  
  24. var liItems = Array.from(document.querySelectorAll('.ga-event-ul li'))
  25.  
  26. liItems
  27. .sort((prevElem, nextElem) => getLiItemPrice(prevElem) - getLiItemPrice(nextElem))
  28. .forEach(elem => {
  29. document.querySelector('.ga-event-ul').appendChild(elem)
  30. })
  31.  
  32. }
  33.  
  34. GM_registerMenuCommand("Sort Regular Prices", sortPrices)