/* Copyright (C) 2014-2016 Dan Chapman <dpniel@ubuntu.com>

   This file is part of Dekko email client for Ubuntu Devices/

   This program is free software; you can redistribute it and/or
   modify it under the terms of the GNU General Public License as
   published by the Free Software Foundation; either version 2 of
   the License or (at your option) version 3

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
import QtQuick 2.4
import Ubuntu.Components 1.3
import Ubuntu.Components.Popups 1.1
import Dekko.Theme 0.2
import Dekko.Utils 0.2

ActionSelectionPopover {
    id: actionPopover
    z: 100
    property string mboxName
    property bool subscribed

    MailboxUtils {
        id: mboxUtils
        account: dekko.currentAccount
    }

    delegate: ListItem {
        height: layout.height
        ListItemLayout {
            id: layout
            title.text: action.text
            title.color: Style.common.text
            title.font.weight: Style.common.fontWeight
        }
        onClicked: PopupUtils.close(actionPopover)
    }
    actions: ActionList {
        Action {
            id: expungeMbox
            text: qsTr("Expunge mailbox")
            onTriggered: {
                mboxUtils.expungeMailboxByName(mboxName)
            }
        }
        Action {
            id: markMboxRead
            text: qsTr("Mark mailbox read")
            onTriggered: {
                mboxUtils.markMailboxAsRead(mboxName)
            }
        }
        Action {
            id: subscribeMbox
            text: subscribed ? qsTr("Unsubscribe") : qsTr("Subscribe")
            onTriggered: {
                subscribed ? dekko.currentAccount.imapModel.unsubscribeMailbox(mboxName) : dekko.currentAccount.imapModel.subscribeMailbox(mboxName)
            }
        }
    }

    InverseMouseArea {
        anchors.fill: parent
        acceptedButtons: Qt.LeftButton
        onPressed: PopupUtils.close(actionPopover)
    }
}
