diff --git a/code/css/popup.css b/code/css/popup.css index 8ceed5c..fd86e57 100644 --- a/code/css/popup.css +++ b/code/css/popup.css @@ -84,6 +84,16 @@ min-width: 120px; color: darkblue; } +.fa2 { + font-size: 10px; + cursor: pointer; + user-select: none; +} + +.fa2:hover { + color: darkblue; +} + .checked { color: orange; } @@ -142,7 +152,7 @@ div#popup { top:17%; margin-left:-402px; } - +/* form { max-width:800px; min-width:400px; @@ -151,7 +161,7 @@ form { border-radius:10px; background-color:#fff } - +*/ h2 { background-color:#fcee45; padding:20px 35px; @@ -181,6 +191,72 @@ hr { color: #077bff; } +.listLang { + + display: inline-block; + width: 33%; +} + +.switch { + position: relative; + display: inline-block; + width: 45px; + height: 25px; +} + +.switch input {display:none;} + +.slider { + position: absolute; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: #ccc; + -webkit-transition: .4s; + transition: .4s; +} + +.slider:before { + position: absolute; + content: ""; + height: 18px; + width: 18px; + left: 4px; + bottom: 4px; + background-color: white; + -webkit-transition: .3s; + transition: .3s; +} + +input:checked + .slider { + background-color: #2196F3; +} + +input:focus + .slider { + box-shadow: 0 0 1px #2196F3; +} + +input:checked + .slider:before { + -webkit-transform: translateX(18px); + -ms-transform: translateX(18px); + transform: translateX(18px); +} + +/* Rounded sliders */ +.slider.round { + border-radius: 34px; +} + +.slider.round:before { + border-radius: 50%; +} + +.greencolor { + color: #000000; +} + ul.share-buttons{ list-style: none; padding: 0; diff --git a/code/extensions/extensions.txt b/code/extensions/extensions.txt new file mode 100644 index 0000000..0d33ea7 --- /dev/null +++ b/code/extensions/extensions.txt @@ -0,0 +1,50 @@ +.cpp (366) +.md (312) +.py (206) +.java (211) +.c (190) +.go (103) +.js (102) +.swift (62) +.rb (58) +.cs (49) +.php (43) +.rs (43) +.hs (37) +.scala (26) +.m (25) +.sh (15) +.h (10) +.kt (10) +.ex (7) +.erl (6) +.ts (5) +.ml (4) +.clj (4) +.jl (4) +.fs (3) +.txt (3) +.lua (3) +.csv (2) +.sml (2) +.elm (2) +.exs (2) +.pl (2) +.vb (1) +.gitignore (1) +.rkt (1) +.nim (1) +.sc (1) +.purs (1) +.f (1) +.htm (1) +.bf (1) +.png (1) +.data (1) +.html (1) +.in (1) +.pde (1) +.ruby (1) +.hpp (1) +.ipynb (1) +.textClipping (1) \ No newline at end of file diff --git a/code/js/popup.js b/code/js/popup.js index bb55755..3ff6fc5 100644 --- a/code/js/popup.js +++ b/code/js/popup.js @@ -12,6 +12,7 @@ var tags = ['sort','search','math','string','crypto','data structures','graph',' var favs = []; var filenames = []; var bricklayer ; +var defaultLanguages = []; function AddNewTags (tagName) { @@ -53,7 +54,6 @@ function updateFavs(x, filename) { f1.area = area; favs.push(f1); } else { - // var index = favs.indexOf(filename); if (index > -1) { favs.splice(index, 1); } @@ -92,6 +92,7 @@ $(function() { }); var current_fname; +var langSet; function dumpBookmarks(query) { $('#search').val(query); @@ -145,7 +146,7 @@ function dumpBookmarks(query) temp = temp.replace(/[-\/\\^$*+?.()|[\]{}]/g,''); temp = temp.replace(/_/g, ''); - if(obj[key].length ==1 && ((String(obj[key]).toLowerCase()).indexOf("README.md".toLowerCase()) != -1)) + if(obj[key].length == 1 && ((String(obj[key]).toLowerCase()).indexOf("README.md".toLowerCase()) != -1)) continue; else { @@ -155,6 +156,16 @@ function dumpBookmarks(query) favs = items.favs; } }); + chrome.storage.sync.get("setLang", function(items) { + if (!chrome.runtime.error) { + langSet = items["setLang"]; + } + }); + chrome.storage.sync.get({defaultLanguages: []}, function(items) { + if (!chrome.runtime.error) { + defaultLanguages = items.defaultLanguages; + } + }); } let sub_result_number = 1; @@ -163,40 +174,104 @@ function dumpBookmarks(query) for (var dd in obj[key]) { var fname= key+"/"+obj[key][dd]; - temp2 = fname; temp2 = temp2.replace(/[-\/\\^$*+?.()|[\]{}]/g,''); temp2 = temp2.replace(/_/g, ''); - if(((String(obj[key][dd]).toLowerCase()).indexOf("README.md".toLowerCase()) != -1)){} - - else - { + ext = '.'+(fname.split('.'))[1]; - let found_in_Favs = false; - for(let i in favs ) { - if (favs[i].filename == fname) { - found_in_Favs = true; - break; - } - } - - if(found_in_Favs==false) { - inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; - } else { - inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; - } - sub_result_number++; + if (langSet == 0 || defaultLanguages.length == 0) { + if(((String(obj[key][dd]).toLowerCase()).indexOf("README.md".toLowerCase()) != -1)){} + + else + { + + let found_in_Favs = false; + for(let i in favs ) { + if (favs[i].filename == fname) { + found_in_Favs = true; + break; + } + } + + if(found_in_Favs==false) { + inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; + } else { + inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; + } + sub_result_number++; + } + var send = '#myStar'+temp2; + $(document).on("click", send , function() { + var filename_pos = '#myStar'+this.id.substr(6, this.id.length); + updateFavs(this, filenames[filename_pos]); + }); + } else if(defaultLanguages.indexOf(ext) != -1) { + if(((String(obj[key][dd]).toLowerCase()).indexOf("README.md".toLowerCase()) != -1)){} + + else + { + + let found_in_Favs = false; + for(let i in favs ) { + if (favs[i].filename == fname) { + found_in_Favs = true; + break; + } + } + + if(found_in_Favs==false) { + inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; + } else { + inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; + } + sub_result_number++; + } + var send = '#myStar'+temp2; + $(document).on("click", send , function() { + var filename_pos = '#myStar'+this.id.substr(6, this.id.length); + updateFavs(this, filenames[filename_pos]); + }); } - var send = '#myStar'+temp2; - $(document).on("click", send , function() { - var filename_pos = '#myStar'+this.id.substr(6, this.id.length); - updateFavs(this, filenames[filename_pos]); - }); - } + if(inside_text == "") { + for (var dd in obj[key]) + { + var fname= key+"/"+obj[key][dd]; + temp2 = fname; + temp2 = temp2.replace(/[-\/\\^$*+?.()|[\]{}]/g,''); + temp2 = temp2.replace(/_/g, ''); + + if(((String(obj[key][dd]).toLowerCase()).indexOf("README.md".toLowerCase()) != -1)){} + + else + { + + let found_in_Favs = false; + for(let i in favs ) { + if (favs[i].filename == fname) { + found_in_Favs = true; + break; + } + } + + if(found_in_Favs==false) { + inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; + } else { + inside_text = inside_text + ""+sub_result_number+". "+obj[key][dd]+""+"  
"; + } + sub_result_number++; + } + var send = '#myStar'+temp2; + $(document).on("click", send , function() { + var filename_pos = '#myStar'+this.id.substr(6, this.id.length); + updateFavs(this, filenames[filename_pos]); + }); + } + } + //Individual Cards var card = document.createElement('div'); @@ -469,6 +544,331 @@ document.addEventListener('DOMContentLoaded', function () }); }); + var extensions = ""; + var myFile = new XMLHttpRequest() + myFile.open("GET", "extensions/extensions.txt", false); + myFile.onreadystatechange = function () + { + if(myFile.readyState === 4) + { + if(myFile.status === 200 || myFile.status == 0) + { + extensions = myFile.responseText; + } + } + } + myFile.send(null); + extensions = extensions.split('\n'); + + var modal = ''; + + modal_footer="" + var end_divs = ''; + + $('#language_modal').append(modal+modal_content+modal_body+modal_footer+end_divs); + + } + + if(items.length==0 || items["setLang"]==0) { + list = document.getElementsByClassName("fa2 fa-check"); + for (var i=0; i