4a19fefaee
Change-Id: I17bab541e4efb6cff0818ee0fad48800d7ff73be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167708 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
63 lines
2 KiB
C++
63 lines
2 KiB
C++
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/*
|
|
* This file is part of the LibreOffice project.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
#include "authfallbackdlg.hxx"
|
|
|
|
AuthFallbackDlg::AuthFallbackDlg(weld::Window* pParent, const OUString& instructions,
|
|
const OUString& url)
|
|
: GenericDialogController(pParent, u"uui/ui/authfallback.ui"_ustr, u"AuthFallbackDlg"_ustr)
|
|
, m_bGoogleMode(false)
|
|
, m_xTVInstructions(m_xBuilder->weld_label(u"instructions"_ustr))
|
|
, m_xEDUrl(m_xBuilder->weld_entry(u"url"_ustr))
|
|
, m_xEDCode(m_xBuilder->weld_entry(u"code"_ustr))
|
|
, m_xEDGoogleCode(m_xBuilder->weld_entry(u"google_code"_ustr))
|
|
, m_xBTOk(m_xBuilder->weld_button(u"ok"_ustr))
|
|
, m_xBTCancel(m_xBuilder->weld_button(u"cancel"_ustr))
|
|
, m_xGoogleBox(m_xBuilder->weld_widget(u"GDrive"_ustr))
|
|
, m_xOneDriveBox(m_xBuilder->weld_widget(u"OneDrive"_ustr))
|
|
{
|
|
m_xBTOk->connect_clicked(LINK(this, AuthFallbackDlg, OKHdl));
|
|
m_xBTCancel->connect_clicked(LINK(this, AuthFallbackDlg, CancelHdl));
|
|
m_xBTOk->set_sensitive(true);
|
|
|
|
m_xTVInstructions->set_label(instructions);
|
|
if (url.isEmpty())
|
|
{
|
|
// Google 2FA
|
|
m_bGoogleMode = true;
|
|
m_xGoogleBox->show();
|
|
m_xOneDriveBox->hide();
|
|
m_xEDUrl->hide();
|
|
}
|
|
else
|
|
{
|
|
// OneDrive
|
|
m_bGoogleMode = false;
|
|
m_xGoogleBox->hide();
|
|
m_xOneDriveBox->show();
|
|
m_xEDUrl->set_text(url);
|
|
}
|
|
}
|
|
|
|
AuthFallbackDlg::~AuthFallbackDlg() {}
|
|
|
|
OUString AuthFallbackDlg::GetCode() const
|
|
{
|
|
if (m_bGoogleMode)
|
|
return m_xEDGoogleCode->get_text();
|
|
else
|
|
return m_xEDCode->get_text();
|
|
}
|
|
|
|
IMPL_LINK_NOARG(AuthFallbackDlg, OKHdl, weld::Button&, void) { m_xDialog->response(RET_OK); }
|
|
|
|
IMPL_LINK_NOARG(AuthFallbackDlg, CancelHdl, weld::Button&, void)
|
|
{
|
|
m_xDialog->response(RET_CANCEL);
|
|
}
|