handle disabling summarize options button
This commit is contained in:
parent
d601121852
commit
51c81418a3
3 changed files with 43 additions and 2 deletions
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const special_prompts_with_integration = ['add_tags', 'spamfilter'];
|
const special_prompts_with_integration = ['add_tags', 'spamfilter', 'summarize'];
|
||||||
|
|
||||||
export const integration_options_config = {
|
export const integration_options_config = {
|
||||||
chatgpt: {
|
chatgpt: {
|
||||||
|
|
|
||||||
|
|
@ -154,7 +154,7 @@
|
||||||
<label>
|
<label>
|
||||||
<input type="checkbox" id="summarize" name="summarize" class="option-input" />
|
<input type="checkbox" id="summarize" name="summarize" class="option-input" />
|
||||||
__MSG_prefs_OptionText_summarize_Info__
|
__MSG_prefs_OptionText_summarize_Info__
|
||||||
<br><span class="warn_API_needed" id="add_summarize_warn_API_needed">__MSG_warn_API_needed__</span>
|
<br><span class="warn_API_needed" id="summarize_warn_API_needed">__MSG_warn_API_needed__</span>
|
||||||
</label>
|
</label>
|
||||||
</td>
|
</td>
|
||||||
</tr>"
|
</tr>"
|
||||||
|
|
|
||||||
|
|
@ -167,6 +167,27 @@ function disable_SpamFilter(prefs_opt){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function disable_Summarize(prefs_opt){
|
||||||
|
let summarize = document.getElementById('summarize');
|
||||||
|
let conntype_select = document.getElementById("connection_type");
|
||||||
|
const tempPrefs = {
|
||||||
|
connection_type: conntype_select.value,
|
||||||
|
...prefs_opt
|
||||||
|
};
|
||||||
|
let summarize_disabled = (getConnectionType(tempPrefs, null, 'summarize') === "chatgpt_web");
|
||||||
|
let summarize_checked_original = summarize.checked;
|
||||||
|
summarize.checked = summarize_disabled ? false : summarize.checked;
|
||||||
|
if(!summarize.checked){
|
||||||
|
let summarize_info_btn = document.getElementById('btnManageSummarizeInfo');
|
||||||
|
summarize_info_btn.disabled = 'disabled';
|
||||||
|
}
|
||||||
|
let summarize_warn_API_needed = document.getElementById('summarize_warn_API_needed');
|
||||||
|
summarize_warn_API_needed.style.display = (summarize_disabled) ? 'inline-block' : 'none';
|
||||||
|
if(summarize_checked_original != summarize.checked){
|
||||||
|
browser.storage.sync.set({summarize: summarize.checked});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async function disable_GetCalendarEvent(){
|
async function disable_GetCalendarEvent(){
|
||||||
let get_calendar_event = document.getElementById('get_calendar_event');
|
let get_calendar_event = document.getElementById('get_calendar_event');
|
||||||
let get_task = document.getElementById('get_task');
|
let get_task = document.getElementById('get_task');
|
||||||
|
|
@ -262,6 +283,24 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||||
});
|
});
|
||||||
spamfilter_info_btn.disabled = spamfilter_el.checked ? '' : 'disabled';
|
spamfilter_info_btn.disabled = spamfilter_el.checked ? '' : 'disabled';
|
||||||
|
|
||||||
|
let summarize_el = document.getElementById('summarize');
|
||||||
|
let summarize_info_btn = document.getElementById('btnManageSummarizeInfo');
|
||||||
|
summarize_el.addEventListener('click', (event) => {
|
||||||
|
async function _summarize_el_change() {
|
||||||
|
if (event.target.checked) {
|
||||||
|
let granted = await messenger.permissions.request({ permissions: ["messagesRead"] });
|
||||||
|
if (!granted) {
|
||||||
|
event.target.checked = false;
|
||||||
|
summarize_info_btn.disabled = 'disabled';
|
||||||
|
browser.storage.sync.set({summarize: false});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_summarize_el_change();
|
||||||
|
summarize_info_btn.disabled = event.target.checked ? '' : 'disabled';
|
||||||
|
});
|
||||||
|
summarize_info_btn.disabled = summarize_el.checked ? '' : 'disabled';
|
||||||
|
|
||||||
let get_calendar_event_el = document.getElementById('get_calendar_event');
|
let get_calendar_event_el = document.getElementById('get_calendar_event');
|
||||||
let get_calendar_event_info_btn = document.getElementById('btnManageCalendarEventInfo');
|
let get_calendar_event_info_btn = document.getElementById('btnManageCalendarEventInfo');
|
||||||
get_calendar_event_el.addEventListener('click', (event) => {
|
get_calendar_event_el.addEventListener('click', (event) => {
|
||||||
|
|
@ -321,12 +360,14 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||||
conntype_select.addEventListener("change", disable_MaxPromptLength);
|
conntype_select.addEventListener("change", disable_MaxPromptLength);
|
||||||
conntype_select.addEventListener("change", () => disable_AddTags(prefs_opt));
|
conntype_select.addEventListener("change", () => disable_AddTags(prefs_opt));
|
||||||
conntype_select.addEventListener("change", () => disable_SpamFilter(prefs_opt));
|
conntype_select.addEventListener("change", () => disable_SpamFilter(prefs_opt));
|
||||||
|
conntype_select.addEventListener("change", () => disable_Summarize(prefs_opt));
|
||||||
conntype_select.addEventListener("change", disable_GetCalendarEvent);
|
conntype_select.addEventListener("change", disable_GetCalendarEvent);
|
||||||
|
|
||||||
showConnectionOptions(conntype_select);
|
showConnectionOptions(conntype_select);
|
||||||
disable_MaxPromptLength();
|
disable_MaxPromptLength();
|
||||||
disable_AddTags(prefs_opt);
|
disable_AddTags(prefs_opt);
|
||||||
disable_SpamFilter(prefs_opt);
|
disable_SpamFilter(prefs_opt);
|
||||||
|
disable_Summarize(prefs_opt);
|
||||||
disable_GetCalendarEvent();
|
disable_GetCalendarEvent();
|
||||||
|
|
||||||
document.getElementById('reset_max_prompt_length').addEventListener('click', resetMaxPromptLength);
|
document.getElementById('reset_max_prompt_length').addEventListener('click', resetMaxPromptLength);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue