<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx"
               xmlns:control="de.dtele.control.*"
               xmlns:data="de.dtele.data.*"
               xmlns:ui="de.dtele.ui.*"
               xmlns:components="de.dtele.ui.components.*"
               xmlns:mxcontrols="mx.controls.*"
               minWidth="955" minHeight="600" creationComplete="onCreationComplete(event)"
               viewSourceURL="srcview/index.html">
  
  <fx:Metadata>
    /** 
     * The main application which starts up the manager and all UI components
     * 
     * @author Mathias Brodala
     */
  </fx:Metadata>
  <fx:Script>
    <![CDATA[
      import de.dtele.messages.MessageManager;
    ]]>
  </fx:Script>

  <fx:Script source="Main.as"/>
  
  <s:Panel
    id="mainPanel"
    title="Medienverwaltung{(MediaManager.instance.selectedSource ? ': ' + MediaManager.instance.selectedSource.properties.title : '')}"
    enabled="{!MediaManager.instance.selectedResource}"
    bottom="10"
    top="10"
    left="10"
    right="10">
    <s:HGroup bottom="10" top="10" right="10" left="10">
      <s:VGroup height="100%">
        <components:SourceInput
          input="onSourceInput(event)"/>
        <components:SourceList
          width="100%"
          height="100%"
          dataProvider="{MediaManager.instance.sources}"
          selectedItem="{MediaManager.instance.selectedSource}"
          sourceSelect="onSourceSelect(event)"
          sourceClose="onSourceClose(event)"/>
      </s:VGroup>
      <components:ResourceList
        width="100%"
        height="100%"
        dataProvider="{MediaManager.instance.selectedSource.resources}"
        resourceSelected="onResourceSelected(event)"/>
    </s:HGroup>
    <s:controlBarLayout>
      <s:HorizontalLayout
        horizontalAlign="right"
        paddingBottom="5"
        paddingRight="10"
        paddingTop="5"/>
    </s:controlBarLayout>
    <s:controlBarContent>
      <components:UploadButton
        height="25"
        enabled="{uploadButtonEnabledDataProvider(MediaManager.instance.selectedSource)}"
        filesSelected="onUploadButtonFilesSelected(event)"/>
    </s:controlBarContent>
  </s:Panel>
  
  <components:MessageList
    width="400"
    top="10"
    depth="1"
    horizontalCenter="0"
    dataProvider="{MessageManager.instance.messages}"/>
  
  <components:CredentialsPrompt
    id="credentialsPrompt"
    horizontalCenter="0"
    top="10"
    depth="2"/>
  
  <components:ResourceViewer
    id="resourceViewer"
    horizontalCenter="0"
    verticalCenter="0"
    depth="1"
    dataProvider="{MediaManager.instance.selectedSource.resources}"
    selectedResource="{MediaManager.instance.selectedResource}"
    visible="{!!MediaManager.instance.selectedResource}"/>
  
</s:Application>