Changed search layout for hyperlinks
This commit is contained in:
parent
705bd684fb
commit
def6a30a2e
@ -17,6 +17,11 @@ input[type="text"].display, input[type="text"].display:active, input[type="text"
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
select {
|
||||
text-align: left !important;
|
||||
}
|
||||
|
||||
|
||||
.cursor-default {
|
||||
cursor: default;
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
75
popup.html
75
popup.html
@ -31,63 +31,58 @@
|
||||
<div class="container-fluid">
|
||||
<div class="pt-2 pb-2 mb-2 border-bottom">
|
||||
<div class="row mb-2">
|
||||
<label for="textBox1" class="col-sm-3 col-form-label fw-bold">Search Term</label>
|
||||
<div class="col-sm-7">
|
||||
<label for="textBox1" class="col-sm-2 col-form-label fw-bold">Search</label>
|
||||
<div class="col-sm-10">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" class="form-control" placeholder="Keyword" role="textbox" id="textBox1" />
|
||||
<input type="text" class="form-control" role="textbox" id="textBox1" />
|
||||
|
||||
<select class="form-select pe-0 input-group-text" name="comboBox1">
|
||||
<option value="anchor">Anchor</option>
|
||||
<option value="link" selected>Link</option>
|
||||
</select>
|
||||
|
||||
<button type="button" class="btn btn-secondary input-group-text">✕</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3 cursor-default fw-bold">Search Field</div>
|
||||
<div class="col-sm-7">
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="radioGroup1" id="radioBox1" value="anchor">
|
||||
<label class="form-check-label" for="radioBox1">Anchor Text</label>
|
||||
</div>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="radioGroup1" id="radioBox2" value="link" checked>
|
||||
<label class="form-check-label" for="radioBox2">Link Address</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3 cursor-default fw-bold">Display Type</div>
|
||||
<div class="col-sm-7">
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="radioGroup2" id="radioBox3" value="table" checked>
|
||||
<label class="form-check-label" for="radioBox3">Table</label>
|
||||
</div>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="radioGroup2" id="radioBox4" value="csv">
|
||||
<label class="form-check-label" for="radioBox4">CSV</label>
|
||||
</div>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="radioGroup2" id="radioBox5" value="links">
|
||||
<label class="form-check-label" for="radioBox5">Links</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-2 mb-2">
|
||||
<div class="col-sm-3"></div>
|
||||
<div class="col-sm-7">
|
||||
<button type="button" class="btn btn-primary btn-sm">Load Results</button>
|
||||
<span class="ps-1" role="label"></span>
|
||||
<div class="col-2"></div>
|
||||
<div class="col-5">
|
||||
<div class="input-group input-group-sm">
|
||||
<button class="btn btn-primary" type="button">Load Results</button>
|
||||
<select class="form-select" name="comboBox2">
|
||||
<option value="table" selected>Table</option>
|
||||
<option value="csv">CSV</option>
|
||||
<option value="links">Links</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-5 px-0">
|
||||
<div class="pt-2" role="label"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="fw-bold clearfix cursor-pointer" data-bs-toggle="collapse" data-bs-target="#collapsPanel1" aria-expanded="false" aria-controls="collapsPanel1">⯈ Options</div>
|
||||
<div class="row pt-2 pb-2 mb-2 border-bottom collapse" role="options" id="collapsPanel1"></div>
|
||||
<div class="row pb-2 mb-2 border-bottom collapse" id="collapsPanel1">
|
||||
<div class="col-sm-2"></div>
|
||||
<div class="col-sm-10">
|
||||
<div class="row px-0" role="options"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="fw-bold clearfix cursor-pointer" data-bs-toggle="collapse" data-bs-target="#collapsPanel2" aria-expanded="false" aria-controls="collapsPanel2">⯈ Filters</div>
|
||||
<div class="row pt-2 collapse" role="filters" id="collapsPanel2"></div>
|
||||
<div class="row collapse" id="collapsPanel2">
|
||||
<div class="col-sm-2"></div>
|
||||
<div class="col-sm-10">
|
||||
<div class="row px-0" role="filters"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row pb-2 mb-2 border-bottom"></div>
|
||||
|
||||
<div class="row pt-2 mb-2">
|
||||
<div class="col">
|
||||
<div class="col px-0">
|
||||
|
||||
<table class="table table-bordered table-hover table-sm table-striped">
|
||||
<thead></thead>
|
||||
|
@ -52,9 +52,7 @@ class AContentService extends ContentService {
|
||||
col2 += a.GenerateCheckBox(3, "Sort By Anchor Text", true);
|
||||
col2 += a.GenerateCheckBox(2, "Trim Anchor Text", true);
|
||||
|
||||
let col3 = "";
|
||||
|
||||
let html = a.GenerateCols(col1, col2, col3);
|
||||
let html = a.GenerateCols(col1, col2);
|
||||
|
||||
a.SetHtml(a.Panel1, html);
|
||||
}
|
||||
@ -67,20 +65,18 @@ class AContentService extends ContentService {
|
||||
col1 += a.GenerateCheckBox(5, "Hide Duplicates", true);
|
||||
col1 += a.GenerateCheckBox(14, "Hide Blank Anchors", true);
|
||||
col1 += a.GenerateCheckBox(15, "Hide Blank Links", true);
|
||||
col1 += a.GenerateCheckBox(11, "Hide Fragments", true);
|
||||
col1 += a.GenerateCheckBox(13, "Hide Mailto/Tel", true);
|
||||
col1 += a.GenerateCheckBox(16, "Hide Javascript", true);
|
||||
|
||||
let col2 = "";
|
||||
col2 += a.GenerateCheckBox(11, "Hide Fragments", true);
|
||||
col2 += a.GenerateCheckBox(13, "Hide Mailto/Tel", true);
|
||||
col2 += a.GenerateCheckBox(16, "Hide Javascript", true);
|
||||
col2 += a.GenerateCheckBox(6, "Show Title", true);
|
||||
col2 += a.GenerateCheckBox(7, "Show Target", false);
|
||||
col2 += a.GenerateCheckBox(8, "Show Rel", false);
|
||||
col2 += a.GenerateCheckBox(9, "Show Type", false);
|
||||
col2 += a.GenerateCheckBox(10, "Show Count", false);
|
||||
|
||||
let col3 = "";
|
||||
col3 += a.GenerateCheckBox(6, "Show Title", true);
|
||||
col3 += a.GenerateCheckBox(7, "Show Target", false);
|
||||
col3 += a.GenerateCheckBox(8, "Show Rel", false);
|
||||
col3 += a.GenerateCheckBox(9, "Show Type", false);
|
||||
col3 += a.GenerateCheckBox(10, "Show Count", false);
|
||||
|
||||
let html = a.GenerateCols(col1, col2, col3);
|
||||
let html = a.GenerateCols(col1, col2);
|
||||
|
||||
a.SetHtml(a.Panel2, html);
|
||||
}
|
||||
@ -123,7 +119,7 @@ class AContentService extends ContentService {
|
||||
return null;
|
||||
}
|
||||
|
||||
return a.Container.querySelectorAll("span[role='label']")[0];
|
||||
return a.Container.querySelectorAll("[role='label']")[0];
|
||||
}
|
||||
|
||||
get MemoBox1() {
|
||||
@ -206,7 +202,7 @@ class AContentService extends ContentService {
|
||||
a.Label1.innerText = "Showing " + newResults.length + " of " + totalCount + " result" + (totalCount == 1 ? "" : "s");
|
||||
}
|
||||
|
||||
switch (a.#getRadioGroup(2)) {
|
||||
switch (a.#getComboBox(2)) {
|
||||
case "table":
|
||||
a.#renderTable(newResults);
|
||||
break;
|
||||
@ -226,8 +222,6 @@ class AContentService extends ContentService {
|
||||
const currentUrl = await a.#popupService.GetLocation();
|
||||
const currentHostname = (new URL(currentUrl)).hostname;
|
||||
|
||||
const radioGroup1 = a.#getRadioGroup(1);
|
||||
|
||||
let result = [];
|
||||
|
||||
for (let i=0; i<items.length; i++) {
|
||||
@ -290,7 +284,7 @@ class AContentService extends ContentService {
|
||||
|
||||
// Search term
|
||||
if (!String.isNullOrWhitespace(a.TextBox1.value)) {
|
||||
if (radioGroup1.value == "anchor") {
|
||||
if (a.#getComboBox(1) == "anchor") {
|
||||
if (!text.toLowerCase().includes(a.TextBox1.value.toLowerCase())) {
|
||||
continue;
|
||||
}
|
||||
@ -379,6 +373,21 @@ class AContentService extends ContentService {
|
||||
return result[0].checked;
|
||||
}
|
||||
|
||||
#getComboBox(num) {
|
||||
const a = this;
|
||||
|
||||
if (a.Container == null) {
|
||||
return "";
|
||||
}
|
||||
|
||||
const result = a.Container.querySelectorAll("select[name='comboBox" + num + "']");
|
||||
if (result.length <= 0) {
|
||||
return "";
|
||||
}
|
||||
|
||||
return result[0].value;
|
||||
}
|
||||
|
||||
#getRadioGroup(num) {
|
||||
const a = this;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user