diff --git a/UI/WebServerResources/css/styles.css b/UI/WebServerResources/css/styles.css index 0634e924b..a6fc4f57d 100644 --- a/UI/WebServerResources/css/styles.css +++ b/UI/WebServerResources/css/styles.css @@ -6120,15 +6120,14 @@ md-autocomplete { /*! _extends.scss - */ md-backdrop { - z-index: 50; - opacity: 1; - -webkit-transition: background-color 450ms cubic-bezier(0.55, 0, 0.55, 0.2); - transition: background-color 450ms cubic-bezier(0.55, 0, 0.55, 0.2); + -webkit-transition: opacity 450ms; + transition: opacity 450ms; position: absolute; top: 0; bottom: 0; left: 0; - right: 0; } + right: 0; + z-index: 50; } md-backdrop.md-menu-backdrop { position: fixed !important; z-index: 98; } @@ -6144,9 +6143,18 @@ md-backdrop { z-index: 59; } md-backdrop.md-click-catcher { position: absolute; } - md-backdrop.md-opaque.ng-leave { - -webkit-transition: background-color 400ms linear; - transition: background-color 400ms linear; } + md-backdrop.md-opaque { + opacity: .48; } + md-backdrop.md-opaque.ng-enter { + opacity: 0; } + md-backdrop.md-opaque.ng-enter.md-opaque.ng-enter-active { + opacity: .48; } + md-backdrop.md-opaque.ng-leave { + opacity: .48; + -webkit-transition: opacity 400ms; + transition: opacity 400ms; } + md-backdrop.md-opaque.ng-leave.md-opaque.ng-leave-active { + opacity: 0; } md-backdrop { z-index: 50; @@ -8591,39 +8599,42 @@ md-toolbar .md-menu { transform: rotate(1080deg); } } md-progress-circular { - width: 50px; - height: 50px; + width: 100px; + height: 100px; display: block; position: relative; padding-top: 0 !important; margin-bottom: 0 !important; - overflow: hidden; } + overflow: hidden; + -webkit-transform: scale(0.5); + -ms-transform: scale(0.5); + transform: scale(0.5); } md-progress-circular .md-inner { - width: 50px; - height: 50px; + width: 100px; + height: 100px; position: relative; } md-progress-circular .md-inner .md-gap { position: absolute; - left: 24px; - right: 24px; + left: 49px; + right: 49px; top: 0; bottom: 0; - border-top-width: 5px; + border-top-width: 10px; border-top-style: solid; box-sizing: border-box; } md-progress-circular .md-inner .md-left, md-progress-circular .md-inner .md-right { position: absolute; top: 0; - height: 50px; - width: 25px; + height: 100px; + width: 50px; overflow: hidden; } md-progress-circular .md-inner .md-left .md-half-circle, md-progress-circular .md-inner .md-right .md-half-circle { position: absolute; top: 0; - width: 50px; - height: 50px; + width: 100px; + height: 100px; box-sizing: border-box; - border-width: 5px; + border-width: 10px; border-style: solid; border-bottom-color: transparent; border-radius: 50%; } @@ -8648,7 +8659,7 @@ md-progress-circular { -ms-transform: rotate(-135deg); transform: rotate(-135deg); } md-progress-circular[value="0"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="1"] .md-inner .md-left .md-half-circle { @@ -8662,7 +8673,7 @@ md-progress-circular { -ms-transform: rotate(-131.4deg); transform: rotate(-131.4deg); } md-progress-circular[value="1"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="2"] .md-inner .md-left .md-half-circle { @@ -8676,7 +8687,7 @@ md-progress-circular { -ms-transform: rotate(-127.8deg); transform: rotate(-127.8deg); } md-progress-circular[value="2"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="3"] .md-inner .md-left .md-half-circle { @@ -8690,7 +8701,7 @@ md-progress-circular { -ms-transform: rotate(-124.2deg); transform: rotate(-124.2deg); } md-progress-circular[value="3"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="4"] .md-inner .md-left .md-half-circle { @@ -8704,7 +8715,7 @@ md-progress-circular { -ms-transform: rotate(-120.6deg); transform: rotate(-120.6deg); } md-progress-circular[value="4"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="5"] .md-inner .md-left .md-half-circle { @@ -8718,7 +8729,7 @@ md-progress-circular { -ms-transform: rotate(-117deg); transform: rotate(-117deg); } md-progress-circular[value="5"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="6"] .md-inner .md-left .md-half-circle { @@ -8732,7 +8743,7 @@ md-progress-circular { -ms-transform: rotate(-113.4deg); transform: rotate(-113.4deg); } md-progress-circular[value="6"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="7"] .md-inner .md-left .md-half-circle { @@ -8746,7 +8757,7 @@ md-progress-circular { -ms-transform: rotate(-109.8deg); transform: rotate(-109.8deg); } md-progress-circular[value="7"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="8"] .md-inner .md-left .md-half-circle { @@ -8760,7 +8771,7 @@ md-progress-circular { -ms-transform: rotate(-106.2deg); transform: rotate(-106.2deg); } md-progress-circular[value="8"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="9"] .md-inner .md-left .md-half-circle { @@ -8774,7 +8785,7 @@ md-progress-circular { -ms-transform: rotate(-102.6deg); transform: rotate(-102.6deg); } md-progress-circular[value="9"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="10"] .md-inner .md-left .md-half-circle { @@ -8788,7 +8799,7 @@ md-progress-circular { -ms-transform: rotate(-99deg); transform: rotate(-99deg); } md-progress-circular[value="10"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="11"] .md-inner .md-left .md-half-circle { @@ -8802,7 +8813,7 @@ md-progress-circular { -ms-transform: rotate(-95.4deg); transform: rotate(-95.4deg); } md-progress-circular[value="11"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="12"] .md-inner .md-left .md-half-circle { @@ -8816,7 +8827,7 @@ md-progress-circular { -ms-transform: rotate(-91.8deg); transform: rotate(-91.8deg); } md-progress-circular[value="12"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="13"] .md-inner .md-left .md-half-circle { @@ -8830,7 +8841,7 @@ md-progress-circular { -ms-transform: rotate(-88.2deg); transform: rotate(-88.2deg); } md-progress-circular[value="13"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="14"] .md-inner .md-left .md-half-circle { @@ -8844,7 +8855,7 @@ md-progress-circular { -ms-transform: rotate(-84.6deg); transform: rotate(-84.6deg); } md-progress-circular[value="14"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="15"] .md-inner .md-left .md-half-circle { @@ -8858,7 +8869,7 @@ md-progress-circular { -ms-transform: rotate(-81deg); transform: rotate(-81deg); } md-progress-circular[value="15"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="16"] .md-inner .md-left .md-half-circle { @@ -8872,7 +8883,7 @@ md-progress-circular { -ms-transform: rotate(-77.4deg); transform: rotate(-77.4deg); } md-progress-circular[value="16"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="17"] .md-inner .md-left .md-half-circle { @@ -8886,7 +8897,7 @@ md-progress-circular { -ms-transform: rotate(-73.8deg); transform: rotate(-73.8deg); } md-progress-circular[value="17"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="18"] .md-inner .md-left .md-half-circle { @@ -8900,7 +8911,7 @@ md-progress-circular { -ms-transform: rotate(-70.2deg); transform: rotate(-70.2deg); } md-progress-circular[value="18"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="19"] .md-inner .md-left .md-half-circle { @@ -8914,7 +8925,7 @@ md-progress-circular { -ms-transform: rotate(-66.6deg); transform: rotate(-66.6deg); } md-progress-circular[value="19"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="20"] .md-inner .md-left .md-half-circle { @@ -8928,7 +8939,7 @@ md-progress-circular { -ms-transform: rotate(-63deg); transform: rotate(-63deg); } md-progress-circular[value="20"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="21"] .md-inner .md-left .md-half-circle { @@ -8942,7 +8953,7 @@ md-progress-circular { -ms-transform: rotate(-59.4deg); transform: rotate(-59.4deg); } md-progress-circular[value="21"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="22"] .md-inner .md-left .md-half-circle { @@ -8956,7 +8967,7 @@ md-progress-circular { -ms-transform: rotate(-55.8deg); transform: rotate(-55.8deg); } md-progress-circular[value="22"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="23"] .md-inner .md-left .md-half-circle { @@ -8970,7 +8981,7 @@ md-progress-circular { -ms-transform: rotate(-52.2deg); transform: rotate(-52.2deg); } md-progress-circular[value="23"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="24"] .md-inner .md-left .md-half-circle { @@ -8984,7 +8995,7 @@ md-progress-circular { -ms-transform: rotate(-48.6deg); transform: rotate(-48.6deg); } md-progress-circular[value="24"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="25"] .md-inner .md-left .md-half-circle { @@ -8998,7 +9009,7 @@ md-progress-circular { -ms-transform: rotate(-45deg); transform: rotate(-45deg); } md-progress-circular[value="25"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="26"] .md-inner .md-left .md-half-circle { @@ -9012,7 +9023,7 @@ md-progress-circular { -ms-transform: rotate(-41.4deg); transform: rotate(-41.4deg); } md-progress-circular[value="26"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="27"] .md-inner .md-left .md-half-circle { @@ -9026,7 +9037,7 @@ md-progress-circular { -ms-transform: rotate(-37.8deg); transform: rotate(-37.8deg); } md-progress-circular[value="27"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="28"] .md-inner .md-left .md-half-circle { @@ -9040,7 +9051,7 @@ md-progress-circular { -ms-transform: rotate(-34.2deg); transform: rotate(-34.2deg); } md-progress-circular[value="28"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="29"] .md-inner .md-left .md-half-circle { @@ -9054,7 +9065,7 @@ md-progress-circular { -ms-transform: rotate(-30.6deg); transform: rotate(-30.6deg); } md-progress-circular[value="29"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="30"] .md-inner .md-left .md-half-circle { @@ -9068,7 +9079,7 @@ md-progress-circular { -ms-transform: rotate(-27deg); transform: rotate(-27deg); } md-progress-circular[value="30"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="31"] .md-inner .md-left .md-half-circle { @@ -9082,7 +9093,7 @@ md-progress-circular { -ms-transform: rotate(-23.4deg); transform: rotate(-23.4deg); } md-progress-circular[value="31"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="32"] .md-inner .md-left .md-half-circle { @@ -9096,7 +9107,7 @@ md-progress-circular { -ms-transform: rotate(-19.8deg); transform: rotate(-19.8deg); } md-progress-circular[value="32"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="33"] .md-inner .md-left .md-half-circle { @@ -9110,7 +9121,7 @@ md-progress-circular { -ms-transform: rotate(-16.2deg); transform: rotate(-16.2deg); } md-progress-circular[value="33"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="34"] .md-inner .md-left .md-half-circle { @@ -9124,7 +9135,7 @@ md-progress-circular { -ms-transform: rotate(-12.6deg); transform: rotate(-12.6deg); } md-progress-circular[value="34"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="35"] .md-inner .md-left .md-half-circle { @@ -9138,7 +9149,7 @@ md-progress-circular { -ms-transform: rotate(-9deg); transform: rotate(-9deg); } md-progress-circular[value="35"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="36"] .md-inner .md-left .md-half-circle { @@ -9152,7 +9163,7 @@ md-progress-circular { -ms-transform: rotate(-5.4deg); transform: rotate(-5.4deg); } md-progress-circular[value="36"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="37"] .md-inner .md-left .md-half-circle { @@ -9166,7 +9177,7 @@ md-progress-circular { -ms-transform: rotate(-1.8deg); transform: rotate(-1.8deg); } md-progress-circular[value="37"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="38"] .md-inner .md-left .md-half-circle { @@ -9180,7 +9191,7 @@ md-progress-circular { -ms-transform: rotate(1.8deg); transform: rotate(1.8deg); } md-progress-circular[value="38"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="39"] .md-inner .md-left .md-half-circle { @@ -9194,7 +9205,7 @@ md-progress-circular { -ms-transform: rotate(5.4deg); transform: rotate(5.4deg); } md-progress-circular[value="39"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="40"] .md-inner .md-left .md-half-circle { @@ -9208,7 +9219,7 @@ md-progress-circular { -ms-transform: rotate(9deg); transform: rotate(9deg); } md-progress-circular[value="40"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="41"] .md-inner .md-left .md-half-circle { @@ -9222,7 +9233,7 @@ md-progress-circular { -ms-transform: rotate(12.6deg); transform: rotate(12.6deg); } md-progress-circular[value="41"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="42"] .md-inner .md-left .md-half-circle { @@ -9236,7 +9247,7 @@ md-progress-circular { -ms-transform: rotate(16.2deg); transform: rotate(16.2deg); } md-progress-circular[value="42"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="43"] .md-inner .md-left .md-half-circle { @@ -9250,7 +9261,7 @@ md-progress-circular { -ms-transform: rotate(19.8deg); transform: rotate(19.8deg); } md-progress-circular[value="43"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="44"] .md-inner .md-left .md-half-circle { @@ -9264,7 +9275,7 @@ md-progress-circular { -ms-transform: rotate(23.4deg); transform: rotate(23.4deg); } md-progress-circular[value="44"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="45"] .md-inner .md-left .md-half-circle { @@ -9278,7 +9289,7 @@ md-progress-circular { -ms-transform: rotate(27deg); transform: rotate(27deg); } md-progress-circular[value="45"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="46"] .md-inner .md-left .md-half-circle { @@ -9292,7 +9303,7 @@ md-progress-circular { -ms-transform: rotate(30.6deg); transform: rotate(30.6deg); } md-progress-circular[value="46"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="47"] .md-inner .md-left .md-half-circle { @@ -9306,7 +9317,7 @@ md-progress-circular { -ms-transform: rotate(34.2deg); transform: rotate(34.2deg); } md-progress-circular[value="47"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="48"] .md-inner .md-left .md-half-circle { @@ -9320,7 +9331,7 @@ md-progress-circular { -ms-transform: rotate(37.8deg); transform: rotate(37.8deg); } md-progress-circular[value="48"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="49"] .md-inner .md-left .md-half-circle { @@ -9334,10 +9345,12 @@ md-progress-circular { -ms-transform: rotate(41.4deg); transform: rotate(41.4deg); } md-progress-circular[value="49"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="50"] .md-inner .md-left .md-half-circle { + -webkit-transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); } @@ -9348,7 +9361,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="50"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; border-bottom-color: transparent !important; } md-progress-circular[value="51"] .md-inner .md-left .md-half-circle { @@ -9362,7 +9375,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="51"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9377,7 +9390,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="52"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9392,7 +9405,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="53"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9407,7 +9420,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="54"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9422,7 +9435,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="55"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9437,7 +9450,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="56"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9452,7 +9465,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="57"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9467,7 +9480,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="58"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9482,7 +9495,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="59"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9497,7 +9510,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="60"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9512,7 +9525,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="61"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9527,7 +9540,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="62"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9542,7 +9555,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="63"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9557,7 +9570,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="64"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9572,7 +9585,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="65"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9587,7 +9600,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="66"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9602,7 +9615,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="67"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9617,7 +9630,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="68"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9632,7 +9645,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="69"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9647,7 +9660,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="70"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9662,7 +9675,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="71"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9677,7 +9690,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="72"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9692,7 +9705,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="73"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9707,7 +9720,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="74"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9722,7 +9735,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="75"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9737,7 +9750,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="76"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9752,7 +9765,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="77"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9767,7 +9780,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="78"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9782,7 +9795,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="79"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9797,7 +9810,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="80"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9812,7 +9825,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="81"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9827,7 +9840,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="82"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9842,7 +9855,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="83"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9857,7 +9870,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="84"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9872,7 +9885,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="85"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9887,7 +9900,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="86"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9902,7 +9915,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="87"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9917,7 +9930,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="88"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9932,7 +9945,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="89"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9947,7 +9960,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="90"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9962,7 +9975,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="91"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9977,7 +9990,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="92"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -9992,7 +10005,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="93"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10007,7 +10020,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="94"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10022,7 +10035,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="95"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10037,7 +10050,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="96"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10052,7 +10065,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="97"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10067,7 +10080,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="98"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10082,7 +10095,7 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="99"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } @@ -10097,44 +10110,61 @@ md-progress-circular { -ms-transform: rotate(45deg); transform: rotate(45deg); } md-progress-circular[value="100"] .md-inner .md-gap { - border-bottom-width: 5px; + border-bottom-width: 10px; border-bottom-style: solid; -webkit-transition: border-bottom-color 0.1s linear; transition: border-bottom-color 0.1s linear; } - md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper { + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper, md-progress-circular .md-mode-indeterminate .md-spinner-wrapper { -webkit-animation: outer-rotate 2.9166666667s linear infinite; animation: outer-rotate 2.9166666667s linear infinite; } - md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner { + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner, md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner { -webkit-animation: sporadic-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; animation: sporadic-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; } - md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle, md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-right .md-half-circle { -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; -webkit-animation-duration: 1.3125s; animation-duration: 1.3125s; -webkit-animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); } - md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle { + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-left .md-half-circle { -webkit-animation-name: left-wobble; animation-name: left-wobble; } - md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle, md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-right .md-half-circle { -webkit-animation-name: right-wobble; animation-name: right-wobble; } .ng-hide md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper, -md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper { +.ng-hide md-progress-circular .md-mode-indeterminate .md-spinner-wrapper, +md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper, md-progress-circular.ng-hide .md-mode-indeterminate .md-spinner-wrapper { -webkit-animation: none; animation: none; } .ng-hide md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner, - md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper .md-inner { + .ng-hide md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner, + md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper .md-inner, md-progress-circular.ng-hide .md-mode-indeterminate .md-spinner-wrapper .md-inner { -webkit-animation: none; animation: none; } .ng-hide md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, - md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle { + .ng-hide md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-left .md-half-circle, + md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular.ng-hide .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-left .md-half-circle { -webkit-animation-name: none; animation-name: none; } .ng-hide md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle, - md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + .ng-hide md-progress-circular .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-right .md-half-circle, + md-progress-circular.ng-hide[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle, md-progress-circular.ng-hide .md-mode-indeterminate .md-spinner-wrapper .md-inner .md-right .md-half-circle { + -webkit-animation-name: none; + animation-name: none; } + +.md-spinner-wrapper.ng-hide { + -webkit-animation: none; + animation: none; } + .md-spinner-wrapper.ng-hide .md-inner { + -webkit-animation: none; + animation: none; } + .md-spinner-wrapper.ng-hide .md-inner .md-left .md-half-circle { + -webkit-animation-name: none; + animation-name: none; } + .md-spinner-wrapper.ng-hide .md-inner .md-right .md-half-circle { -webkit-animation-name: none; animation-name: none; } diff --git a/UI/WebServerResources/css/styles.css.map b/UI/WebServerResources/css/styles.css.map index 3adf24f79..1c3b02352 100644 --- a/UI/WebServerResources/css/styles.css.map +++ b/UI/WebServerResources/css/styles.css.map @@ -1 +1 @@ -{"version":3,"sources":["../scss/components/_palette.scss","../scss/core/reset.scss","styles.css","../scss/core/angular.scss","../scss/styles.scss","../angular-material/src/core/style/structure.scss","../angular-material/src/core/style/mixins.scss","../scss/core/variables.scss","../scss/core/structure.scss","../angular-material/src/core/services/layout/layout.scss","../scss/core/layout.scss","../bower_components/breakpoint-sass/stylesheets/_breakpoint.scss","../angular-material/src/core/style/typography.scss","../scss/core/typography.scss","../scss/core/_functions.scss","../angular-material/src/components/autocomplete/autocomplete.scss","../scss/components/autocomplete/autocomplete.scss","../scss/components/backdrop/_extends.scss","../angular-material/src/components/backdrop/backdrop.scss","../scss/components/backdrop/backdrop.scss","../scss/components/button/_extends.scss","../angular-material/src/components/button/button.scss","../scss/components/button/button.scss","../scss/components/card/_extends.scss","../angular-material/src/components/card/card.scss","../scss/components/card/card.scss","../scss/components/checkbox/_extends.scss","../angular-material/src/components/checkbox/checkbox.scss","../scss/components/checkbox/checkbox.scss","../scss/components/chips/_extends.scss","../angular-material/src/components/chips/chips.scss","../scss/components/chips/chips.scss","../scss/components/content/_extends.scss","../angular-material/src/components/content/content.scss","../scss/components/content/content.scss","../scss/components/datepicker/_extends-calendar.scss","../angular-material/src/components/datepicker/calendar.scss","../scss/components/datepicker/_extends-datePicker.scss","../angular-material/src/components/datepicker/datePicker.scss","../scss/components/datepicker/datePicker.scss","../scss/components/dialog/_extends.scss","../angular-material/src/components/dialog/dialog.scss","../scss/components/dialog/dialog.scss","../scss/components/divider/_extends.scss","../angular-material/src/components/divider/divider.scss","../scss/components/fabSpeedDial/_extends.scss","../angular-material/src/components/fabSpeedDial/fabSpeedDial.scss","../angular-material/src/components/gridList/grid-list.scss","../scss/components/gridList/grid-list.scss","../scss/components/icon/_extends.scss","../angular-material/src/components/icon/icon.scss","../scss/components/icon/icon.scss","../scss/components/input/_extends.scss","../angular-material/src/components/input/input.scss","../scss/components/input/input.scss","../scss/components/list/_extends.scss","../angular-material/src/components/list/list.scss","../scss/components/list/list.scss","../scss/components/menu/_extends.scss","../angular-material/src/components/menu/menu.scss","../scss/components/progressCircular/_extends.scss","../angular-material/src/components/progressCircular/progress-circular.scss","../scss/components/progressCircular/progress-circular.scss","../scss/components/radioButton/_extends.scss","../angular-material/src/components/radioButton/radio-button.scss","../scss/components/select/_extends.scss","../angular-material/src/components/select/select.scss","../scss/components/select/select.scss","../scss/components/sidenav/_extends.scss","../angular-material/src/components/sidenav/sidenav.scss","../scss/components/sidenav/sidenav.scss","../scss/components/slider/_extends.scss","../angular-material/src/components/slider/slider.scss","../scss/components/sticky/_extends.scss","../angular-material/src/components/sticky/sticky.scss","../scss/components/subheader/_extends.scss","../angular-material/src/components/subheader/subheader.scss","../scss/components/subheader/subheader.scss","../scss/components/switch/_extends.scss","../angular-material/src/components/switch/switch.scss","../scss/components/tabs/_extends.scss","../angular-material/src/components/tabs/tabs.scss","../scss/components/toast/_extends.scss","../angular-material/src/components/toast/toast.scss","../scss/components/toolbar/_extends.scss","../angular-material/src/components/toolbar/toolbar.scss","../scss/components/toolbar/toolbar.scss","../scss/components/tooltip/_extends.scss","../angular-material/src/components/tooltip/tooltip.scss","../scss/components/virtualRepeat/_extends.scss","../angular-material/src/components/virtualRepeat/virtual-repeater.scss","../scss/components/virtualRepeat/virtual-repeat.scss","../scss/components/whiteframe/_extends.scss","../angular-material/src/components/whiteframe/whiteframe.scss","../scss/components/timepicker/timepicker.scss","../scss/components/pseudo-input/pseudo-input.scss","../scss/views/LoginUI.scss","../scss/views/MailerUI.scss","../scss/views/ContactsUI.scss","../scss/views/MessageEditorUI.scss","../scss/views/SchedulerUI.scss","../scss/views/_view.scss","../scss/core/base_styles/_base_style.scss"],"names":[],"mappings":"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EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IAGJ;MACE,mBAAmB;MACnB,iBAAiB;MACjB,SAAS;MACT,YAAY;MACZ,UAAU;MACV,WAAW,EANC;;AAYhB;EACE,0BpG/CU;EoGgDV,eAAe,EAFH;;AAId;EACE,mBAAmB;EACnB,gBvFsCgB;EuFrChB,iBAAiB;EACjB,aAAa;EACb,mBAAmB;EACnB,wBAAwB;EACxB,oBAAoB,EAPX;EAQT;IACE,iBvFsEa,EuFvET;;AAMc;EACtB,eAAe;EACf,YAAY,EAFsB;;AAKpC;EACE,kCpGtEY,EoGqEF;;AAID;EACT,mBAAmB;EACnB,SAAS;EACT,UAAU;EACV,WAAW;EACX,YAAY;EACZ,iBAAiB,EAND;;AASN;EACV,mBAAmB;EACnB,OAAO;EACP,UAAU;EACV,QAAQ;EACR,SAAS;EACT,aAAa;EACb,iBAAiB;EAAE,0BAA0B;EAC7C,YAAY,EARG;;AAWjB,sBAAsB;AACtB;EACE,iBAAiB;EACjB,mBAAmB,EAFT;EAGV;IACE,mBAAmB,EADT;EAGZ;IACE,oBAAoB,EADb;IAEN;MACC,iBAAiB,EADZ;MAEL;QACE,WAAW;QACX,2BAAqB;QAArB,6BAAqB;YAArB,wBAAqB;gBAArB,qBAAqB,EAFT;IAMb;MACC,0BAA0B,EADnB;IAGT;MACE,kBAAiB,EADd;IAIP;MACE,eAAe,EADT;IAGR;MACE,qBAAc;MAAd,sBAAc;MAAd,qBAAc;MAAd,cAAc;MACd,+BpG5HQ;MoG6HR,gBAAgB;MAChB,iBAAiB;MACjB,0BAAkB;UAAlB,sBAAkB;cAAlB,kBAAkB;MAClB,oBAAa;MAAb,qBAAa;UAAb,qBAAa;cAAb,aAAa;MACb,yBAAiB;UAAjB,8BAAiB;cAAjB,iBAAiB;MACjB,2BAAqB;MAArB,6BAAqB;UAArB,wBAAqB;cAArB,qBAAqB,EARhB;IAUP;MACE,eAAe;MACf,qBAAc;MAAd,sBAAc;MAAd,qBAAc;MAAd,cAAc;MACd,2BAAqB;MAArB,6BAAqB;UAArB,wBAAqB;cAArB,qBAAqB,EAHb;MAIR;QACE,cAAc;QACd,eAAe;QACf,0BpGtIM,EoGmID;MAKN;QACC,0BpG3GK,EoG0GE;;ACzMV;;EACH,iBAAiB,EADD;;AnG48SlB;EmGr7SE,mBAAmB,EADJ;;AAKjB;EACE,WAAuB;EACvB,iBAA2B,EAFjB;E1F4BR;I0F5BJ;M3FoIM,mBAAqB;MACrB,oBAA8B;MAA9B,0BAA8B;UAA9B,sBAA8B;cAA9B,kBAA8B;M2FhIhC,iBAAkB,EALV,EAAA;E1F4BR;I0F5BJ;M3FoIM,gBAAqB;MACrB,oBAA8B;MAA9B,uBAA8B;UAA9B,mBAA8B;cAA9B,eAA8B,E2FrIxB,EAAA;E1F4BR;I0F5BJ;MAWI,YAAY;MACZ,gBAAgB,EAZR,EAAA;;AAgBZ;EACE,W9FkGc;E8FjGd,mBAAmB,EAFP;E1FYV;I0FZJ;M3FoHM,mBAAqB;MACrB,oBAA8B;MAA9B,0BAA8B;UAA9B,sBAA8B;cAA9B,kBAA8B;M2FhHhC,UAAU,EALA,EAAA;E1FYV;I0FZJ;M3FoHM,gBAAqB;MACrB,oBAA8B;MAA9B,uBAA8B;UAA9B,mBAA8B;cAA9B,eAA8B;M2F3GhC,UAAU,EAVA,EAAA;E1FYV;I0FIA;MACE,mBAAmB;MACnB,OAAO;MACP,QAAQ;MACR,SAAS;MACT,gBAAgB,EALT,EAAA;E1FJT;I0FZJ;MAwDI,eAAe;MACf,yCAAyC;MACzC,mBAAmB;MACnB,Wf3GkC;Me4GlC,UAAU;MACV,QAAQ;MACR,SAAS;MACT,iCAAqB;UAArB,6BAAqB;cAArB,yBAAqB;MACrB,4D9FiD4C;c8FjD5C,oD9FiD4C,E8FjHlC;MAiET;QACC,oCAAqB;YAArB,gCAAqB;gBAArB,4BAAqB,EADX;MAGF;QACR,oCAAqB;YAArB,gCAAqB;gBAArB,4BAAqB,EADK;MAG3B;QACC,oCAAqB;YAArB,gCAAqB;gBAArB,4BAAqB,EADX;QAET;UACC,iCAAqB;cAArB,6BAAqB;kBAArB,yBAAqB,EADJ;MAIrB;QACE,mBAAmB;QACnB,OAAO;QACP,UAAU;QACV,QAAQ;QACR,SAAS,EALF,EAAA;;AC9Hb;EACE,0BtGkEY,EsGnER;;AAON;EACE,mB/F6DwC;E+F5DxC,oB/F4DwC,E+F9D9B;EAGT;IACC,mB/F0DsC,E+F3D/B;EAGR;IACC,oB/FuDsC,E+FxD9B;EAGT;IACC,kB/FoDsC,E+FrDhC;;AAKV;EACE,8CAAqB;EACrB,yBAAyB;EACzB,6BAA6B;EAC7B,aAAS;EACT,iBAAa;EAEb,oCAAqB;MAArB,gCAAqB;UAArB,4BAAqB,EAPb","file":"styles.css"} \ No newline at end of file +{"version":3,"sources":["../scss/components/_palette.scss","../scss/core/reset.scss","styles.css","../scss/core/angular.scss","../scss/styles.scss","../angular-material/src/core/style/structure.scss","../angular-material/src/core/style/mixins.scss","../scss/core/variables.scss","../scss/core/structure.scss","../angular-material/src/core/services/layout/layout.scss","../scss/core/layout.scss","../bower_components/breakpoint-sass/stylesheets/_breakpoint.scss","../angular-material/src/core/style/typography.scss","../scss/core/typography.scss","../scss/core/_functions.scss","../angular-material/src/components/autocomplete/autocomplete.scss","../scss/components/autocomplete/autocomplete.scss","../scss/components/backdrop/_extends.scss","../angular-material/src/components/backdrop/backdrop.scss","../scss/components/backdrop/backdrop.scss","../scss/components/button/_extends.scss","../angular-material/src/components/button/button.scss","../scss/components/button/button.scss","../scss/components/card/_extends.scss","../angular-material/src/components/card/card.scss","../scss/components/card/card.scss","../scss/components/checkbox/_extends.scss","../angular-material/src/components/checkbox/checkbox.scss","../scss/components/checkbox/checkbox.scss","../scss/components/chips/_extends.scss","../angular-material/src/components/chips/chips.scss","../scss/components/chips/chips.scss","../scss/components/content/_extends.scss","../angular-material/src/components/content/content.scss","../scss/components/content/content.scss","../scss/components/datepicker/_extends-calendar.scss","../angular-material/src/components/datepicker/calendar.scss","../scss/components/datepicker/_extends-datePicker.scss","../angular-material/src/components/datepicker/datePicker.scss","../scss/components/datepicker/datePicker.scss","../scss/components/dialog/_extends.scss","../angular-material/src/components/dialog/dialog.scss","../scss/components/dialog/dialog.scss","../scss/components/divider/_extends.scss","../angular-material/src/components/divider/divider.scss","../scss/components/fabSpeedDial/_extends.scss","../angular-material/src/components/fabSpeedDial/fabSpeedDial.scss","../angular-material/src/components/gridList/grid-list.scss","../scss/components/gridList/grid-list.scss","../scss/components/icon/_extends.scss","../angular-material/src/components/icon/icon.scss","../scss/components/icon/icon.scss","../scss/components/input/_extends.scss","../angular-material/src/components/input/input.scss","../scss/components/input/input.scss","../scss/components/list/_extends.scss","../angular-material/src/components/list/list.scss","../scss/components/list/list.scss","../scss/components/menu/_extends.scss","../angular-material/src/components/menu/menu.scss","../scss/components/progressCircular/_extends.scss","../angular-material/src/components/progressCircular/progress-circular.scss","../scss/components/progressCircular/progress-circular.scss","../scss/components/radioButton/_extends.scss","../angular-material/src/components/radioButton/radio-button.scss","../scss/components/select/_extends.scss","../angular-material/src/components/select/select.scss","../scss/components/select/select.scss","../scss/components/sidenav/_extends.scss","../angular-material/src/components/sidenav/sidenav.scss","../scss/components/sidenav/sidenav.scss","../scss/components/slider/_extends.scss","../angular-material/src/components/slider/slider.scss","../scss/components/sticky/_extends.scss","../angular-material/src/components/sticky/sticky.scss","../scss/components/subheader/_extends.scss","../angular-material/src/components/subheader/subheader.scss","../scss/components/subheader/subheader.scss","../scss/components/switch/_extends.scss","../angular-material/src/components/switch/switch.scss","../scss/components/tabs/_extends.scss","../angular-material/src/components/tabs/tabs.scss","../scss/components/toast/_extends.scss","../angular-material/src/components/toast/toast.scss","../scss/components/toolbar/_extends.scss","../angular-material/src/components/toolbar/toolbar.scss","../scss/components/toolbar/toolbar.scss","../scss/components/tooltip/_extends.scss","../angular-material/src/components/tooltip/tooltip.scss","../scss/components/virtualRepeat/_extends.scss","../angular-material/src/components/virtualRepeat/virtual-repeater.scss","../scss/components/virtualRepeat/virtual-repeat.scss","../scss/components/whiteframe/_extends.scss","../angular-material/src/components/whiteframe/whiteframe.scss","../scss/components/timepicker/timepicker.scss","../scss/components/pseudo-input/pseudo-input.scss","../scss/views/LoginUI.scss","../scss/views/MailerUI.scss","../scss/views/ContactsUI.scss","../scss/views/MessageEditorUI.scss","../scss/views/SchedulerUI.scss","../scss/views/_view.scss","../scss/core/base_styles/_base_style.scss"],"names":[],"mappings":"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AkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MAChC,cAAY,EAAb;IADY;MAAI,WAAS,EAAV;IAAkB;MA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","file":"styles.css"} \ No newline at end of file diff --git a/UI/WebServerResources/js/Mailer.services.js b/UI/WebServerResources/js/Mailer.services.js index 79321a3f5..f656e110a 100644 --- a/UI/WebServerResources/js/Mailer.services.js +++ b/UI/WebServerResources/js/Mailer.services.js @@ -1,3 +1,3 @@ -!function(){"use strict";function Account(futureAccountData){"function"!=typeof futureAccountData.then&&(angular.extend(this,futureAccountData),_.each(this.identities,function(identity){identity.fullName?identity.full=identity.fullName+" <"+identity.email+">":identity.full="<"+identity.email+">"}),Account.$log.debug("Account: "+JSON.stringify(futureAccountData,void 0,2)))}Account.$factory=["$q","$timeout","$log","sgSettings","Resource","Mailbox","Message",function($q,$timeout,$log,Settings,Resource,Mailbox,Message){return angular.extend(Account,{$q:$q,$timeout:$timeout,$log:$log,$$resource:new Resource(Settings.activeUser("folderURL")+"Mail",Settings.activeUser()),$Mailbox:Mailbox,$Message:Message}),Account}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").factory("Account",Account.$factory),Account.$findAll=function(data){return data?Account.$unwrapCollection(data):Account.$$resource.fetch("","mailAccounts").then(function(o){return Account.$unwrapCollection(o)})},Account.$unwrapCollection=function(data){var collection=[];return angular.forEach(data,function(o,i){o.id=i,collection[i]=new Account(o)}),collection},Account.prototype.$getMailboxes=function(options){var _this=this,deferred=Account.$q.defer();return!this.$mailboxes||options&&options.reload?Account.$Mailbox.$find(this).then(function(data){_this.$mailboxes=data,_this.$flattenMailboxes({reload:!0}),deferred.resolve(_this.$mailboxes)}):deferred.resolve(this.$mailboxes),deferred.promise},Account.prototype.$flattenMailboxes=function(options){var _this=this,allMailboxes=[],_visit=function(mailboxes){_.each(mailboxes,function(o){allMailboxes.push(o),o.children&&o.children.length>0&&_visit(o.children)})};return!this.$$flattenMailboxes||options&&options.reload?(_visit(this.$mailboxes),_this.$$flattenMailboxes=allMailboxes):allMailboxes=this.$$flattenMailboxes,allMailboxes},Account.prototype.$getMailboxByType=function(type){var mailbox,_find=function(mailboxes){var mailbox=_.find(mailboxes,function(o){return o.type==type});return mailbox||angular.forEach(mailboxes,function(o){!mailbox&&o.children&&o.children.length>0&&(mailbox=_find(o.children))}),mailbox};mailbox=_find(this.$mailboxes),console.debug(mailbox),console.debug(this.specialMailboxes)},Account.prototype.$getMailboxByPath=function(path){var mailbox=null,_find=function(mailboxes){var mailbox=_.find(mailboxes,function(o){return o.path==path});return mailbox||angular.forEach(mailboxes,function(o){!mailbox&&o.children&&o.children.length>0&&(mailbox=_find(o.children))}),mailbox};return mailbox=_find(this.$mailboxes)},Account.prototype.$newMailbox=function(path,name){var _this=this;return Account.$$resource.post(path.toString(),"createFolder",{name:name}).then(function(){_this.$getMailboxes({reload:!0})})},Account.prototype.$newMessage=function(){var _this=this;return Account.$$resource.fetch(this.id.toString(),"compose").then(function(data){Account.$log.debug("New message (compose): "+JSON.stringify(data,void 0,2));var message=new Account.$Message(data.accountId,_this.$getMailboxByPath(data.mailboxPath),data);return message}).then(function(message){return Account.$$resource.fetch(message.$absolutePath({asDraft:!0}),"edit").then(function(data){return Account.$log.debug("New message (edit): "+JSON.stringify(data,void 0,2)),angular.extend(message.editable,data),message})})},Account.prototype.$addDelegate=function(user){var _this=this,deferred=Account.$q.defer(),param={uid:user.uid};return!user.uid||_.indexOf(_.pluck(this.delegates,"uid"),user.uid)>-1?deferred.resolve():Account.$$resource.fetch(this.id.toString(),"addDelegate",param).then(function(){_this.delegates.push(user),deferred.resolve(_this.users)},function(data,status){deferred.reject(l("An error occured please try again."))}),deferred.promise},Account.prototype.$removeDelegate=function(uid){var _this=this,param={uid:uid};return Account.$$resource.fetch(this.id.toString(),"removeDelegate",param).then(function(){var i=_.indexOf(_.pluck(_this.delegates,"uid"),uid);i>=0&&_this.delegates.splice(i,1)})}}(),function(){"use strict";function Mailbox(account,futureMailboxData){if(this.$account=account,"function"!=typeof futureMailboxData.then){if(this.init(futureMailboxData),this.name&&!this.path){var newMailboxData=Mailbox.$$resource.create("createFolder",this.name);this.$unwrap(newMailboxData)}}else this.$unwrap(futureMailboxData)}Mailbox.$factory=["$q","$timeout","$log","sgSettings","Resource","Message","Acl","Preferences","sgMailbox_PRELOAD",function($q,$timeout,$log,Settings,Resource,Message,Acl,Preferences,PRELOAD){return angular.extend(Mailbox,{$q:$q,$timeout:$timeout,$log:$log,$$resource:new Resource(Settings.activeUser("folderURL")+"Mail",Settings.activeUser()),$Message:Message,$$Acl:Acl,$Preferences:Preferences,$query:{sort:"date",asc:0},selectedFolder:null,$refreshTimeout:null,PRELOAD:PRELOAD}),Preferences.ready().then(function(){Preferences.settings.Mail.SortingState&&(Mailbox.$query.sort=Preferences.settings.Mail.SortingState[0],Mailbox.$query.asc=parseInt(Preferences.settings.Mail.SortingState[1]))}),Mailbox}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMailbox_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("Mailbox",Mailbox.$factory),Mailbox.$find=function(account){var futureMailboxData;return futureMailboxData=this.$$resource.fetch(account.id.toString(),"view"),Mailbox.$unwrapCollection(account,futureMailboxData)},Mailbox.$unwrapCollection=function(account,futureMailboxData){var collection=[],createMailboxes=function(level,mailbox){for(var i=0;i=0&&indexstartIndex&&max>startIndex;startIndex++)angular.isDefined(this.$messages[startIndex].subject)||this.$messages[startIndex].loading?endIndex++:(uids.push(this.$messages[startIndex].uid),this.$messages[startIndex].loading=!0);Mailbox.$log.debug("Loading UIDs "+uids.join(" ")),futureHeadersData=Mailbox.$$resource.post(this.id,"headers",{uids:uids}),this.$unwrapHeaders(futureHeadersData)}return loaded},Mailbox.prototype.isEditable=function(){return"folder"==this.type},Mailbox.prototype.$rename=function(){var findParent,parent,children,i,_this=this,deferred=Mailbox.$q.defer();return this.name==this.$shadowData.name?(deferred.resolve(),deferred.promise):(findParent=function(parent,children){var parentMailbox=null,mailbox=_.find(children,function(o){return o.path==_this.path});return mailbox?parentMailbox=parent:angular.forEach(children,function(o){!parentMailbox&&o.children&&o.children.length>0&&(parentMailbox=findParent(o,o.children))}),parentMailbox},parent=findParent(null,this.$account.$mailboxes),children=null===parent?this.$account.$mailboxes:parent.children,i=_.indexOf(_.pluck(children,"id"),this.id),this.$save().then(function(data){var sibling;angular.extend(_this,data),_this.id=_this.$id(),children.splice(i,1),sibling=_.find(children,function(o){return Mailbox.$log.debug(o.name+" ? "+_this.name),"folder"==o.type&&o.name.localeCompare(_this.name)>0}),i=sibling?_.indexOf(_.pluck(children,"id"),sibling.id):children.length,children.splice(i,0,_this),deferred.resolve()},function(data){deferred.reject(data)}),deferred.promise)},Mailbox.prototype.$compact=function(){return Mailbox.$$resource.post(this.id,"expunge")},Mailbox.prototype.$setFolderAs=function(type){return Mailbox.$$resource.post(this.id,"setAs"+type+"Folder")},Mailbox.prototype.$emptyTrash=function(){var _this=this;return Mailbox.$$resource.post(this.id,"emptyTrash").then(function(){_this.$messages=[],_this.uidsMap={},_this.unseenCount=0,angular.isDefined(_this.children)&&_this.children.length&&_this.$account.$getMailboxes({reload:!0})})},Mailbox.prototype.$markAsRead=function(){return Mailbox.$$resource.post(this.id,"markRead")},Mailbox.prototype.$flagMessages=function(uids,flags,operation){var data={msgUIDs:uids,flags:flags,operation:operation};return Mailbox.$$resource.post(this.id,"addOrRemoveLabel",data)},Mailbox.prototype.$delete=function(){var promise,_this=this,deferred=Mailbox.$q.defer();return promise=Mailbox.$$resource.remove(this.id),promise.then(function(){_this.$account.$getMailboxes({reload:!0}),deferred.resolve(!0)},function(data,status){deferred.reject(data)}),deferred.promise},Mailbox.prototype.$deleteMessages=function(uids){return Mailbox.$$resource.post(this.id,"batchDelete",{uids:uids})},Mailbox.prototype.$copyMessages=function(uids,folder){return Mailbox.$$resource.post(this.id,"copyMessages",{uids:uids,folder:folder})},Mailbox.prototype.$moveMessages=function(uids,folder){return Mailbox.$$resource.post(this.id,"moveMessages",{uids:uids,folder:folder})},Mailbox.prototype.$reset=function(){var _this=this;angular.forEach(this,function(value,key){"constructor"!=key&&"children"!=key&&"$"!=key[0]&&delete _this[key]}),angular.extend(this,this.$shadowData),this.$shadowData=this.$omit()},Mailbox.prototype.$save=function(){var _this=this;return Mailbox.$$resource.save(this.id,this.$omit()).then(function(data){return _this.$shadowData=_this.$omit(),Mailbox.$log.debug(JSON.stringify(data,void 0,2)),data},function(data){Mailbox.$log.error(JSON.stringify(data,void 0,2)),_this.$reset()})},Mailbox.prototype.$newMailbox=function(path,name){return this.$account.$newMailbox(path,name)},Mailbox.prototype.$omit=function(){var mailbox={};return angular.forEach(this,function(value,key){"constructor"!=key&&"children"!=key&&"$"!=key[0]&&(mailbox[key]=value)}),mailbox},Mailbox.prototype.$unwrap=function(futureMailboxData){var _this=this,deferred=Mailbox.$q.defer();return this.$futureMailboxData=futureMailboxData,this.$futureMailboxData.then(function(data){Mailbox.$timeout(function(){var uids,headers;_this.init(data),_this.uids&&(Mailbox.$log.debug("unwrapping "+data.uids.length+" messages"),headers=_.invoke(_this.headers[0],"toLowerCase"),_this.headers.splice(0,1),_this.threaded&&(uids=_this.uids[0],_this.uids.splice(0,1)),_.reduce(_this.uids,function(msgs,msg,i){var data;return data=_this.threaded?_.object(uids,msg):{uid:msg.toString()},_this.uidsMap[data.uid]=i,msgs.push(new Mailbox.$Message(_this.$account.id,_this,data,!0)),msgs},_this.$messages),_.each(_this.headers,function(data){var msg=_.object(headers,data),i=_this.uidsMap[msg.uid.toString()];_.extend(_this.$messages[i],msg)})),Mailbox.$log.debug("mailbox "+_this.id+" ready"),_this.$isLoading=!1,deferred.resolve(_this.$messages)})},function(data){angular.extend(_this,data),_this.isError=!0,deferred.reject()}),deferred.promise},Mailbox.prototype.$unwrapHeaders=function(futureHeadersData){var _this=this;futureHeadersData.then(function(data){Mailbox.$timeout(function(){var headers,j;data.length>0&&(headers=_.invoke(data[0],"toLowerCase"),data.splice(0,1),_.each(data,function(messageHeaders){messageHeaders=_.object(headers,messageHeaders),j=_this.uidsMap[messageHeaders.uid.toString()],angular.isDefined(j)&&_.extend(_this.$messages[j],messageHeaders)}))})})}}(),function(){"use strict";function Message(accountId,mailbox,futureMessageData,lazy){this.accountId=accountId,this.$mailbox=mailbox,this.$hasUnsafeContent=!1,this.$loadUnsafeContent=!1,this.$showDetailedRecipients=!1,this.editable={to:[],cc:[],bcc:[]},this.selected=!1,"function"!=typeof futureMessageData.then?angular.isDefined(lazy)&&lazy?this.uid=futureMessageData.uid:(angular.extend(this,futureMessageData),this.$formatFullAddresses()):this.$unwrap(futureMessageData)}Message.$factory=["$q","$timeout","$log","$sce","sgSettings","Gravatar","Resource","Preferences",function($q,$timeout,$log,$sce,Settings,Gravatar,Resource,Preferences){return angular.extend(Message,{$q:$q,$timeout:$timeout,$log:$log,$sce:$sce,$gravatar:Gravatar,$$resource:new Resource(Settings.activeUser("folderURL")+"Mail",Settings.activeUser())}),Preferences.ready().then(function(){Preferences.defaults.SOGoMailLabelsColors&&(Message.$tags=Preferences.defaults.SOGoMailLabelsColors)}),Message}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").factory("Message",Message.$factory),Message.filterTags=function(query){var re=new RegExp(query,"i");return _.filter(_.keys(Message.$tags),function(tag){var value=Message.$tags[tag];return-1!=value[0].search(re)})},Message.prototype.$absolutePath=function(options){if(angular.isUndefined(this.id)){var path;path=_.map(this.$mailbox.path.split("/"),function(component){return"folder"+component.asCSSIdentifier()}),path.splice(0,0,this.accountId),options&&options.asDraft&&this.draftId?path.push(this.draftId):path.push(this.uid),this.id=path.join("/")}return this.id},Message.prototype.$setUID=function(uid){var oldUID=this.uid||-1;oldUID!=uid&&(this.uid=uid,oldUID>-1&&this.$mailbox.uidsMap[oldUID]&&(this.$mailbox.uidsMap[uid]=this.$mailbox.uidsMap[oldUID],this.$mailbox.uidsMap[oldUID]=null))},Message.prototype.$formatFullAddresses=function(){var _this=this,identities=_.pluck(_this.$mailbox.$account.identities,"email");_.each(["from","to","cc","bcc","reply-to"],function(type){_.each(_this[type],function(data,i){data.name&&data.name!=data.email?(data.full=data.name+" <"+data.email+">",data.name.split(" ").length&&(data.shortname=data.name.split(" ")[0].replace("'",""))):(data.full="<"+data.email+">",data.shortname=data.email.split("@")[0]),data.image=Message.$gravatar(data.email,32),_.indexOf(identities,data.email)>=0&&(data.shortname=l("me"))})})},Message.prototype.$shortRecipients=function(){var _this=this,result=[];return _.each(["to","cc","bcc"],function(type){_.each(_this[type],function(data,i){result.push(data.shortname)})}),result.join(", ")},Message.prototype.$shortAddress=function(type){var address="";return this[type]&&this[type].length>0&&(address=this[type][0].name||this[type][0].email||""),address},Message.prototype.loadUnsafeContent=function(){this.$loadUnsafeContent=!0},Message.prototype.showDetailedRecipients=function(){this.$showDetailedRecipients=!0},Message.prototype.$content=function(){var _this=this,parts=[],_visit=function(part){part.msgclass="msg-attachment-other","UIxMailPartAlternativeViewer"==part.type?_visit(_.find(part.content,function(alternatePart){return part.preferredPart==alternatePart.contentType})):angular.isArray(part.content)?_.each(part.content,function(mixedPart){_visit(mixedPart)}):(angular.isUndefined(part.safeContent)&&(part.safeContent=part.content,_this.$hasUnsafeContent=part.safeContent.indexOf(" unsafe-")>-1),"UIxMailPartHTMLViewer"==part.type?(part.html=!0,_this.$loadUnsafeContent?(angular.isUndefined(part.unsafeContent)&&(part.unsafeContent=document.createElement("div"),part.unsafeContent.innerHTML=part.safeContent,angular.forEach(["src","data","classid","background","style"],function(suffix){var element,value,i,elements=part.unsafeContent.querySelectorAll("[unsafe-"+suffix+"]");for(i=0;i0&&vm.accounts[0].$mailboxes.length>0&&(account=vm.accounts[0], +!function(){"use strict";function Account(futureAccountData){"function"!=typeof futureAccountData.then&&(angular.extend(this,futureAccountData),_.each(this.identities,function(identity){identity.fullName?identity.full=identity.fullName+" <"+identity.email+">":identity.full="<"+identity.email+">"}),Account.$log.debug("Account: "+JSON.stringify(futureAccountData,void 0,2)))}Account.$factory=["$q","$timeout","$log","sgSettings","Resource","Mailbox","Message",function($q,$timeout,$log,Settings,Resource,Mailbox,Message){return angular.extend(Account,{$q:$q,$timeout:$timeout,$log:$log,$$resource:new Resource(Settings.activeUser("folderURL")+"Mail",Settings.activeUser()),$Mailbox:Mailbox,$Message:Message}),Account}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").factory("Account",Account.$factory),Account.$findAll=function(data){return data?Account.$unwrapCollection(data):Account.$$resource.fetch("","mailAccounts").then(function(o){return Account.$unwrapCollection(o)})},Account.$unwrapCollection=function(data){var collection=[];return angular.forEach(data,function(o,i){o.id=i,collection[i]=new Account(o)}),collection},Account.prototype.$getMailboxes=function(options){var _this=this;return!this.$mailboxes||options&&options.reload?Account.$Mailbox.$find(this).then(function(data){return _this.$mailboxes=data,_this.$flattenMailboxes({reload:!0}),_this.$mailboxes}):Account.$q.when(this.$mailboxes)},Account.prototype.$flattenMailboxes=function(options){var _this=this,allMailboxes=[],_visit=function(mailboxes){_.each(mailboxes,function(o){allMailboxes.push(o),o.children&&o.children.length>0&&_visit(o.children)})};return!this.$$flattenMailboxes||options&&options.reload?(_visit(this.$mailboxes),_this.$$flattenMailboxes=allMailboxes):allMailboxes=this.$$flattenMailboxes,allMailboxes},Account.prototype.$getMailboxByType=function(type){var mailbox,_find=function(mailboxes){var mailbox=_.find(mailboxes,function(o){return o.type==type});return mailbox||angular.forEach(mailboxes,function(o){!mailbox&&o.children&&o.children.length>0&&(mailbox=_find(o.children))}),mailbox};mailbox=_find(this.$mailboxes),console.debug(mailbox),console.debug(this.specialMailboxes)},Account.prototype.$getMailboxByPath=function(path){var mailbox=null,_find=function(mailboxes){var mailbox=_.find(mailboxes,function(o){return o.path==path});return mailbox||angular.forEach(mailboxes,function(o){!mailbox&&o.children&&o.children.length>0&&(mailbox=_find(o.children))}),mailbox};return mailbox=_find(this.$mailboxes)},Account.prototype.$newMailbox=function(path,name){var _this=this;return Account.$$resource.post(path.toString(),"createFolder",{name:name}).then(function(){_this.$getMailboxes({reload:!0})})},Account.prototype.$newMessage=function(){var _this=this;return Account.$$resource.fetch(this.id.toString(),"compose").then(function(data){Account.$log.debug("New message (compose): "+JSON.stringify(data,void 0,2));var message=new Account.$Message(data.accountId,_this.$getMailboxByPath(data.mailboxPath),data);return message}).then(function(message){return Account.$$resource.fetch(message.$absolutePath({asDraft:!0}),"edit").then(function(data){return Account.$log.debug("New message (edit): "+JSON.stringify(data,void 0,2)),angular.extend(message.editable,data),message})})},Account.prototype.$addDelegate=function(user){var _this=this,deferred=Account.$q.defer(),param={uid:user.uid};return!user.uid||_.indexOf(_.pluck(this.delegates,"uid"),user.uid)>-1?deferred.resolve():Account.$$resource.fetch(this.id.toString(),"addDelegate",param).then(function(){_this.delegates.push(user),deferred.resolve(_this.users)},function(data,status){deferred.reject(l("An error occured please try again."))}),deferred.promise},Account.prototype.$removeDelegate=function(uid){var _this=this,param={uid:uid};return Account.$$resource.fetch(this.id.toString(),"removeDelegate",param).then(function(){var i=_.indexOf(_.pluck(_this.delegates,"uid"),uid);i>=0&&_this.delegates.splice(i,1)})}}(),function(){"use strict";function Mailbox(account,futureMailboxData){if(this.$account=account,"function"!=typeof futureMailboxData.then){if(this.init(futureMailboxData),this.name&&!this.path){var newMailboxData=Mailbox.$$resource.create("createFolder",this.name);this.$unwrap(newMailboxData)}}else this.$unwrap(futureMailboxData)}Mailbox.$factory=["$q","$timeout","$log","sgSettings","Resource","Message","Acl","Preferences","sgMailbox_PRELOAD",function($q,$timeout,$log,Settings,Resource,Message,Acl,Preferences,PRELOAD){return angular.extend(Mailbox,{$q:$q,$timeout:$timeout,$log:$log,$$resource:new Resource(Settings.activeUser("folderURL")+"Mail",Settings.activeUser()),$Message:Message,$$Acl:Acl,$Preferences:Preferences,$query:{sort:"date",asc:0},selectedFolder:null,$refreshTimeout:null,PRELOAD:PRELOAD}),Preferences.ready().then(function(){Preferences.settings.Mail.SortingState&&(Mailbox.$query.sort=Preferences.settings.Mail.SortingState[0],Mailbox.$query.asc=parseInt(Preferences.settings.Mail.SortingState[1]))}),Mailbox}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMailbox_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("Mailbox",Mailbox.$factory),Mailbox.$find=function(account){var futureMailboxData;return futureMailboxData=this.$$resource.fetch(account.id.toString(),"view"),Mailbox.$unwrapCollection(account,futureMailboxData)},Mailbox.$unwrapCollection=function(account,futureMailboxData){var collection=[],createMailboxes=function(level,mailbox){for(var i=0;i=0&&indexstartIndex&&max>startIndex;startIndex++)angular.isDefined(this.$messages[startIndex].subject)||this.$messages[startIndex].loading?endIndex++:(uids.push(this.$messages[startIndex].uid),this.$messages[startIndex].loading=!0);Mailbox.$log.debug("Loading UIDs "+uids.join(" ")),futureHeadersData=Mailbox.$$resource.post(this.id,"headers",{uids:uids}),this.$unwrapHeaders(futureHeadersData)}return loaded},Mailbox.prototype.isEditable=function(){return"folder"==this.type},Mailbox.prototype.$rename=function(){var findParent,parent,children,i,_this=this,deferred=Mailbox.$q.defer();return this.name==this.$shadowData.name?(deferred.resolve(),deferred.promise):(findParent=function(parent,children){var parentMailbox=null,mailbox=_.find(children,function(o){return o.path==_this.path});return mailbox?parentMailbox=parent:angular.forEach(children,function(o){!parentMailbox&&o.children&&o.children.length>0&&(parentMailbox=findParent(o,o.children))}),parentMailbox},parent=findParent(null,this.$account.$mailboxes),children=null===parent?this.$account.$mailboxes:parent.children,i=_.indexOf(_.pluck(children,"id"),this.id),this.$save().then(function(data){var sibling;angular.extend(_this,data),_this.id=_this.$id(),children.splice(i,1),sibling=_.find(children,function(o){return Mailbox.$log.debug(o.name+" ? "+_this.name),"folder"==o.type&&o.name.localeCompare(_this.name)>0}),i=sibling?_.indexOf(_.pluck(children,"id"),sibling.id):children.length,children.splice(i,0,_this),deferred.resolve()},function(data){deferred.reject(data)}),deferred.promise)},Mailbox.prototype.$compact=function(){return Mailbox.$$resource.post(this.id,"expunge")},Mailbox.prototype.$setFolderAs=function(type){return Mailbox.$$resource.post(this.id,"setAs"+type+"Folder")},Mailbox.prototype.$emptyTrash=function(){var _this=this;return Mailbox.$$resource.post(this.id,"emptyTrash").then(function(){_this.$messages=[],_this.uidsMap={},_this.unseenCount=0,angular.isDefined(_this.children)&&_this.children.length&&_this.$account.$getMailboxes({reload:!0})})},Mailbox.prototype.$markAsRead=function(){return Mailbox.$$resource.post(this.id,"markRead")},Mailbox.prototype.$flagMessages=function(uids,flags,operation){var data={msgUIDs:uids,flags:flags,operation:operation};return Mailbox.$$resource.post(this.id,"addOrRemoveLabel",data)},Mailbox.prototype.$delete=function(){var promise,_this=this,deferred=Mailbox.$q.defer();return promise=Mailbox.$$resource.remove(this.id),promise.then(function(){_this.$account.$getMailboxes({reload:!0}),deferred.resolve(!0)},function(data,status){deferred.reject(data)}),deferred.promise},Mailbox.prototype.$deleteMessages=function(uids){return Mailbox.$$resource.post(this.id,"batchDelete",{uids:uids})},Mailbox.prototype.$copyMessages=function(uids,folder){return Mailbox.$$resource.post(this.id,"copyMessages",{uids:uids,folder:folder})},Mailbox.prototype.$moveMessages=function(uids,folder){return Mailbox.$$resource.post(this.id,"moveMessages",{uids:uids,folder:folder})},Mailbox.prototype.$reset=function(){var _this=this;angular.forEach(this,function(value,key){"constructor"!=key&&"children"!=key&&"$"!=key[0]&&delete _this[key]}),angular.extend(this,this.$shadowData),this.$shadowData=this.$omit()},Mailbox.prototype.$save=function(){var _this=this;return Mailbox.$$resource.save(this.id,this.$omit()).then(function(data){return _this.$shadowData=_this.$omit(),Mailbox.$log.debug(JSON.stringify(data,void 0,2)),data},function(data){Mailbox.$log.error(JSON.stringify(data,void 0,2)),_this.$reset()})},Mailbox.prototype.$newMailbox=function(path,name){return this.$account.$newMailbox(path,name)},Mailbox.prototype.$omit=function(){var mailbox={};return angular.forEach(this,function(value,key){"constructor"!=key&&"children"!=key&&"$"!=key[0]&&(mailbox[key]=value)}),mailbox},Mailbox.prototype.$unwrap=function(futureMailboxData){var _this=this,deferred=Mailbox.$q.defer();return this.$futureMailboxData=futureMailboxData,this.$futureMailboxData.then(function(data){Mailbox.$timeout(function(){var uids,headers;_this.init(data),_this.uids&&(Mailbox.$log.debug("unwrapping "+data.uids.length+" messages"),headers=_.invoke(_this.headers[0],"toLowerCase"),_this.headers.splice(0,1),_this.threaded&&(uids=_this.uids[0],_this.uids.splice(0,1)),_.reduce(_this.uids,function(msgs,msg,i){var data;return data=_this.threaded?_.object(uids,msg):{uid:msg.toString()},_this.uidsMap[data.uid]=i,msgs.push(new Mailbox.$Message(_this.$account.id,_this,data,!0)),msgs},_this.$messages),_.each(_this.headers,function(data){var msg=_.object(headers,data),i=_this.uidsMap[msg.uid.toString()];_.extend(_this.$messages[i],msg)})),Mailbox.$log.debug("mailbox "+_this.id+" ready"),_this.$isLoading=!1,deferred.resolve(_this.$messages)})},function(data){angular.extend(_this,data),_this.isError=!0,deferred.reject()}),deferred.promise},Mailbox.prototype.$unwrapHeaders=function(futureHeadersData){var _this=this;futureHeadersData.then(function(data){Mailbox.$timeout(function(){var headers,j;data.length>0&&(headers=_.invoke(data[0],"toLowerCase"),data.splice(0,1),_.each(data,function(messageHeaders){messageHeaders=_.object(headers,messageHeaders),j=_this.uidsMap[messageHeaders.uid.toString()],angular.isDefined(j)&&_.extend(_this.$messages[j],messageHeaders)}))})})}}(),function(){"use strict";function Message(accountId,mailbox,futureMessageData,lazy){this.accountId=accountId,this.$mailbox=mailbox,this.$hasUnsafeContent=!1,this.$loadUnsafeContent=!1,this.$showDetailedRecipients=!1,this.editable={to:[],cc:[],bcc:[]},this.selected=!1,"function"!=typeof futureMessageData.then?angular.isDefined(lazy)&&lazy?this.uid=futureMessageData.uid:(angular.extend(this,futureMessageData),this.$formatFullAddresses()):this.$unwrap(futureMessageData)}Message.$factory=["$q","$timeout","$log","$sce","sgSettings","Gravatar","Resource","Preferences",function($q,$timeout,$log,$sce,Settings,Gravatar,Resource,Preferences){return angular.extend(Message,{$q:$q,$timeout:$timeout,$log:$log,$sce:$sce,$gravatar:Gravatar,$$resource:new Resource(Settings.activeUser("folderURL")+"Mail",Settings.activeUser())}),Preferences.ready().then(function(){Preferences.defaults.SOGoMailLabelsColors&&(Message.$tags=Preferences.defaults.SOGoMailLabelsColors)}),Message}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").factory("Message",Message.$factory),Message.filterTags=function(query){var re=new RegExp(query,"i");return _.filter(_.keys(Message.$tags),function(tag){var value=Message.$tags[tag];return-1!=value[0].search(re)})},Message.prototype.$absolutePath=function(options){if(angular.isUndefined(this.id)){var path;path=_.map(this.$mailbox.path.split("/"),function(component){return"folder"+component.asCSSIdentifier()}),path.splice(0,0,this.accountId),options&&options.asDraft&&this.draftId?path.push(this.draftId):path.push(this.uid),this.id=path.join("/")}return this.id},Message.prototype.$setUID=function(uid){var oldUID=this.uid||-1;oldUID!=uid&&(this.uid=uid,oldUID>-1&&this.$mailbox.uidsMap[oldUID]&&(this.$mailbox.uidsMap[uid]=this.$mailbox.uidsMap[oldUID],this.$mailbox.uidsMap[oldUID]=null))},Message.prototype.$formatFullAddresses=function(){var _this=this,identities=_.pluck(_this.$mailbox.$account.identities,"email");_.each(["from","to","cc","bcc","reply-to"],function(type){_.each(_this[type],function(data,i){data.name&&data.name!=data.email?(data.full=data.name+" <"+data.email+">",data.name.split(" ").length&&(data.shortname=data.name.split(" ")[0].replace("'",""))):(data.full="<"+data.email+">",data.shortname=data.email.split("@")[0]),data.image=Message.$gravatar(data.email,32),_.indexOf(identities,data.email)>=0&&(data.shortname=l("me"))})})},Message.prototype.$shortRecipients=function(){var _this=this,result=[];return _.each(["to","cc","bcc"],function(type){_.each(_this[type],function(data,i){result.push(data.shortname)})}),result.join(", ")},Message.prototype.$shortAddress=function(type){var address="";return this[type]&&this[type].length>0&&(address=this[type][0].name||this[type][0].email||""),address},Message.prototype.loadUnsafeContent=function(){this.$loadUnsafeContent=!0},Message.prototype.showDetailedRecipients=function(){this.$showDetailedRecipients=!0},Message.prototype.$content=function(){var _this=this,parts=[],_visit=function(part){part.msgclass="msg-attachment-other","UIxMailPartAlternativeViewer"==part.type?_visit(_.find(part.content,function(alternatePart){return part.preferredPart==alternatePart.contentType})):angular.isArray(part.content)?_.each(part.content,function(mixedPart){_visit(mixedPart)}):(angular.isUndefined(part.safeContent)&&(part.safeContent=part.content,_this.$hasUnsafeContent=part.safeContent.indexOf(" unsafe-")>-1),"UIxMailPartHTMLViewer"==part.type?(part.html=!0,_this.$loadUnsafeContent?(angular.isUndefined(part.unsafeContent)&&(part.unsafeContent=document.createElement("div"),part.unsafeContent.innerHTML=part.safeContent,angular.forEach(["src","data","classid","background","style"],function(suffix){var element,value,i,elements=part.unsafeContent.querySelectorAll("[unsafe-"+suffix+"]");for(i=0;i0&&vm.accounts[0].$mailboxes.length>0&&(account=vm.accounts[0], mailbox=account.$mailboxes[0],$state.go("mail.account.mailbox",{accountId:account.id,mailboxId:encodeUriFilter(mailbox.path)})),vm.refreshUnseenCount()}MailboxesController.$inject=["$state","$timeout","$mdDialog","sgFocus","encodeUriFilter","Dialog","sgSettings","Account","Mailbox","User","Preferences","stateAccounts"],angular.module("SOGo.MailerUI").controller("MailboxesController",MailboxesController)}(),function(){"use strict";function MessageController($scope,$state,$mdDialog,stateAccounts,stateAccount,stateMailbox,stateMessage,encodeUriFilter,focus,Dialog,Account,Mailbox,Message){function doDelete(){stateMailbox.$deleteMessages([stateMessage.uid]).then(function(){var index=_.findIndex(stateMailbox.$messages,function(o){return o.uid==stateMessage.uid});-1!=index&&stateMailbox.$messages.splice(index,1),vm.message=null,$state.go("mail.account.mailbox",{accountId:stateAccount.id,mailboxId:encodeUriFilter(stateMailbox.path)})})}function showMailEditor($event,message,recipients){null===messageDialog&&(angular.isDefined(recipients)||(recipients=[]),messageDialog=$mdDialog.show({parent:angular.element(document.body),targetEvent:$event,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccounts:vm.accounts,stateMessage:message,stateRecipients:recipients}})["finally"](function(){messageDialog=null}))}function close(){$state.go("mail.account.mailbox",{accountId:stateAccount.id,mailboxId:encodeUriFilter(stateMailbox.path)}).then(function(){vm.message=null,delete stateMailbox.selectedMessage})}function reply($event){var message=vm.message.$reply();showMailEditor($event,message)}function replyAll($event){var message=vm.message.$replyAll();showMailEditor($event,message)}function forward($event){var message=vm.message.$forward();showMailEditor($event,message)}function edit($event){vm.message.$editableContent().then(function(){showMailEditor($event,vm.message)})}function newMessage($event,recipient){var message=vm.account.$newMessage();showMailEditor($event,message,[recipient])}function saveMessage(){window.location.href=ApplicationBaseURL+"/"+vm.mailbox.id+"/saveMessages?uid="+vm.message.uid}function viewRawSource($event){Message.$$resource.post(vm.message.id,"viewsource").then(function(data){function MessageRawSourceDialogController(scope,$mdDialog){scope.close=function(){$mdDialog.hide()}}$mdDialog.show({parent:angular.element(document.body),targetEvent:$event,clickOutsideToClose:!0,escapeToClose:!0,template:[''," ","
",data,"    
","
",'
',' '+l("Close")+"","
","
"].join(""),controller:MessageRawSourceDialogController}),MessageRawSourceDialogController.$inject=["scope","$mdDialog"]})}var vm=this,messageDialog=null;vm.accounts=stateAccounts,vm.account=stateAccount,vm.mailbox=stateMailbox,vm.message=stateMessage,vm.service=Message,vm.tags={searchText:"",selected:""},vm.doDelete=doDelete,vm.close=close,vm.reply=reply,vm.replyAll=replyAll,vm.forward=forward,vm.edit=edit,vm.newMessage=newMessage,vm.saveMessage=saveMessage,vm.viewRawSource=viewRawSource,$scope.$watchCollection("viewer.message.flags",function(oldTags,newTags){_.each(_.difference(newTags,oldTags),function(tag){vm.message.removeTag(tag)})})}MessageController.$inject=["$scope","$state","$mdDialog","stateAccounts","stateAccount","stateMailbox","stateMessage","encodeUriFilter","sgFocus","Dialog","Account","Mailbox","Message"],angular.module("SOGo.MailerUI").controller("MessageController",MessageController)}(),function(){"use strict";function MessageEditorController($stateParams,$state,$q,$mdDialog,FileUploader,stateAccounts,stateMessage,stateRecipients,$timeout,encodeUriFilter,focus,Dialog,Account,Mailbox,AddressBook,Preferences){function cancel(){vm.autosave&&$timeout.cancel(vm.autosave),$mdDialog.cancel()}function send(){vm.autosave&&$timeout.cancel(vm.autosave),vm.message.$send().then(function(data){$mdDialog.hide()},function(data){Dialog.alert(l(data.status),l(data.message))})}function contactFilter($query){return AddressBook.$filterAll($query)}function addRecipient(user){var recipient=[];return angular.isString(user)?user:(user.$$fullname&&recipient.push(user.$$fullname),user.$$email&&recipient.push("<"+user.$$email+">"),recipient.join(" "))}function autosaveDrafts(){vm.message.$save(),Preferences.defaults.SOGoMailAutoSave&&(vm.autosave=$timeout(vm.autosaveDrafts,1e3*Preferences.defaults.SOGoMailAutoSave*60))}var vm=this;vm.addRecipient=addRecipient,vm.autocomplete={to:{},cc:{},bcc:{}},vm.autosave=null,vm.autosaveDrafts=autosaveDrafts,vm.hideCc=!0,vm.hideBcc=!0,vm.cancel=cancel,vm.send=send,vm.contactFilter=contactFilter,vm.identities=_.pluck(_.flatten(_.pluck(stateAccounts,"identities")),"full"),vm.uploader=new FileUploader({url:stateMessage.$absolutePath({asDraft:!0})+"/save",autoUpload:!0,alias:"attachments",onProgressItem:function(item,progress){console.debug(item),console.debug(progress)},onSuccessItem:function(item,response,status,headers){stateMessage.$setUID(response.uid),stateMessage.$reload(),console.debug(item),console.debug("success = "+JSON.stringify(response,void 0,2))},onCancelItem:function(item,response,status,headers){console.debug(item),console.debug("cancel = "+JSON.stringify(response,void 0,2)),stateMessage.$deleteAttachment(item.file.name),this.removeFromQueue(item)},onErrorItem:function(item,response,status,headers){console.debug(item),console.debug("error = "+JSON.stringify(response,void 0,2))}}),"reply"==$stateParams.actionName?stateMessage.$reply().then(function(msgObject){vm.message=msgObject,vm.hideCc=!msgObject.editable.cc||0===msgObject.editable.cc.length,vm.hideBcc=!msgObject.editable.bcc||0===msgObject.editable.bcc.length}):"replyall"==$stateParams.actionName?stateMessage.$replyAll().then(function(msgObject){vm.message=msgObject,vm.hideCc=!msgObject.editable.cc||0===msgObject.editable.cc.length,vm.hideBcc=!msgObject.editable.bcc||0===msgObject.editable.bcc.length}):"forward"==$stateParams.actionName?stateMessage.$forward().then(function(msgObject){vm.message=msgObject}):angular.isDefined(stateMessage)&&(vm.message=stateMessage),angular.isDefined(stateRecipients)&&(vm.message.editable.to=_.union(vm.message.editable.to,_.pluck(stateRecipients,"full"))),Preferences.ready().then(function(){Preferences.defaults.SOGoMailAutoSave&&(vm.autosave=$timeout(vm.autosaveDrafts,1e3*Preferences.defaults.SOGoMailAutoSave*60)),vm.localeCode=Preferences.defaults.LocaleCode})}MessageEditorController.$inject=["$stateParams","$state","$q","$mdDialog","FileUploader","stateAccounts","stateMessage","stateRecipients","$timeout","encodeUriFilter","sgFocus","Dialog","Account","Mailbox","AddressBook","Preferences"],angular.module("SOGo.MailerUI").controller("MessageEditorController",MessageEditorController)}(); //# sourceMappingURL=Mailer.services.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Mailer.services.js.map b/UI/WebServerResources/js/Mailer.services.js.map index 6660173df..ec96ddcf8 100644 --- a/UI/WebServerResources/js/Mailer.services.js.map +++ b/UI/WebServerResources/js/Mailer.services.js.map @@ -1 +1 @@ -{"version":3,"file":"Mailer.services.js","sources":["Mailer/Account.service.js","Mailer/Mailbox.service.js","Mailer/Message.service.js","Mailer/MailboxController.js","Mailer/MailboxesController.js","Mailer/MessageController.js","Mailer/MessageEditorController.js"],"names":["Account","futureAccountData","then","angular","extend","this","_","each","identities","identity","fullName","full","email","$log","debug","JSON","stringify","undefined","$factory","$q","$timeout","Settings","Resource","Mailbox","Message","$$resource","activeUser","$Mailbox","$Message","module","e","factory","$findAll","data","$unwrapCollection","fetch","o","collection","forEach","i","id","prototype","$getMailboxes","options","_this","deferred","defer","$mailboxes","reload","$find","$flattenMailboxes","resolve","promise","allMailboxes","_visit","mailboxes","push","children","length","$$flattenMailboxes","$getMailboxByType","type","mailbox","_find","find","console","specialMailboxes","$getMailboxByPath","path","$newMailbox","name","post","toString","$newMessage","message","accountId","mailboxPath","$absolutePath","asDraft","editable","$addDelegate","user","param","uid","indexOf","pluck","delegates","users","status","reject","l","$removeDelegate","splice","account","futureMailboxData","$account","init","newMailboxData","create","$unwrap","Acl","Preferences","PRELOAD","$$Acl","$Preferences","$query","sort","asc","selectedFolder","$refreshTimeout","ready","settings","Mail","SortingState","parseInt","constant","LOOKAHEAD","SIZE","createMailboxes","level","index","map","split","component","asCSSIdentifier","join","$isLoading","$messages","uidsMap","$id","$acl","$isEditable","isEditable","isUndefined","$shadowData","$omit","getLength","getItemAtIndex","$loadMessage","$selectedCount","count","filter","selected","$filter","sortingAttributes","filters","isDefined","unseenCount","cancel","searchInput","secondFilter","match","searchBy","copy","refreshViewCheck","defaults","SOGoRefreshViewCheck","f","bind","timeInterval","messageId","endIndex","uids","futureHeadersData","startIndex","max","loaded","subject","Math","min","loading","$unwrapHeaders","$rename","findParent","parent","parentMailbox","$save","sibling","localeCompare","$compact","$setFolderAs","$emptyTrash","$markAsRead","$flagMessages","flags","operation","msgUIDs","$delete","remove","$deleteMessages","$copyMessages","folder","$moveMessages","$reset","value","key","save","error","$futureMailboxData","headers","invoke","threaded","reduce","msgs","msg","object","isError","j","messageHeaders","futureMessageData","lazy","$mailbox","$hasUnsafeContent","$loadUnsafeContent","$showDetailedRecipients","to","cc","bcc","$formatFullAddresses","$sce","Gravatar","$gravatar","SOGoMailLabelsColors","$tags","filterTags","query","re","RegExp","keys","tag","search","draftId","$setUID","oldUID","shortname","replace","image","$shortRecipients","result","$shortAddress","address","loadUnsafeContent","showDetailedRecipients","$content","parts","part","msgclass","content","alternatePart","preferredPart","contentType","isArray","mixedPart","safeContent","html","unsafeContent","document","createElement","innerHTML","suffix","element","elements","querySelectorAll","attr","removeAttr","trustAs","participants","participant","compile","$editableContent","text","addTag","$addOrRemoveTag","removeTag","$imipAction","action","$reload","$sendMDN","shouldAskReceipt","$deleteAttachment","filename","attachmentAttrs","attachment","toggleFlag","isflagged","$reply","$newDraft","$replyAll","$forward","response","$send","$futureMessageData","isread","MailboxController","$state","$mdDialog","stateAccounts","stateAccount","stateMailbox","encodeUriFilter","focus","Dialog","selectMessage","go","mailboxId","unselectMessages","vm","confirmDeleteSelectedMessages","confirm","selectedMessages","selectedUIDs","difference","alert","copySelectedMessages","saveSelectedMessages","window","location","href","ApplicationBaseURL","selectAll","markSelectedMessagesAsFlagged","d","markSelectedMessagesAsUnread","field","sortedBy","cancelSearch","mode","newMessage","$event","messageDialog","show","body","targetEvent","clickOutsideToClose","escapeToClose","templateUrl","controller","controllerAs","locals","accounts","stateMessage","stateRecipients","service","$inject","MailboxesController","User","newFolder","parentFolder","prompt","delegate","MailboxDelegationController","$scope","userFilter","closeModal","hide","removeUser","addUser","userToAdd","searchText","editFolder","editMode","revertEditing","selectFolder","saveFolder","compactFolder","emptyTrashFolder","exportMails","confirmDelete","markFolderRead","share","$users","usersWithACL","metadataForFolder","icon","setFolderAs","refreshUnseenCount","unseenCountFolders","includes","current","MessageController","doDelete","findIndex","showMailEditor","recipients","close","selectedMessage","reply","replyAll","forward","edit","recipient","saveMessage","viewRawSource","MessageRawSourceDialogController","scope","template","tags","$watchCollection","oldTags","newTags","MessageEditorController","$stateParams","FileUploader","AddressBook","autosave","send","contactFilter","$filterAll","addRecipient","isString","$$fullname","$$email","autosaveDrafts","SOGoMailAutoSave","autocomplete","hideCc","hideBcc","flatten","uploader","url","autoUpload","alias","onProgressItem","item","progress","onSuccessItem","onCancelItem","file","removeFromQueue","onErrorItem","actionName","msgObject","union","localeCode","LocaleCode"],"mappings":"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","sourcesContent":["/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Account\n * @constructor\n * @param {object} futureAccountData\n */\n function Account(futureAccountData) {\n // Data is immediately available\n if (typeof futureAccountData.then !== 'function') {\n angular.extend(this, futureAccountData);\n _.each(this.identities, function(identity) {\n if (identity.fullName)\n identity.full = identity.fullName + ' <' + identity.email + '>';\n else\n identity.full = '<' + identity.email + '>';\n });\n Account.$log.debug('Account: ' + JSON.stringify(futureAccountData, undefined, 2));\n }\n else {\n // The promise will be unwrapped first\n //this.$unwrap(futureAccountData);\n }\n }\n\n /**\n * @memberof Account\n * @desc The factory we'll use to register with Angular\n * @returns the Account constructor\n */\n Account.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Resource', 'Mailbox', 'Message', function($q, $timeout, $log, Settings, Resource, Mailbox, Message) {\n angular.extend(Account, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Mail', Settings.activeUser()),\n $Mailbox: Mailbox,\n $Message: Message\n });\n\n return Account; // return constructor\n }];\n\n /**\n * @module SOGo.MailerUI\n * @desc Factory registration of Account in Angular module.\n */\n try {\n angular.module('SOGo.MailerUI');\n }\n catch(e) {\n angular.module('SOGo.MailerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.MailerUI')\n .factory('Account', Account.$factory);\n\n /**\n * @memberof Account\n * @desc Set the list of accounts and instanciate a new Account object for each item.\n * @param {array} [data] - the metadata of the accounts\n * @returns the list of accounts\n */\n Account.$findAll = function(data) {\n if (!data) {\n return Account.$$resource.fetch('', 'mailAccounts').then(function(o) {\n return Account.$unwrapCollection(o);\n });\n }\n return Account.$unwrapCollection(data);\n };\n\n /**\n * @memberof Account\n * @desc Unwrap to a collection of Account instances.\n * @param {object} data - the accounts information\n * @returns a collection of Account objects\n */\n Account.$unwrapCollection = function(data) {\n var collection = [];\n\n angular.forEach(data, function(o, i) {\n o.id = i;\n collection[i] = new Account(o);\n });\n return collection;\n };\n\n /**\n * @function $getMailboxes\n * @memberof Account.prototype\n * @desc Fetch the list of mailboxes for the current account.\n * @param {object} [options] - force a reload by setting 'reload' to true\n * @returns a promise of the HTTP operation\n */\n Account.prototype.$getMailboxes = function(options) {\n var _this = this,\n deferred = Account.$q.defer();\n\n if (this.$mailboxes && !(options && options.reload)) {\n deferred.resolve(this.$mailboxes);\n }\n else {\n Account.$Mailbox.$find(this).then(function(data) {\n _this.$mailboxes = data;\n _this.$flattenMailboxes({reload: true});\n deferred.resolve(_this.$mailboxes);\n });\n }\n\n return deferred.promise;\n };\n\n /**\n * @function $flattenMailboxes\n * @memberof Account.prototype\n * @desc Get a flatten array of the mailboxes.\n * @param {object} [options] - force a reload\n * @returns an array of Mailbox instances\n */\n Account.prototype.$flattenMailboxes = function(options) {\n var _this = this,\n allMailboxes = [],\n _visit = function(mailboxes) {\n _.each(mailboxes, function(o) {\n allMailboxes.push(o);\n if (o.children && o.children.length > 0) {\n _visit(o.children);\n }\n });\n };\n\n if (this.$$flattenMailboxes && !(options && options.reload)) {\n allMailboxes = this.$$flattenMailboxes;\n }\n else {\n _visit(this.$mailboxes);\n _this.$$flattenMailboxes = allMailboxes;\n }\n\n return allMailboxes;\n };\n\n Account.prototype.$getMailboxByType = function(type) {\n var mailbox,\n // Recursive find function\n _find = function(mailboxes) {\n var mailbox = _.find(mailboxes, function(o) {\n return o.type == type;\n });\n if (!mailbox) {\n angular.forEach(mailboxes, function(o) {\n if (!mailbox && o.children && o.children.length > 0) {\n mailbox = _find(o.children);\n }\n });\n }\n return mailbox;\n };\n mailbox = _find(this.$mailboxes);\n\n console.debug(mailbox);\n console.debug(this.specialMailboxes);\n };\n\n /**\n * @function $getMailboxByPath\n * @memberof Account.prototype\n * @desc Recursively find a mailbox using its path\n * @returns a promise of the HTTP operation\n */\n Account.prototype.$getMailboxByPath = function(path) {\n var mailbox = null,\n // Recursive find function\n _find = function(mailboxes) {\n var mailbox = _.find(mailboxes, function(o) {\n return o.path == path;\n });\n if (!mailbox) {\n angular.forEach(mailboxes, function(o) {\n if (!mailbox && o.children && o.children.length > 0) {\n mailbox = _find(o.children);\n }\n });\n }\n return mailbox;\n };\n mailbox = _find(this.$mailboxes);\n\n return mailbox;\n };\n\n /**\n * @function $newMailbox\n * @memberof Account.prototype\n * @desc Create a new mailbox on the server and refresh the list of mailboxes.\n * @returns a promise of the HTTP operations\n */\n Account.prototype.$newMailbox = function(path, name) {\n var _this = this;\n\n return Account.$$resource.post(path.toString(), 'createFolder', {name: name}).then(function() {\n _this.$getMailboxes({reload: true});\n });\n };\n\n /**\n * @function $newMessage\n * @memberof Account.prototype\n * @desc Prepare a new Message object associated to the appropriate mailbox.\n * @returns a promise of the HTTP operations\n */\n Account.prototype.$newMessage = function() {\n var _this = this;\n\n // Query account for draft folder and draft UID\n return Account.$$resource.fetch(this.id.toString(), 'compose').then(function(data) {\n Account.$log.debug('New message (compose): ' + JSON.stringify(data, undefined, 2));\n var message = new Account.$Message(data.accountId, _this.$getMailboxByPath(data.mailboxPath), data);\n return message;\n }).then(function(message) {\n // Fetch draft initial data\n return Account.$$resource.fetch(message.$absolutePath({asDraft: true}), 'edit').then(function(data) {\n Account.$log.debug('New message (edit): ' + JSON.stringify(data, undefined, 2));\n angular.extend(message.editable, data);\n return message;\n });\n });\n };\n\n /**\n * @function $addDelegate\n * @memberof Account.prototype\n * @param {Object} user - a User object with minimal set of attributes (uid, isGroup, cn, c_email)\n * @desc Remove a user from the account's delegates\n * @see {@link User.$filter}\n */\n Account.prototype.$addDelegate = function(user) {\n var _this = this,\n deferred = Account.$q.defer(),\n param = {uid: user.uid};\n if (!user.uid || _.indexOf(_.pluck(this.delegates, 'uid'), user.uid) > -1) {\n // No UID specified or user already in delegates\n deferred.resolve();\n }\n else {\n Account.$$resource.fetch(this.id.toString(), 'addDelegate', param).then(function() {\n _this.delegates.push(user);\n deferred.resolve(_this.users);\n }, function(data, status) {\n deferred.reject(l('An error occured please try again.'));\n });\n }\n return deferred.promise;\n };\n\n /**\n * @function $removeDelegate\n * @memberof Account.prototype\n * @param {Object} user - a User object with minimal set of attributes (uid, isGroup, cn, c_email)\n * @desc Remove a user from the account's delegates\n * @return a promise of the server call to remove the user from the account's delegates\n */\n Account.prototype.$removeDelegate = function(uid) {\n var _this = this,\n param = {uid: uid};\n return Account.$$resource.fetch(this.id.toString(), 'removeDelegate', param).then(function() {\n var i = _.indexOf(_.pluck(_this.delegates, 'uid'), uid);\n if (i >= 0) {\n _this.delegates.splice(i, 1);\n }\n });\n };\n \n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Mailbox\n * @constructor\n * @param {object} futureMailboxData - either an object literal or a promise\n */\n function Mailbox(account, futureMailboxData) {\n this.$account = account;\n // Data is immediately available\n if (typeof futureMailboxData.then !== 'function') {\n this.init(futureMailboxData);\n if (this.name && !this.path) {\n // Create a new mailbox on the server\n var newMailboxData = Mailbox.$$resource.create('createFolder', this.name);\n this.$unwrap(newMailboxData);\n }\n }\n else {\n // The promise will be unwrapped first\n // NOTE: this condition never happen for the moment\n this.$unwrap(futureMailboxData);\n }\n }\n\n /**\n * @memberof Mailbox\n * @desc The factory we'll use to register with Angular\n * @returns the Mailbox constructor\n */\n Mailbox.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Resource', 'Message', 'Acl', 'Preferences', 'sgMailbox_PRELOAD', function($q, $timeout, $log, Settings, Resource, Message, Acl, Preferences, PRELOAD) {\n angular.extend(Mailbox, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Mail', Settings.activeUser()),\n $Message: Message,\n $$Acl: Acl,\n $Preferences: Preferences,\n $query: { sort: 'date', asc: 0 },\n selectedFolder: null,\n $refreshTimeout: null,\n PRELOAD: PRELOAD\n });\n // Initialize sort parameters from user's settings\n Preferences.ready().then(function() {\n if (Preferences.settings.Mail.SortingState) {\n Mailbox.$query.sort = Preferences.settings.Mail.SortingState[0];\n Mailbox.$query.asc = parseInt(Preferences.settings.Mail.SortingState[1]);\n }\n });\n\n return Mailbox; // return constructor\n }];\n\n /**\n * @module SOGo.MailerUI\n * @desc Factory registration of Mailbox in Angular module.\n */\n try {\n angular.module('SOGo.MailerUI');\n }\n catch(e) {\n angular.module('SOGo.MailerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.MailerUI')\n .constant('sgMailbox_PRELOAD', {\n LOOKAHEAD: 50,\n SIZE: 100\n })\n .factory('Mailbox', Mailbox.$factory);\n\n /**\n * @memberof Mailbox\n * @desc Fetch list of mailboxes of a specific account\n * @param {string} accountId - the account\n * @return a promise of the HTTP operation\n * @see {@link Account.$getMailboxes}\n */\n Mailbox.$find = function(account) {\n var path, futureMailboxData;\n\n futureMailboxData = this.$$resource.fetch(account.id.toString(), 'view');\n\n return Mailbox.$unwrapCollection(account, futureMailboxData); // a collection of mailboxes\n };\n\n /**\n * @memberof Mailbox\n * @desc Unwrap to a collection of Mailbox instances.\n * @param {string} account - the account\n * @param {promise} futureMailboxData - a promise of the mailboxes metadata\n * @returns a promise of a collection of Mailbox objects\n */\n Mailbox.$unwrapCollection = function(account, futureMailboxData) {\n var collection = [],\n // Local recursive function\n createMailboxes = function(level, mailbox) {\n for (var i = 0; i < mailbox.children.length; i++) {\n mailbox.children[i].level = level;\n mailbox.children[i] = new Mailbox(account, mailbox.children[i]);\n createMailboxes(level+1, mailbox.children[i]);\n }\n };\n //collection.$futureMailboxData = futureMailboxData;\n\n return futureMailboxData.then(function(data) {\n return Mailbox.$timeout(function() {\n // Each entry is spun up as a Mailbox instance\n angular.forEach(data.mailboxes, function(data, index) {\n data.level = 0;\n var mailbox = new Mailbox(account, data);\n createMailboxes(1, mailbox); // recursively create all sub-mailboxes\n collection.push(mailbox);\n });\n return collection;\n });\n });\n };\n\n /**\n * @memberof Mailbox\n * @desc Build the path of the mailbox (or account only).\n * @param {string} accountId - the account ID\n * @param {string} [mailboxPath] - the mailbox path\n * @returns a string representing the path relative to the mail module\n */\n Mailbox.$absolutePath = function(accountId, mailboxPath) {\n var path = [];\n\n if (mailboxPath) {\n path = _.map(mailboxPath.split('/'), function(component) {\n return 'folder' + component.asCSSIdentifier();\n });\n }\n\n path.splice(0, 0, accountId); // insert account ID\n\n return path.join('/');\n };\n\n /**\n * @function init\n * @memberof Mailbox.prototype\n * @desc Extend instance with new data and compute additional attributes.\n * @param {object} data - attributes of mailbox\n */\n Mailbox.prototype.init = function(data) {\n var _this = this;\n this.$isLoading = true;\n this.$messages = [];\n this.uidsMap = {};\n angular.extend(this, data);\n if (this.path) {\n this.id = this.$id();\n this.$acl = new Mailbox.$$Acl('Mail/' + this.id);\n }\n if (this.type) {\n this.$isEditable = this.isEditable();\n }\n if (angular.isUndefined(this.$shadowData)) {\n // Make a copy of the data for an eventual reset\n this.$shadowData = this.$omit();\n }\n };\n\n /**\n * @function getLength\n * @memberof Mailbox.prototype\n * @desc Used by md-virtual-repeat / md-on-demand\n * @returns the number of items in the mailbox\n */\n Mailbox.prototype.getLength = function() {\n return this.$messages.length;\n };\n\n /**\n * @function getItemAtIndex\n * @memberof Mailbox.prototype\n * @desc Used by md-virtual-repeat / md-on-demand\n * @returns the message as the specified index\n */\n Mailbox.prototype.getItemAtIndex = function(index) {\n var message;\n\n if (index >= 0 && index < this.$messages.length) {\n message = this.$messages[index];\n\n if (this.$loadMessage(message.uid))\n return message;\n }\n\n return null;\n };\n\n /**\n * @function $id\n * @memberof Mailbox.prototype\n * @desc Build the unique ID to identified the mailbox.\n * @returns a string representing the path relative to the mail module\n */\n Mailbox.prototype.$id = function() {\n return Mailbox.$absolutePath(this.$account.id, this.path);\n };\n\n /**\n * @function $selectedCount\n * @memberof Mailbox.prototype\n * @desc Return the number of messages selected by the user.\n * @returns the number of selected messages\n */\n Mailbox.prototype.$selectedCount = function() {\n var count;\n\n count = 0;\n if (this.$messages) {\n count = (_.filter(this.$messages, function(message) { return message.selected; })).length;\n }\n return count;\n };\n\n /**\n * @function $filter\n * @memberof Mailbox.prototype\n * @desc Fetch the messages metadata of the mailbox\n * @param {object} [sort] - sort preferences. Defaults to descendent by date.\n * @param {string} sort.match - either AND or OR\n * @param {string} sort.sort - either arrival, subject, from, to, date, or size\n * @param {boolean} sort.asc - sort is ascendant if true\n * @param {object[]} [filters] - list of filters for the query\n * @param {string} filters.searchBy - either subject, from, to, cc, or body\n * @param {string} filters.searchInput - the search string to match\n * @param {boolean} filters.negative - negate the condition\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$filter = function(sortingAttributes, filters) {\n var _this = this, options = {};\n\n if (!angular.isDefined(this.unseenCount))\n this.unseenCount = 0;\n\n this.$isLoading = true;\n\n return Mailbox.$Preferences.ready().then(function() {\n\n if (Mailbox.$refreshTimeout)\n Mailbox.$timeout.cancel(Mailbox.$refreshTimeout);\n\n if (sortingAttributes)\n // Sorting preferences are common to all mailboxes\n angular.extend(Mailbox.$query, sortingAttributes);\n\n angular.extend(options, { sortingAttributes: Mailbox.$query });\n if (angular.isDefined(filters)) {\n options.filters = _.reject(filters, function(filter) {\n return angular.isUndefined(filter.searchInput) || filter.searchInput.length === 0;\n });\n _.each(options.filters, function(filter) {\n var secondFilter,\n match = filter.searchBy.match(/(\\w+)_or_(\\w+)/);\n if (match) {\n options.sortingAttributes.match = 'OR';\n filter.searchBy = match[1];\n secondFilter = angular.copy(filter);\n secondFilter.searchBy = match[2];\n options.filters.push(secondFilter);\n }\n });\n }\n\n // Restart the refresh timer, if needed\n var refreshViewCheck = Mailbox.$Preferences.defaults.SOGoRefreshViewCheck;\n if (refreshViewCheck && refreshViewCheck != 'manually') {\n var f = angular.bind(_this, Mailbox.prototype.$filter);\n Mailbox.$refreshTimeout = Mailbox.$timeout(f, refreshViewCheck.timeInterval()*1000);\n }\n\n var futureMailboxData = Mailbox.$$resource.post(_this.id, 'view', options);\n return _this.$unwrap(futureMailboxData);\n });\n };\n\n /**\n * @function $loadMessage\n * @memberof Mailbox.prototype\n * @desc Check if the message is loaded and in any case, fetch more messages headers from the server.\n * @returns true if the message metadata are already fetched\n */\n Mailbox.prototype.$loadMessage = function(messageId) {\n var startIndex = this.uidsMap[messageId],\n endIndex,\n max = this.$messages.length,\n loaded = false,\n uids,\n futureHeadersData;\n if (angular.isDefined(this.uidsMap[messageId]) && startIndex < this.$messages.length) {\n // Index is valid\n if (angular.isDefined(this.$messages[startIndex].subject)) {// || this.$messages[startIndex].loading) {\n // Message headers are loaded or data is coming\n loaded = true;\n }\n\n // Preload more headers if possible\n endIndex = Math.min(startIndex + Mailbox.PRELOAD.LOOKAHEAD, max - 1);\n if (!angular.isDefined(this.$messages[endIndex].subject) &&\n !angular.isDefined(this.$messages[endIndex].loading)) {\n endIndex = Math.min(startIndex + Mailbox.PRELOAD.SIZE, max);\n for (uids = []; startIndex < endIndex && startIndex < max; startIndex++) {\n if (angular.isDefined(this.$messages[startIndex].subject) || this.$messages[startIndex].loading) {\n // Message at this index is already loaded; increase the end index\n endIndex++;\n }\n else {\n // Message at this index will be loaded\n uids.push(this.$messages[startIndex].uid);\n this.$messages[startIndex].loading = true;\n }\n }\n\n Mailbox.$log.debug('Loading UIDs ' + uids.join(' '));\n futureHeadersData = Mailbox.$$resource.post(this.id, 'headers', {uids: uids});\n this.$unwrapHeaders(futureHeadersData);\n }\n }\n return loaded;\n };\n\n /**\n * @function isEditable\n * @memberof Mailbox.prototype\n * @desc Checks if the mailbox is editable based on its type.\n * @returns true if the mailbox is not a special folder.\n */\n Mailbox.prototype.isEditable = function() {\n return this.type == 'folder';\n };\n\n /**\n * @function $rename\n * @memberof AddressBook.prototype\n * @desc Rename the addressbook and keep the list sorted\n * @param {string} name - the new name\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$rename = function() {\n var _this = this,\n findParent,\n deferred = Mailbox.$q.defer(),\n parent,\n children,\n i;\n\n if (this.name == this.$shadowData.name) {\n // Name hasn't changed\n deferred.resolve();\n return deferred.promise;\n }\n\n // Local recursive function\n findParent = function(parent, children) {\n var parentMailbox = null,\n mailbox = _.find(children, function(o) {\n return o.path == _this.path;\n });\n if (mailbox) {\n parentMailbox = parent;\n }\n else {\n angular.forEach(children, function(o) {\n if (!parentMailbox && o.children && o.children.length > 0) {\n parentMailbox = findParent(o, o.children);\n }\n });\n }\n return parentMailbox;\n };\n\n // Find mailbox parent\n parent = findParent(null, this.$account.$mailboxes);\n if (parent === null)\n children = this.$account.$mailboxes;\n else\n children = parent.children;\n\n // Find index of mailbox among siblings\n i = _.indexOf(_.pluck(children, 'id'), this.id);\n\n this.$save().then(function(data) {\n var sibling;\n angular.extend(_this, data); // update the path attribute\n _this.id = _this.$id();\n\n // Move mailbox among its siblings according to its new name\n children.splice(i, 1);\n sibling = _.find(children, function(o) {\n Mailbox.$log.debug(o.name + ' ? ' + _this.name);\n return (o.type == 'folder' && o.name.localeCompare(_this.name) > 0);\n });\n if (sibling) {\n i = _.indexOf(_.pluck(children, 'id'), sibling.id);\n }\n else {\n i = children.length;\n }\n children.splice(i, 0, _this);\n\n deferred.resolve();\n }, function(data) {\n deferred.reject(data);\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $compact\n * @memberof Mailbox.prototype\n * @desc Compact the mailbox\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$compact = function() {\n return Mailbox.$$resource.post(this.id, 'expunge');\n };\n\n /**\n * @function $setFolderAs\n * @memberof Mailbox.prototype\n * @desc Set a folder as Drafts/Sent/Trash\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$setFolderAs = function(type) {\n return Mailbox.$$resource.post(this.id, 'setAs' + type + 'Folder');\n };\n\n /**\n * @function $emptyTrash\n * @memberof Mailbox.prototype\n * @desc Empty the Trash folder.\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$emptyTrash = function() {\n var _this = this;\n\n return Mailbox.$$resource.post(this.id, 'emptyTrash').then(function() {\n // Remove all messages from the mailbox\n _this.$messages = [];\n _this.uidsMap = {};\n _this.unseenCount = 0;\n\n // If we had any submailboxes, lets do a refresh of the mailboxes list\n if (angular.isDefined(_this.children) && _this.children.length)\n _this.$account.$getMailboxes({reload: true});\n });\n };\n\n /**\n * @function $markAsRead\n * @memberof Mailbox.prototype\n * @desc Mark all messages from folder as read\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$markAsRead = function() {\n return Mailbox.$$resource.post(this.id, 'markRead');\n };\n\n /**\n * @function $flagMessages\n * @memberof Mailbox.prototype\n * @desc Add or remove a flag on a message set\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$flagMessages = function(uids, flags, operation) {\n var data = {msgUIDs: uids,\n flags: flags,\n operation: operation};\n\n return Mailbox.$$resource.post(this.id, 'addOrRemoveLabel', data);\n };\n\n /**\n * @function $delete\n * @memberof Mailbox.prototype\n * @desc Delete the mailbox from the server\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$delete = function() {\n var _this = this,\n deferred = Mailbox.$q.defer(),\n promise;\n\n promise = Mailbox.$$resource.remove(this.id);\n\n promise.then(function() {\n _this.$account.$getMailboxes({reload: true});\n deferred.resolve(true);\n }, function(data, status) {\n deferred.reject(data);\n });\n return deferred.promise;\n };\n\n /**\n * @function $deleteMessages\n * @memberof Mailbox.prototype\n * @desc Delete multiple messages from mailbox.\n * @return a promise of the HTTP operation\n */\n Mailbox.prototype.$deleteMessages = function(uids) {\n return Mailbox.$$resource.post(this.id, 'batchDelete', {uids: uids});\n };\n\n /**\n * @function $copyMessages\n * @memberof Mailbox.prototype\n * @desc Copy multiple messages from the current mailbox to a target one\n * @return a promise of the HTTP operation\n */\n Mailbox.prototype.$copyMessages = function(uids, folder) {\n return Mailbox.$$resource.post(this.id, 'copyMessages', {uids: uids, folder: folder});\n };\n\n /**\n * @function $moveMessages\n * @memberof Mailbox.prototype\n * @desc Move multiple messages from the current mailbox to a target one\n * @return a promise of the HTTP operation\n */\n Mailbox.prototype.$moveMessages = function(uids, folder) {\n return Mailbox.$$resource.post(this.id, 'moveMessages', {uids: uids, folder: folder});\n };\n \n /**\n * @function $reset\n * @memberof Mailbox.prototype\n * @desc Reset the original state the mailbox's data.\n */\n Mailbox.prototype.$reset = function() {\n var _this = this;\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key != 'children' && key[0] != '$') {\n delete _this[key];\n }\n });\n angular.extend(this, this.$shadowData);\n this.$shadowData = this.$omit();\n };\n\n /**\n * @function $save\n * @memberof Mailbox.prototype\n * @desc Save the mailbox to the server. This currently can only affect the name of the mailbox.\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$save = function() {\n var _this = this;\n\n return Mailbox.$$resource.save(this.id, this.$omit()).then(function(data) {\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit();\n Mailbox.$log.debug(JSON.stringify(data, undefined, 2));\n return data;\n }, function(data) {\n Mailbox.$log.error(JSON.stringify(data, undefined, 2));\n // Restore previous version\n _this.$reset();\n });\n };\n\n /**\n * @function $newMailbox\n * @memberof Mailbox.prototype\n * @desc Create a new mailbox on the server and refresh the list of mailboxes.\n * @returns a promise of the HTTP operations\n */\n Mailbox.prototype.$newMailbox = function(path, name) {\n return this.$account.$newMailbox(path, name);\n };\n\n /**\n * @function $omit\n * @memberof Mailbox.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Mailbox instance\n */\n Mailbox.prototype.$omit = function() {\n var mailbox = {};\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' &&\n key != 'children' &&\n key[0] != '$') {\n mailbox[key] = value;\n }\n });\n return mailbox;\n };\n\n /**\n * @function $unwrap\n * @memberof Mailbox.prototype\n * @desc Unwrap a promise and instanciate new Message objects using received data.\n * @param {promise} futureMailboxData - a promise of the Mailbox's metadata\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$unwrap = function(futureMailboxData) {\n var _this = this,\n deferred = Mailbox.$q.defer();\n\n this.$futureMailboxData = futureMailboxData;\n this.$futureMailboxData.then(function(data) {\n Mailbox.$timeout(function() {\n var uids, headers;\n\n _this.init(data);\n\n if (_this.uids) {\n Mailbox.$log.debug('unwrapping ' + data.uids.length + ' messages');\n\n // First entry of 'headers' are keys\n headers = _.invoke(_this.headers[0], 'toLowerCase');\n _this.headers.splice(0, 1);\n\n // First entry of 'uids' are keys when threaded view is enabled\n if (_this.threaded) {\n uids = _this.uids[0];\n _this.uids.splice(0, 1);\n }\n\n // Instanciate Message objects\n _.reduce(_this.uids, function(msgs, msg, i) {\n var data;\n if (_this.threaded)\n data = _.object(uids, msg);\n else\n data = {uid: msg.toString()};\n\n // Build map of UID <=> index\n _this.uidsMap[data.uid] = i;\n\n msgs.push(new Mailbox.$Message(_this.$account.id, _this, data, true));\n\n return msgs;\n }, _this.$messages);\n\n // Extend Message objects with received headers\n _.each(_this.headers, function(data) {\n var msg = _.object(headers, data),\n i = _this.uidsMap[msg.uid.toString()];\n _.extend(_this.$messages[i], msg);\n });\n }\n Mailbox.$log.debug('mailbox ' + _this.id + ' ready');\n _this.$isLoading = false;\n deferred.resolve(_this.$messages);\n });\n }, function(data) {\n angular.extend(_this, data);\n _this.isError = true;\n deferred.reject();\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $unwrapHeaders\n * @memberof Mailbox.prototype\n * @desc Unwrap a promise and extend matching Message objects using received data.\n * @param {promise} futureHeadersData - a promise of some messages metadata\n */\n Mailbox.prototype.$unwrapHeaders = function(futureHeadersData) {\n var _this = this;\n\n futureHeadersData.then(function(data) {\n Mailbox.$timeout(function() {\n var headers, j;\n if (data.length > 0) {\n // First entry of 'headers' are keys\n headers = _.invoke(data[0], 'toLowerCase');\n data.splice(0, 1);\n _.each(data, function(messageHeaders) {\n messageHeaders = _.object(headers, messageHeaders);\n j = _this.uidsMap[messageHeaders.uid.toString()];\n if (angular.isDefined(j)) {\n _.extend(_this.$messages[j], messageHeaders);\n }\n });\n }\n });\n });\n };\n\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Message\n * @constructor\n * @param {string} accountId - the account ID\n * @param {string} mailboxPath - an array of the mailbox path components\n * @param {object} futureAddressBookData - either an object literal or a promise\n * @param {bool} lazy - do \"lazy loading\" so we are very quick at initializing message instances\n */\n function Message(accountId, mailbox, futureMessageData, lazy) {\n this.accountId = accountId;\n this.$mailbox = mailbox;\n this.$hasUnsafeContent = false;\n this.$loadUnsafeContent = false;\n this.$showDetailedRecipients = false;\n this.editable = {to: [], cc: [], bcc: []};\n this.selected = false;\n\n // Data is immediately available\n if (typeof futureMessageData.then !== 'function') {\n //console.debug(JSON.stringify(futureMessageData, undefined, 2));\n if (angular.isDefined(lazy) && lazy) {\n this.uid = futureMessageData.uid;\n }\n else {\n angular.extend(this, futureMessageData);\n this.$formatFullAddresses();\n }\n }\n else {\n // The promise will be unwrapped first\n this.$unwrap(futureMessageData);\n }\n }\n\n /**\n * @memberof Message\n * @desc The factory we'll use to register with Angular\n * @returns the Message constructor\n */\n Message.$factory = ['$q', '$timeout', '$log', '$sce', 'sgSettings', 'Gravatar', 'Resource', 'Preferences', function($q, $timeout, $log, $sce, Settings, Gravatar, Resource, Preferences) {\n angular.extend(Message, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $sce: $sce,\n $gravatar: Gravatar,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Mail', Settings.activeUser())\n });\n // Initialize tags form user's defaults\n Preferences.ready().then(function() {\n if (Preferences.defaults.SOGoMailLabelsColors) {\n Message.$tags = Preferences.defaults.SOGoMailLabelsColors;\n }\n });\n\n return Message; // return constructor\n }];\n\n /**\n * @module SOGo.MailerUI\n * @desc Factory registration of Message in Angular module.\n */\n try {\n angular.module('SOGo.MailerUI');\n }\n catch(e) {\n angular.module('SOGo.MailerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.MailerUI')\n .factory('Message', Message.$factory);\n\n /**\n * @function filterTags\n * @memberof Message.prototype\n * @desc Search for tags (ie., mail labels) matching some criterias\n * @param {string} search - the search string to match\n * @returns a collection of strings\n */\n Message.filterTags = function(query) {\n var re = new RegExp(query, 'i');\n return _.filter(_.keys(Message.$tags), function(tag) {\n var value = Message.$tags[tag];\n return value[0].search(re) != -1;\n });\n };\n\n /**\n * @function $absolutePath\n * @memberof Message.prototype\n * @desc Build the path of the message\n * @returns a string representing the path relative to the mail module\n */\n Message.prototype.$absolutePath = function(options) {\n if (angular.isUndefined(this.id)) {\n var path;\n path = _.map(this.$mailbox.path.split('/'), function(component) {\n return 'folder' + component.asCSSIdentifier();\n });\n path.splice(0, 0, this.accountId); // insert account ID\n if (options && options.asDraft && this.draftId) {\n path.push(this.draftId); // add draft ID\n }\n else {\n path.push(this.uid); // add message UID\n }\n\n this.id = path.join('/');\n }\n\n return this.id;\n };\n\n /**\n * @function $setUID\n * @memberof Message.prototype\n * @desc Change the UID of the message. This happens when saving a draft.\n * @param {number} uid - the new message UID\n */\n Message.prototype.$setUID = function(uid) {\n var oldUID = this.uid || -1;\n\n if (oldUID != uid) {\n this.uid = uid;\n if (oldUID > -1 && this.$mailbox.uidsMap[oldUID]) {\n this.$mailbox.uidsMap[uid] = this.$mailbox.uidsMap[oldUID];\n this.$mailbox.uidsMap[oldUID] = null;\n }\n }\n };\n\n /**\n * @function $formatFullAddresses\n * @memberof Message.prototype\n * @desc Format all sender and recipients addresses with a complete description (name ).\n * This function also generates a gravatar for each email address, and a short name\n */\n Message.prototype.$formatFullAddresses = function() {\n var _this = this;\n var identities = _.pluck(_this.$mailbox.$account.identities, 'email');\n\n // Build long representation of email addresses\n _.each(['from', 'to', 'cc', 'bcc', 'reply-to'], function(type) {\n _.each(_this[type], function(data, i) {\n if (data.name && data.name != data.email) {\n data.full = data.name + ' <' + data.email + '>';\n\n // If we have \"Alice Foo\" as name, we grab \"Alice\"\n if (data.name.split(' ').length)\n data.shortname = data.name.split(' ')[0].replace('\\'','');\n }\n else {\n data.full = '<' + data.email + '>';\n data.shortname = data.email.split('@')[0];\n }\n\n // Generate the gravatar\n data.image = Message.$gravatar(data.email, 32);\n\n // If the current user is the recepient, overwrite\n // the short name with 'me'\n if (_.indexOf(identities, data.email) >= 0)\n data.shortname = l('me');\n });\n });\n };\n\n /**\n * @function $shortRecipients\n * @memberof Message.prototype\n * @desc Format all recipients into a very compact string\n * @returns a compacted string of all recipients\n */\n Message.prototype.$shortRecipients = function() {\n var _this = this;\n var result = [];\n\n // Build long representation of email addresses\n _.each(['to', 'cc', 'bcc'], function(type) {\n _.each(_this[type], function(data, i) {\n result.push(data.shortname);\n });\n });\n\n return result.join(', ');\n };\n\n /**\n * @function $shortAddress\n * @memberof Message.prototype\n * @desc Format the first address of a specific type with a short description.\n * @returns a string of the name or the email of the envelope address type\n */\n Message.prototype.$shortAddress = function(type) {\n var address = '';\n if (this[type] && this[type].length > 0) {\n address = this[type][0].name || this[type][0].email || '';\n }\n\n return address;\n };\n\n /**\n * @function loadUnsafeContent\n * @memberof Message.prototype\n * @desc Mark the message to load unsafe resources when calling $content().\n */\n Message.prototype.loadUnsafeContent = function() {\n this.$loadUnsafeContent = true;\n };\n\n /**\n * @function showDetailedRecipients\n * @memberof Message.prototype\n * @desc Mark the message to show all to/cc recipients.\n */\n Message.prototype.showDetailedRecipients = function() {\n this.$showDetailedRecipients = true;\n };\n\n /**\n * @function $content\n * @memberof Message.prototype\n * @desc Get the message body as accepted by SCE (Angular Strict Contextual Escaping).\n * @returns the HTML representation of the body\n */\n Message.prototype.$content = function() {\n var _this = this,\n parts = [],\n _visit = function(part) {\n part.msgclass = 'msg-attachment-other';\n if (part.type == 'UIxMailPartAlternativeViewer') {\n _visit(_.find(part.content, function(alternatePart) {\n return part.preferredPart == alternatePart.contentType;\n }));\n }\n // Can be used for UIxMailPartMixedViewer and UIxMailPartMessageViewer\n else if (angular.isArray(part.content)) {\n _.each(part.content, function(mixedPart) {\n _visit(mixedPart);\n });\n }\n else {\n if (angular.isUndefined(part.safeContent)) {\n // Keep a copy of the original content\n part.safeContent = part.content;\n _this.$hasUnsafeContent = (part.safeContent.indexOf(' unsafe-') > -1);\n }\n if (part.type == 'UIxMailPartHTMLViewer') {\n part.html = true;\n if (_this.$loadUnsafeContent) {\n if (angular.isUndefined(part.unsafeContent)) {\n part.unsafeContent = document.createElement('div');\n part.unsafeContent.innerHTML = part.safeContent;\n angular.forEach(['src', 'data', 'classid', 'background', 'style'], function(suffix) {\n var elements = part.unsafeContent.querySelectorAll('[unsafe-' + suffix + ']'),\n element,\n value,\n i;\n for (i = 0; i < elements.length; i++) {\n element = angular.element(elements[i]);\n value = element.attr('unsafe-' + suffix);\n element.attr(suffix, value);\n element.removeAttr('unsafe-' + suffix);\n }\n });\n }\n part.content = Message.$sce.trustAs('html', part.unsafeContent.innerHTML);\n }\n else {\n part.content = Message.$sce.trustAs('html', part.safeContent);\n }\n parts.push(part);\n }\n else if (part.type == 'UIxMailPartICalViewer' ||\n part.type == 'UIxMailPartImageViewer' ||\n part.type == 'UIxMailPartLinkViewer') {\n\n // UIxMailPartICalViewer injects 'participants'\n if (part.participants) {\n _.each(part.participants, function(participant) {\n participant.image = Message.$gravatar(participant.email, 32);\n });\n }\n\n if (part.type == 'UIxMailPartImageViewer')\n part.msgclass = 'msg-attachment-image';\n\n // Trusted content that can be compiled (Angularly-speaking)\n part.compile = true;\n parts.push(part);\n }\n else {\n part.html = true;\n part.content = Message.$sce.trustAs('html', part.safeContent);\n parts.push(part);\n }\n }\n };\n _visit(this.parts);\n\n return parts;\n };\n\n /**\n * @function $editableContent\n * @memberof Message.prototype\n * @desc First, fetch the draft ID that corresponds to the temporary draft object on the SOGo server.\n * Secondly, fetch the editable message body along with other metadata such as the recipients.\n * @returns the HTML representation of the body\n */\n Message.prototype.$editableContent = function() {\n var _this = this;\n\n return Message.$$resource.fetch(this.$absolutePath(), 'edit').then(function(data) {\n angular.extend(_this, data);\n return Message.$$resource.fetch(_this.$absolutePath({asDraft: true}), 'edit').then(function(data) {\n Message.$log.debug('editable = ' + JSON.stringify(data, undefined, 2));\n angular.extend(_this.editable, data);\n return data.text;\n });\n });\n };\n\n /**\n * @function addTag\n * @memberof Message.prototype\n * @desc Add a mail tag on the current message.\n * @param {string} tag - the tag name\n * @returns a promise of the HTTP operation\n */\n Message.prototype.addTag = function(tag) {\n return this.$addOrRemoveTag('add', tag);\n };\n\n /**\n * @function removeTag\n * @memberof Message.prototype\n * @desc Remove a mail tag from the current message.\n * @param {string} tag - the tag name\n * @returns a promise of the HTTP operation\n */\n Message.prototype.removeTag = function(tag) {\n return this.$addOrRemoveTag('remove', tag);\n };\n\n /**\n * @function $addOrRemoveTag\n * @memberof Message.prototype\n * @desc Add or remove a mail tag on the current message.\n * @param {string} operation - the operation name to perform\n * @param {string} tag - the tag name\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$addOrRemoveTag = function(operation, tag) {\n var data = {\n operation: operation,\n msgUIDs: [this.uid],\n flags: tag\n };\n\n if (tag)\n return Message.$$resource.post(this.$mailbox.$id(), 'addOrRemoveLabel', data);\n };\n\n /**\n * @function $imipAction\n * @memberof Message.prototype\n * @desc Perform IMIP actions on the current message.\n * @param {string} path - the path of the IMIP calendar part \n * @param {string} action - the the IMIP action to perform\n * @param {object} data - the delegation info \n */\n Message.prototype.$imipAction = function(path, action, data) {\n var _this = this;\n Message.$$resource.post([this.$absolutePath(), path].join('/'), action, data).then(function(data) {\n Message.$timeout(function() {\n _this.$reload();\n }, function() {\n // TODO: show toast\n });\n });\n };\n\n /**\n * @function $sendMDN\n * @memberof Message.prototype\n * @desc Send MDN response for current email message\n */\n Message.prototype.$sendMDN = function() {\n this.shouldAskReceipt = 0;\n return Message.$$resource.post(this.$absolutePath(), 'sendMDN');\n };\n\n /**\n * @function $deleteAttachment\n * @memberof Message.prototype\n * @desc Delete an attachment from a message being composed\n * @param {string} filename - the filename of the attachment to delete\n */\n Message.prototype.$deleteAttachment = function(filename) {\n var action = 'deleteAttachment?filename=' + filename;\n var _this = this;\n Message.$$resource.post(this.$absolutePath({asDraft: true}), action).then(function(data) {\n Message.$timeout(function() {\n _this.editable.attachmentAttrs = _.filter(_this.editable.attachmentAttrs, function(attachment) {\n return attachment.filename != filename;\n });\n }, function() {\n // TODO: show toast\n });\n });\n };\n\n /**\n * @function $markAsFlaggedOrUnflagged\n * @memberof Message.prototype\n * @desc Add or remove a the \\\\Flagged flag on the current message.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.toggleFlag = function() {\n var _this = this,\n action = 'markMessageFlagged';\n\n if (this.isflagged)\n action = 'markMessageUnflagged';\n\n return Message.$$resource.post(this.$absolutePath(), action).then(function(data) {\n Message.$timeout(function() {\n _this.isflagged = !_this.isflagged;\n });\n });\n };\n\n /**\n * @function $reload\n * @memberof Message.prototype\n * @desc Fetch the viewable message body along with other metadata such as the list of attachments.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$reload = function() {\n var futureMessageData;\n\n futureMessageData = Message.$$resource.fetch(this.$absolutePath(), 'view');\n\n return this.$unwrap(futureMessageData);\n };\n\n /**\n * @function $reply\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a reply to the sender.\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$reply = function() {\n return this.$newDraft('reply');\n };\n\n /**\n * @function $replyAll\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a reply to the sender and all recipients.\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$replyAll = function() {\n return this.$newDraft('replyall');\n };\n\n /**\n * @function $forward\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a forward.\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$forward = function() {\n return this.$newDraft('forward');\n };\n\n /**\n * @function $newDraft\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a reply or a forward of the current message and associated\n * to the draft mailbox.\n * @see {@link Account.$newMessage}\n * @see {@link Message.$editableContent}\n * @see {@link Message.$reply}\n * @see {@link Message.$replyAll}\n * @see {@link Message.$forwad}\n * @param {string} action - the HTTP action to perform on the message\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$newDraft = function(action) {\n var _this = this;\n\n // Query server for draft folder and draft UID\n return Message.$$resource.fetch(this.$absolutePath(), action).then(function(data) {\n var mailbox, message;\n Message.$log.debug('New ' + action + ': ' + JSON.stringify(data, undefined, 2));\n mailbox = _this.$mailbox.$account.$getMailboxByPath(data.mailboxPath);\n message = new Message(data.accountId, mailbox, data);\n // Fetch draft initial data\n return Message.$$resource.fetch(message.$absolutePath({asDraft: true}), 'edit').then(function(data) {\n Message.$log.debug('New ' + action + ': ' + JSON.stringify(data, undefined, 2));\n angular.extend(message.editable, data);\n return message;\n });\n });\n };\n\n /**\n * @function $save\n * @memberof Message.prototype\n * @desc Save the message to the server.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$save = function() {\n var _this = this,\n data = this.editable;\n\n Message.$log.debug('save = ' + JSON.stringify(data, undefined, 2));\n\n return Message.$$resource.save(this.$absolutePath({asDraft: true}), data).then(function(response) {\n Message.$log.debug('save = ' + JSON.stringify(response, undefined, 2));\n _this.$setUID(response.uid);\n _this.$reload(); // fetch a new viewable version of the message\n });\n };\n\n /**\n * @function $send\n * @memberof Message.prototype\n * @desc Send the message.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$send = function() {\n var data = angular.copy(this.editable),\n deferred = Message.$q.defer();\n\n Message.$log.debug('send = ' + JSON.stringify(data, undefined, 2));\n\n Message.$$resource.post(this.$absolutePath({asDraft: true}), 'send', data).then(function(data) {\n if (data.status == 'success') {\n deferred.resolve(data);\n }\n else {\n deferred.reject(data);\n }\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $unwrap\n * @memberof Message.prototype\n * @desc Unwrap a promise. \n * @param {promise} futureMessageData - a promise of some of the Message's data\n */\n Message.prototype.$unwrap = function(futureMessageData) {\n var _this = this,\n deferred = Message.$q.defer();\n\n // Expose the promise\n this.$futureMessageData = futureMessageData;\n\n // Resolve the promise\n this.$futureMessageData.then(function(data) {\n // Calling $timeout will force Angular to refresh the view\n Message.$timeout(function() {\n angular.extend(_this, data);\n _this.$formatFullAddresses();\n _this.$loadUnsafeContent = false;\n deferred.resolve(_this);\n });\n if (!_this.isread) {\n Message.$$resource.fetch(_this.$absolutePath(), 'markMessageRead').then(function() {\n Message.$timeout(function() {\n _this.isread = true;\n _this.$mailbox.unseenCount--;\n });\n });\n }\n }, function(data) {\n angular.extend(_this, data);\n _this.isError = true;\n Message.$log.error(_this.error);\n deferred.reject();\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $omit\n * @memberof Message.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Message instance\n */\n Message.prototype.$omit = function() {\n var message = {};\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key[0] != '$') {\n message[key] = value;\n }\n });\n\n // Format addresses as arrays\n _.each(['from', 'to', 'cc', 'bcc', 'reply-to'], function(type) {\n if (message[type])\n message[type] = _.invoke(message[type].split(','), 'trim');\n });\n\n //Message.$log.debug(JSON.stringify(message, undefined, 2));\n return message;\n };\n\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MailboxController.$inject = ['$state', '$timeout', '$mdDialog', 'stateAccounts', 'stateAccount', 'stateMailbox', 'encodeUriFilter', 'sgFocus', 'Dialog', 'Account', 'Mailbox'];\n function MailboxController($state, $timeout, $mdDialog, stateAccounts, stateAccount, stateMailbox, encodeUriFilter, focus, Dialog, Account, Mailbox) {\n var vm = this, messageDialog = null;\n\n Mailbox.selectedFolder = stateMailbox;\n\n vm.service = Mailbox;\n vm.accounts = stateAccounts;\n vm.account = stateAccount;\n vm.selectedFolder = stateMailbox;\n vm.selectMessage = selectMessage;\n vm.unselectMessages = unselectMessages;\n vm.confirmDeleteSelectedMessages = confirmDeleteSelectedMessages;\n vm.copySelectedMessages = copySelectedMessages;\n // vm.moveSelectedMessages = moveSelectedMessages;\n vm.saveSelectedMessages = saveSelectedMessages;\n vm.markSelectedMessagesAsFlagged = markSelectedMessagesAsFlagged;\n vm.markSelectedMessagesAsUnread = markSelectedMessagesAsUnread;\n vm.selectAll = selectAll;\n vm.sort = sort;\n vm.sortedBy = sortedBy;\n vm.cancelSearch = cancelSearch;\n vm.newMessage = newMessage;\n vm.mode = { search: false };\n\n function selectMessage(message) {\n $state.go('mail.account.mailbox.message', {accountId: stateAccount.id, mailboxId: encodeUriFilter(stateMailbox.path), messageId: message.uid});\n }\n\n function unselectMessages() {\n _.each(vm.selectedFolder.$messages, function(message) { message.selected = false; });\n }\n\n function confirmDeleteSelectedMessages() {\n Dialog.confirm(l('Warning'),\n l('Are you sure you want to delete the selected messages?'))\n .then(function() {\n // User confirmed the deletion\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n vm.selectedFolder.$deleteMessages(selectedUIDs).then(function() {\n // Decrement the unseenCount accordingly\n var unseenCount = _.filter(selectedMessages, function(message) { return !message.isread; });\n vm.selectedFolder.$messages = _.difference(vm.selectedFolder.$messages, selectedMessages);\n vm.selectedFolder.unseenCount =- unseenCount;\n }, function(error) {\n Dialog.alert(l('Error'), error);\n });\n });\n }\n\n function copySelectedMessages(folder) {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n vm.selectedFolder.$copyMessages(selectedUIDs, '/' + folder).then(function() {\n // TODO: refresh target mailbox?\n }, function(error) {\n Dialog.alert(l('Error'), error);\n });\n }\n\n // function moveSelectedMessages(folder) {\n // var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected });\n // var selectedUIDs = _.pluck(selectedMessages, 'uid');\n // vm.selectedFolder.$moveMessages(selectedUIDs, '/' + folder).then(function() {\n // // TODO: refresh target mailbox?\n // vm.selectedFolder.$messages = _.difference(vm.selectedFolder.$messages, selectedMessages);\n // });\n // }\n\n function saveSelectedMessages() {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n window.location.href = ApplicationBaseURL + '/' + vm.selectedFolder.id + '/saveMessages?uid=' + selectedUIDs.join(\",\");\n }\n\n function selectAll() {\n _.each(vm.selectedFolder.$messages, function(message) {\n message.selected = true;\n });\n }\n\n function markSelectedMessagesAsFlagged() {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n\n vm.selectedFolder.$flagMessages(selectedUIDs, '\\\\Flagged', 'add').then(function(d) {\n // Success\n _.forEach(selectedMessages, function(message) {\n message.isflagged = true;\n });\n });\n }\n\n function markSelectedMessagesAsUnread() {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n\n vm.selectedFolder.$flagMessages(selectedUIDs, 'seen', 'remove').then(function(d) {\n // Success\n _.forEach(selectedMessages, function(message) {\n message.isread = false;\n vm.selectedFolder.unseenCount++;\n });\n });\n }\n\n function sort(field) {\n vm.selectedFolder.$filter({ sort: field });\n }\n\n function sortedBy(field) {\n return Mailbox.$query.sort == field;\n }\n\n function cancelSearch() {\n vm.mode.search = false;\n vm.selectedFolder.$filter();\n }\n\n function newMessage($event) {\n var message;\n\n if (messageDialog === null) {\n message = vm.account.$newMessage();\n messageDialog = $mdDialog\n .show({\n parent: angular.element(document.body),\n targetEvent: $event,\n clickOutsideToClose: false,\n escapeToClose: false,\n templateUrl: 'UIxMailEditor',\n controller: 'MessageEditorController',\n controllerAs: 'editor',\n locals: {\n stateAccounts: vm.accounts,\n stateMessage: message,\n stateRecipients: []\n }\n })\n .finally(function() {\n messageDialog = null;\n });\n }\n }\n }\n\n angular\n .module('SOGo.MailerUI') \n .controller('MailboxController', MailboxController); \n})();\n\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MailboxesController.$inject = ['$state', '$timeout', '$mdDialog', 'sgFocus', 'encodeUriFilter', 'Dialog', 'sgSettings', 'Account', 'Mailbox', 'User', 'Preferences', 'stateAccounts'];\n function MailboxesController($state, $timeout, $mdDialog, focus, encodeUriFilter, Dialog, Settings, Account, Mailbox, User, Preferences, stateAccounts) {\n var vm = this,\n account,\n mailbox;\n\n vm.service = Mailbox;\n vm.accounts = stateAccounts;\n vm.newFolder = newFolder;\n vm.delegate = delegate;\n vm.editFolder = editFolder;\n vm.revertEditing = revertEditing;\n vm.selectFolder = selectFolder;\n vm.saveFolder = saveFolder;\n vm.compactFolder = compactFolder;\n vm.emptyTrashFolder = emptyTrashFolder;\n vm.exportMails = exportMails;\n vm.confirmDelete = confirmDelete;\n vm.markFolderRead = markFolderRead;\n vm.share = share;\n vm.metadataForFolder = metadataForFolder;\n vm.setFolderAs = setFolderAs;\n vm.refreshUnseenCount = refreshUnseenCount;\n\n if ($state.current.name == 'mail' && vm.accounts.length > 0 && vm.accounts[0].$mailboxes.length > 0) {\n // Redirect to first mailbox of first account if no mailbox is selected\n account = vm.accounts[0];\n mailbox = account.$mailboxes[0];\n $state.go('mail.account.mailbox', { accountId: account.id, mailboxId: encodeUriFilter(mailbox.path) });\n }\n\n function newFolder(parentFolder) {\n Dialog.prompt(l('New folder'),\n l('Enter the new name of your folder :'))\n .then(function(name) {\n parentFolder.$newMailbox(parentFolder.id, name)\n .then(function() {\n // success\n }, function(data, status) {\n Dialog.alert(l('An error occured while creating the mailbox \"%{0}\".', name),\n l(data.error));\n });\n });\n }\n\n function delegate(account) {\n $mdDialog.show({\n templateUrl: account.id + '/delegation', // UI/Templates/MailerUI/UIxMailUserDelegation.wox\n controller: MailboxDelegationController,\n controllerAs: 'delegate',\n clickOutsideToClose: true,\n escapeToClose: true,\n locals: {\n User: User,\n account: account\n }\n });\n\n /**\n * @ngInject\n */\n MailboxDelegationController.$inject = ['$scope', '$mdDialog', 'User', 'account'];\n function MailboxDelegationController($scope, $mdDialog, User, account) {\n var vm = this;\n\n vm.users = account.delegates;\n vm.account = account;\n vm.userToAdd = '';\n vm.searchText = '';\n vm.userFilter = userFilter;\n vm.closeModal = closeModal;\n vm.removeUser = removeUser;\n vm.addUser = addUser;\n\n function userFilter($query) {\n return User.$filter($query, account.delegates);\n }\n\n function closeModal() {\n $mdDialog.hide();\n }\n\n function removeUser(user) {\n account.$removeDelegate(user.uid).catch(function(data, status) {\n Dialog.alert(l('Warning'), l('An error occured please try again.'));\n });\n }\n\n function addUser(data) {\n if (data) {\n account.$addDelegate(data).then(function() {\n vm.userToAdd = '';\n vm.searchText = '';\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n }\n }\n } // delegate\n\n function editFolder(folder) {\n vm.editMode = folder.path;\n focus('mailboxName_' + folder.path);\n }\n\n function revertEditing(folder) {\n folder.$reset();\n vm.editMode = false;\n }\n\n function selectFolder(account, folder) {\n if (vm.editMode == folder.path)\n return;\n vm.editMode = false;\n $state.go('mail.account.mailbox', { accountId: account.id, mailboxId: encodeUriFilter(folder.path) });\n }\n\n function saveFolder(folder) {\n folder.$rename();\n }\n\n function compactFolder(folder) {\n folder.$compact().then(function() {\n // Success\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n\n function emptyTrashFolder(folder) {\n folder.$emptyTrash().then(function() {\n // Success\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n\n function exportMails(folder) {\n window.location.href = ApplicationBaseURL + '/' + folder.id + '/exportFolder';\n }\n\n function confirmDelete(folder) {\n Dialog.confirm(l('Confirmation'), l('Do you really want to move this folder into the trash ?'))\n .then(function() {\n folder.$delete()\n .then(function() {\n $state.go('mail');\n }, function(data, status) {\n Dialog.alert(l('An error occured while deleting the mailbox \"%{0}\".', folder.name),\n l(data.error));\n });\n });\n }\n\n function markFolderRead(folder) {\n folder.$markAsRead();\n }\n\n function share(folder) {\n // Fetch list of ACL users\n folder.$acl.$users().then(function() {\n // Show ACL editor\n $mdDialog.show({\n templateUrl: folder.id + '/UIxAclEditor', // UI/Templates/UIxAclEditor.wox\n controller: 'AclController', // from the ng module SOGo.Common\n controllerAs: 'acl',\n clickOutsideToClose: true,\n escapeToClose: true,\n locals: {\n usersWithACL: folder.$acl.users,\n User: User,\n folder: folder\n }\n });\n });\n } // share\n\n function metadataForFolder(folder) {\n if (folder.type == 'inbox')\n return {name: folder.name, icon:'inbox'};\n else if (folder.type == 'draft')\n return {name: l('DraftsFolderName'), icon: 'drafts'};\n else if (folder.type == 'sent')\n return {name: l('SentFolderName'), icon: 'send'};\n else if (folder.type == 'trash')\n return {name: l('TrashFolderName'), icon: 'delete'};\n else if (folder.type == 'additional')\n return {name: folder.name, icon: 'folder_shared'};\n\n //if ($rootScope.currentFolder == folder)\n // return 'folder_open';\n\n return {name: folder.name, icon: 'folder'};\n }\n\n function setFolderAs(folder, type) {\n folder.$setFolderAs(type).then(function() {\n folder.$account.$getMailboxes({reload: true});\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n\n function refreshUnseenCount() {\n var unseenCountFolders = window.unseenCountFolders;\n\n _.forEach(vm.accounts, function(account) {\n\n // Always include the INBOX\n if (!_.includes(unseenCountFolders, account.id + '/folderINBOX'))\n unseenCountFolders.push(account.id + '/folderINBOX');\n\n _.forEach(account.$$flattenMailboxes, function(mailbox) {\n if (angular.isDefined(mailbox.unseenCount) &&\n !_.includes(unseenCountFolders, mailbox.id))\n unseenCountFolders.push(mailbox.id);\n });\n });\n\n Account.$$resource.post('', 'unseenCount', {mailboxes: unseenCountFolders}).then(function(data) {\n _.forEach(vm.accounts, function(account) {\n _.forEach(account.$$flattenMailboxes, function(mailbox) {\n if (data[mailbox.id])\n mailbox.unseenCount = data[mailbox.id];\n });\n });\n });\n\n Preferences.ready().then(function() {\n var refreshViewCheck = Preferences.defaults.SOGoRefreshViewCheck;\n if (refreshViewCheck && refreshViewCheck != 'manually')\n $timeout(vm.refreshUnseenCount, refreshViewCheck.timeInterval()*1000);\n });\n }\n\n vm.refreshUnseenCount();\n }\n\n angular\n .module('SOGo.MailerUI') \n .controller('MailboxesController', MailboxesController); \n})();\n\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MessageController.$inject = ['$scope', '$state', '$mdDialog', 'stateAccounts', 'stateAccount', 'stateMailbox', 'stateMessage', 'encodeUriFilter', 'sgFocus', 'Dialog', 'Account', 'Mailbox', 'Message'];\n function MessageController($scope, $state, $mdDialog, stateAccounts, stateAccount, stateMailbox, stateMessage, encodeUriFilter, focus, Dialog, Account, Mailbox, Message) {\n var vm = this, messageDialog = null;\n\n vm.accounts = stateAccounts;\n vm.account = stateAccount;\n vm.mailbox = stateMailbox;\n vm.message = stateMessage;\n vm.service = Message;\n vm.tags = { searchText: '', selected: '' };\n vm.doDelete = doDelete;\n vm.close = close;\n vm.reply = reply;\n vm.replyAll = replyAll;\n vm.forward = forward;\n vm.edit = edit;\n vm.newMessage = newMessage;\n vm.saveMessage = saveMessage;\n vm.viewRawSource = viewRawSource;\n\n // Watch the message model \"flags\" attribute to remove on-the-fly a tag from the IMAP message\n // when removed from the message viewer.\n // TODO: this approach should be reviewed once md-chips supports ng-change.\n $scope.$watchCollection('viewer.message.flags', function(oldTags, newTags) {\n _.each(_.difference(newTags, oldTags), function(tag) {\n vm.message.removeTag(tag);\n });\n });\n\n function doDelete() {\n stateMailbox.$deleteMessages([stateMessage.uid]).then(function() {\n // Remove message from list of messages\n var index = _.findIndex(stateMailbox.$messages, function(o) {\n return o.uid == stateMessage.uid;\n });\n if (index != -1)\n stateMailbox.$messages.splice(index, 1);\n // Remove message object from scope\n vm.message = null;\n $state.go('mail.account.mailbox', { accountId: stateAccount.id, mailboxId: encodeUriFilter(stateMailbox.path) });\n });\n }\n\n function showMailEditor($event, message, recipients) {\n if (messageDialog === null) {\n if (!angular.isDefined(recipients))\n recipients = [];\n\n messageDialog = $mdDialog\n .show({\n parent: angular.element(document.body),\n targetEvent: $event,\n clickOutsideToClose: false,\n escapeToClose: false,\n templateUrl: 'UIxMailEditor',\n controller: 'MessageEditorController',\n controllerAs: 'editor',\n locals: {\n stateAccounts: vm.accounts,\n stateMessage: message,\n stateRecipients: recipients\n }\n })\n .finally(function() {\n messageDialog = null;\n });\n }\n }\n\n function close() {\n $state.go('mail.account.mailbox', { accountId: stateAccount.id, mailboxId: encodeUriFilter(stateMailbox.path) }).then(function() {\n vm.message = null;\n delete stateMailbox.selectedMessage;\n });\n }\n\n function reply($event) {\n var message = vm.message.$reply();\n showMailEditor($event, message);\n }\n\n function replyAll($event) {\n var message = vm.message.$replyAll();\n showMailEditor($event, message);\n }\n\n function forward($event) {\n var message = vm.message.$forward();\n showMailEditor($event, message);\n }\n\n function edit($event) {\n vm.message.$editableContent().then(function() {\n showMailEditor($event, vm.message);\n });\n }\n\n function newMessage($event, recipient) {\n var message = vm.account.$newMessage();\n showMailEditor($event, message, [recipient]);\n }\n\n function saveMessage() {\n window.location.href = ApplicationBaseURL + '/' + vm.mailbox.id + '/saveMessages?uid=' + vm.message.uid;\n }\n\n function viewRawSource($event) {\n Message.$$resource.post(vm.message.id, \"viewsource\").then(function(data) {\n $mdDialog.show({\n parent: angular.element(document.body),\n targetEvent: $event,\n clickOutsideToClose: true,\n escapeToClose: true,\n template: [\n '',\n ' ',\n '
',\n            data,\n            '    
',\n '
',\n '
',\n ' ' + l('Close') + '',\n '
',\n '
'\n ].join(''),\n controller: MessageRawSourceDialogController\n });\n\n /**\n * @ngInject\n */\n MessageRawSourceDialogController.$inject = ['scope', '$mdDialog'];\n function MessageRawSourceDialogController(scope, $mdDialog) {\n scope.close = function() {\n $mdDialog.hide();\n };\n }\n });\n }\n }\n \n angular\n .module('SOGo.MailerUI') \n .controller('MessageController', MessageController); \n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MessageEditorController.$inject = ['$stateParams', '$state', '$q', '$mdDialog', 'FileUploader', 'stateAccounts', 'stateMessage', 'stateRecipients', '$timeout', 'encodeUriFilter', 'sgFocus', 'Dialog', 'Account', 'Mailbox', 'AddressBook', 'Preferences'];\n function MessageEditorController($stateParams, $state, $q, $mdDialog, FileUploader, stateAccounts, stateMessage, stateRecipients, $timeout, encodeUriFilter, focus, Dialog, Account, Mailbox, AddressBook, Preferences) {\n var vm = this;\n\n vm.addRecipient = addRecipient;\n vm.autocomplete = {to: {}, cc: {}, bcc: {}};\n vm.autosave = null;\n vm.autosaveDrafts = autosaveDrafts;\n vm.hideCc = true;\n vm.hideBcc = true;\n vm.cancel = cancel;\n vm.send = send;\n vm.contactFilter = contactFilter;\n vm.identities = _.pluck(_.flatten(_.pluck(stateAccounts, 'identities')), 'full');\n vm.uploader = new FileUploader({\n url: stateMessage.$absolutePath({asDraft: true}) + '/save',\n autoUpload: true,\n alias: 'attachments',\n onProgressItem: function(item, progress) {\n console.debug(item); console.debug(progress);\n },\n onSuccessItem: function(item, response, status, headers) {\n stateMessage.$setUID(response.uid);\n stateMessage.$reload();\n console.debug(item); console.debug('success = ' + JSON.stringify(response, undefined, 2));\n },\n onCancelItem: function(item, response, status, headers) {\n console.debug(item); console.debug('cancel = ' + JSON.stringify(response, undefined, 2));\n\n // We remove the attachment\n stateMessage.$deleteAttachment(item.file.name);\n this.removeFromQueue(item);\n },\n onErrorItem: function(item, response, status, headers) {\n console.debug(item); console.debug('error = ' + JSON.stringify(response, undefined, 2));\n }\n });\n\n if ($stateParams.actionName == 'reply') {\n stateMessage.$reply().then(function(msgObject) {\n vm.message = msgObject;\n vm.hideCc = (!msgObject.editable.cc || msgObject.editable.cc.length === 0);\n vm.hideBcc = (!msgObject.editable.bcc || msgObject.editable.bcc.length === 0);\n });\n }\n else if ($stateParams.actionName == 'replyall') {\n stateMessage.$replyAll().then(function(msgObject) {\n vm.message = msgObject;\n vm.hideCc = (!msgObject.editable.cc || msgObject.editable.cc.length === 0);\n vm.hideBcc = (!msgObject.editable.bcc || msgObject.editable.bcc.length === 0);\n });\n }\n else if ($stateParams.actionName == 'forward') {\n stateMessage.$forward().then(function(msgObject) {\n vm.message = msgObject;\n });\n }\n else if (angular.isDefined(stateMessage)) {\n vm.message = stateMessage;\n }\n\n if (angular.isDefined(stateRecipients)) {\n vm.message.editable.to = _.union(vm.message.editable.to, _.pluck(stateRecipients, 'full'));\n }\n\n function cancel() {\n // TODO: delete draft?\n if (vm.autosave)\n $timeout.cancel(vm.autosave);\n\n $mdDialog.cancel();\n }\n\n function send() {\n if (vm.autosave)\n $timeout.cancel(vm.autosave);\n\n vm.message.$send().then(function(data) {\n $mdDialog.hide();\n }, function(data) {\n Dialog.alert(l(data.status), l(data.message));\n });\n }\n\n function contactFilter($query) {\n return AddressBook.$filterAll($query);\n }\n\n function addRecipient(user) {\n var recipient = [];\n\n if (angular.isString(user))\n return user;\n if (user.$$fullname)\n recipient.push(user.$$fullname);\n if (user.$$email)\n recipient.push('<' + user.$$email + '>');\n\n return recipient.join(' ');\n }\n\n // Drafts autosaving\n function autosaveDrafts() {\n vm.message.$save();\n if (Preferences.defaults.SOGoMailAutoSave)\n vm.autosave = $timeout(vm.autosaveDrafts, Preferences.defaults.SOGoMailAutoSave*1000*60);\n }\n\n // Select list based on user's settings\n Preferences.ready().then(function() {\n if (Preferences.defaults.SOGoMailAutoSave)\n vm.autosave = $timeout(vm.autosaveDrafts, Preferences.defaults.SOGoMailAutoSave*1000*60);\n vm.localeCode = Preferences.defaults.LocaleCode;\n });\n }\n\n angular\n .module('SOGo.MailerUI') \n .controller('MessageEditorController', MessageEditorController); \n})();\n"]} \ No newline at end of file +{"version":3,"file":"Mailer.services.js","sources":["Mailer/Account.service.js","Mailer/Mailbox.service.js","Mailer/Message.service.js","Mailer/MailboxController.js","Mailer/MailboxesController.js","Mailer/MessageController.js","Mailer/MessageEditorController.js"],"names":["Account","futureAccountData","then","angular","extend","this","_","each","identities","identity","fullName","full","email","$log","debug","JSON","stringify","undefined","$factory","$q","$timeout","Settings","Resource","Mailbox","Message","$$resource","activeUser","$Mailbox","$Message","module","e","factory","$findAll","data","$unwrapCollection","fetch","o","collection","forEach","i","id","prototype","$getMailboxes","options","_this","$mailboxes","reload","$find","$flattenMailboxes","when","allMailboxes","_visit","mailboxes","push","children","length","$$flattenMailboxes","$getMailboxByType","type","mailbox","_find","find","console","specialMailboxes","$getMailboxByPath","path","$newMailbox","name","post","toString","$newMessage","message","accountId","mailboxPath","$absolutePath","asDraft","editable","$addDelegate","user","deferred","defer","param","uid","indexOf","pluck","delegates","resolve","users","status","reject","l","promise","$removeDelegate","splice","account","futureMailboxData","$account","init","newMailboxData","create","$unwrap","Acl","Preferences","PRELOAD","$$Acl","$Preferences","$query","sort","asc","selectedFolder","$refreshTimeout","ready","settings","Mail","SortingState","parseInt","constant","LOOKAHEAD","SIZE","createMailboxes","level","index","map","split","component","asCSSIdentifier","join","$isLoading","$messages","uidsMap","$id","$acl","$isEditable","isEditable","isUndefined","$shadowData","$omit","getLength","getItemAtIndex","$loadMessage","$selectedCount","count","filter","selected","$filter","sortingAttributes","filters","isDefined","unseenCount","cancel","searchInput","secondFilter","match","searchBy","copy","refreshViewCheck","defaults","SOGoRefreshViewCheck","f","bind","timeInterval","messageId","endIndex","uids","futureHeadersData","startIndex","max","loaded","subject","Math","min","loading","$unwrapHeaders","$rename","findParent","parent","parentMailbox","$save","sibling","localeCompare","$compact","$setFolderAs","$emptyTrash","$markAsRead","$flagMessages","flags","operation","msgUIDs","$delete","remove","$deleteMessages","$copyMessages","folder","$moveMessages","$reset","value","key","save","error","$futureMailboxData","headers","invoke","threaded","reduce","msgs","msg","object","isError","j","messageHeaders","futureMessageData","lazy","$mailbox","$hasUnsafeContent","$loadUnsafeContent","$showDetailedRecipients","to","cc","bcc","$formatFullAddresses","$sce","Gravatar","$gravatar","SOGoMailLabelsColors","$tags","filterTags","query","re","RegExp","keys","tag","search","draftId","$setUID","oldUID","shortname","replace","image","$shortRecipients","result","$shortAddress","address","loadUnsafeContent","showDetailedRecipients","$content","parts","part","msgclass","content","alternatePart","preferredPart","contentType","isArray","mixedPart","safeContent","html","unsafeContent","document","createElement","innerHTML","suffix","element","elements","querySelectorAll","attr","removeAttr","trustAs","participants","participant","compile","$editableContent","text","addTag","$addOrRemoveTag","removeTag","$imipAction","action","$reload","$sendMDN","shouldAskReceipt","$deleteAttachment","filename","attachmentAttrs","attachment","toggleFlag","isflagged","$reply","$newDraft","$replyAll","$forward","origin","response","$send","startsWith","isanswered","isforwarded","$futureMessageData","isread","MailboxController","$state","$mdDialog","stateAccounts","stateAccount","stateMailbox","encodeUriFilter","focus","Dialog","selectMessage","go","mailboxId","unselectMessages","vm","confirmDeleteSelectedMessages","confirm","selectedMessages","selectedUIDs","difference","alert","copySelectedMessages","saveSelectedMessages","window","location","href","ApplicationBaseURL","selectAll","markSelectedMessagesAsFlagged","d","markSelectedMessagesAsUnread","field","sortedBy","cancelSearch","mode","newMessage","$event","messageDialog","show","body","targetEvent","clickOutsideToClose","escapeToClose","templateUrl","controller","controllerAs","locals","accounts","stateMessage","stateRecipients","service","$inject","MailboxesController","User","newFolder","parentFolder","prompt","delegate","MailboxDelegationController","$scope","userFilter","closeModal","hide","removeUser","addUser","userToAdd","searchText","editFolder","editMode","revertEditing","selectFolder","saveFolder","compactFolder","emptyTrashFolder","exportMails","confirmDelete","markFolderRead","share","$users","usersWithACL","metadataForFolder","icon","setFolderAs","refreshUnseenCount","unseenCountFolders","includes","current","MessageController","doDelete","findIndex","showMailEditor","recipients","close","selectedMessage","reply","replyAll","forward","edit","recipient","saveMessage","viewRawSource","MessageRawSourceDialogController","scope","template","tags","$watchCollection","oldTags","newTags","MessageEditorController","$stateParams","FileUploader","AddressBook","autosave","send","contactFilter","$filterAll","addRecipient","isString","$$fullname","$$email","autosaveDrafts","SOGoMailAutoSave","autocomplete","hideCc","hideBcc","flatten","uploader","url","autoUpload","alias","onProgressItem","item","progress","onSuccessItem","onCancelItem","file","removeFromQueue","onErrorItem","actionName","msgObject","union","localeCode","LocaleCode"],"mappings":"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","sourcesContent":["/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Account\n * @constructor\n * @param {object} futureAccountData\n */\n function Account(futureAccountData) {\n // Data is immediately available\n if (typeof futureAccountData.then !== 'function') {\n angular.extend(this, futureAccountData);\n _.each(this.identities, function(identity) {\n if (identity.fullName)\n identity.full = identity.fullName + ' <' + identity.email + '>';\n else\n identity.full = '<' + identity.email + '>';\n });\n Account.$log.debug('Account: ' + JSON.stringify(futureAccountData, undefined, 2));\n }\n else {\n // The promise will be unwrapped first\n //this.$unwrap(futureAccountData);\n }\n }\n\n /**\n * @memberof Account\n * @desc The factory we'll use to register with Angular\n * @returns the Account constructor\n */\n Account.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Resource', 'Mailbox', 'Message', function($q, $timeout, $log, Settings, Resource, Mailbox, Message) {\n angular.extend(Account, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Mail', Settings.activeUser()),\n $Mailbox: Mailbox,\n $Message: Message\n });\n\n return Account; // return constructor\n }];\n\n /**\n * @module SOGo.MailerUI\n * @desc Factory registration of Account in Angular module.\n */\n try {\n angular.module('SOGo.MailerUI');\n }\n catch(e) {\n angular.module('SOGo.MailerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.MailerUI')\n .factory('Account', Account.$factory);\n\n /**\n * @memberof Account\n * @desc Set the list of accounts and instanciate a new Account object for each item.\n * @param {array} [data] - the metadata of the accounts\n * @returns the list of accounts\n */\n Account.$findAll = function(data) {\n if (!data) {\n return Account.$$resource.fetch('', 'mailAccounts').then(function(o) {\n return Account.$unwrapCollection(o);\n });\n }\n return Account.$unwrapCollection(data);\n };\n\n /**\n * @memberof Account\n * @desc Unwrap to a collection of Account instances.\n * @param {object} data - the accounts information\n * @returns a collection of Account objects\n */\n Account.$unwrapCollection = function(data) {\n var collection = [];\n\n angular.forEach(data, function(o, i) {\n o.id = i;\n collection[i] = new Account(o);\n });\n return collection;\n };\n\n /**\n * @function $getMailboxes\n * @memberof Account.prototype\n * @desc Fetch the list of mailboxes for the current account.\n * @param {object} [options] - force a reload by setting 'reload' to true\n * @returns a promise of the HTTP operation\n */\n Account.prototype.$getMailboxes = function(options) {\n var _this = this;\n\n if (this.$mailboxes && !(options && options.reload)) {\n return Account.$q.when(this.$mailboxes);\n }\n else {\n return Account.$Mailbox.$find(this).then(function(data) {\n _this.$mailboxes = data;\n _this.$flattenMailboxes({reload: true});\n return _this.$mailboxes;\n });\n }\n };\n\n /**\n * @function $flattenMailboxes\n * @memberof Account.prototype\n * @desc Get a flatten array of the mailboxes.\n * @param {object} [options] - force a reload\n * @returns an array of Mailbox instances\n */\n Account.prototype.$flattenMailboxes = function(options) {\n var _this = this,\n allMailboxes = [],\n _visit = function(mailboxes) {\n _.each(mailboxes, function(o) {\n allMailboxes.push(o);\n if (o.children && o.children.length > 0) {\n _visit(o.children);\n }\n });\n };\n\n if (this.$$flattenMailboxes && !(options && options.reload)) {\n allMailboxes = this.$$flattenMailboxes;\n }\n else {\n _visit(this.$mailboxes);\n _this.$$flattenMailboxes = allMailboxes;\n }\n\n return allMailboxes;\n };\n\n Account.prototype.$getMailboxByType = function(type) {\n var mailbox,\n // Recursive find function\n _find = function(mailboxes) {\n var mailbox = _.find(mailboxes, function(o) {\n return o.type == type;\n });\n if (!mailbox) {\n angular.forEach(mailboxes, function(o) {\n if (!mailbox && o.children && o.children.length > 0) {\n mailbox = _find(o.children);\n }\n });\n }\n return mailbox;\n };\n mailbox = _find(this.$mailboxes);\n\n console.debug(mailbox);\n console.debug(this.specialMailboxes);\n };\n\n /**\n * @function $getMailboxByPath\n * @memberof Account.prototype\n * @desc Recursively find a mailbox using its path\n * @returns a promise of the HTTP operation\n */\n Account.prototype.$getMailboxByPath = function(path) {\n var mailbox = null,\n // Recursive find function\n _find = function(mailboxes) {\n var mailbox = _.find(mailboxes, function(o) {\n return o.path == path;\n });\n if (!mailbox) {\n angular.forEach(mailboxes, function(o) {\n if (!mailbox && o.children && o.children.length > 0) {\n mailbox = _find(o.children);\n }\n });\n }\n return mailbox;\n };\n mailbox = _find(this.$mailboxes);\n\n return mailbox;\n };\n\n /**\n * @function $newMailbox\n * @memberof Account.prototype\n * @desc Create a new mailbox on the server and refresh the list of mailboxes.\n * @returns a promise of the HTTP operations\n */\n Account.prototype.$newMailbox = function(path, name) {\n var _this = this;\n\n return Account.$$resource.post(path.toString(), 'createFolder', {name: name}).then(function() {\n _this.$getMailboxes({reload: true});\n });\n };\n\n /**\n * @function $newMessage\n * @memberof Account.prototype\n * @desc Prepare a new Message object associated to the appropriate mailbox.\n * @returns a promise of the HTTP operations\n */\n Account.prototype.$newMessage = function() {\n var _this = this;\n\n // Query account for draft folder and draft UID\n return Account.$$resource.fetch(this.id.toString(), 'compose').then(function(data) {\n Account.$log.debug('New message (compose): ' + JSON.stringify(data, undefined, 2));\n var message = new Account.$Message(data.accountId, _this.$getMailboxByPath(data.mailboxPath), data);\n return message;\n }).then(function(message) {\n // Fetch draft initial data\n return Account.$$resource.fetch(message.$absolutePath({asDraft: true}), 'edit').then(function(data) {\n Account.$log.debug('New message (edit): ' + JSON.stringify(data, undefined, 2));\n angular.extend(message.editable, data);\n return message;\n });\n });\n };\n\n /**\n * @function $addDelegate\n * @memberof Account.prototype\n * @param {Object} user - a User object with minimal set of attributes (uid, isGroup, cn, c_email)\n * @desc Remove a user from the account's delegates\n * @see {@link User.$filter}\n */\n Account.prototype.$addDelegate = function(user) {\n var _this = this,\n deferred = Account.$q.defer(),\n param = {uid: user.uid};\n if (!user.uid || _.indexOf(_.pluck(this.delegates, 'uid'), user.uid) > -1) {\n // No UID specified or user already in delegates\n deferred.resolve();\n }\n else {\n Account.$$resource.fetch(this.id.toString(), 'addDelegate', param).then(function() {\n _this.delegates.push(user);\n deferred.resolve(_this.users);\n }, function(data, status) {\n deferred.reject(l('An error occured please try again.'));\n });\n }\n return deferred.promise;\n };\n\n /**\n * @function $removeDelegate\n * @memberof Account.prototype\n * @param {Object} user - a User object with minimal set of attributes (uid, isGroup, cn, c_email)\n * @desc Remove a user from the account's delegates\n * @return a promise of the server call to remove the user from the account's delegates\n */\n Account.prototype.$removeDelegate = function(uid) {\n var _this = this,\n param = {uid: uid};\n return Account.$$resource.fetch(this.id.toString(), 'removeDelegate', param).then(function() {\n var i = _.indexOf(_.pluck(_this.delegates, 'uid'), uid);\n if (i >= 0) {\n _this.delegates.splice(i, 1);\n }\n });\n };\n \n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Mailbox\n * @constructor\n * @param {object} futureMailboxData - either an object literal or a promise\n */\n function Mailbox(account, futureMailboxData) {\n this.$account = account;\n // Data is immediately available\n if (typeof futureMailboxData.then !== 'function') {\n this.init(futureMailboxData);\n if (this.name && !this.path) {\n // Create a new mailbox on the server\n var newMailboxData = Mailbox.$$resource.create('createFolder', this.name);\n this.$unwrap(newMailboxData);\n }\n }\n else {\n // The promise will be unwrapped first\n // NOTE: this condition never happen for the moment\n this.$unwrap(futureMailboxData);\n }\n }\n\n /**\n * @memberof Mailbox\n * @desc The factory we'll use to register with Angular\n * @returns the Mailbox constructor\n */\n Mailbox.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Resource', 'Message', 'Acl', 'Preferences', 'sgMailbox_PRELOAD', function($q, $timeout, $log, Settings, Resource, Message, Acl, Preferences, PRELOAD) {\n angular.extend(Mailbox, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Mail', Settings.activeUser()),\n $Message: Message,\n $$Acl: Acl,\n $Preferences: Preferences,\n $query: { sort: 'date', asc: 0 },\n selectedFolder: null,\n $refreshTimeout: null,\n PRELOAD: PRELOAD\n });\n // Initialize sort parameters from user's settings\n Preferences.ready().then(function() {\n if (Preferences.settings.Mail.SortingState) {\n Mailbox.$query.sort = Preferences.settings.Mail.SortingState[0];\n Mailbox.$query.asc = parseInt(Preferences.settings.Mail.SortingState[1]);\n }\n });\n\n return Mailbox; // return constructor\n }];\n\n /**\n * @module SOGo.MailerUI\n * @desc Factory registration of Mailbox in Angular module.\n */\n try {\n angular.module('SOGo.MailerUI');\n }\n catch(e) {\n angular.module('SOGo.MailerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.MailerUI')\n .constant('sgMailbox_PRELOAD', {\n LOOKAHEAD: 50,\n SIZE: 100\n })\n .factory('Mailbox', Mailbox.$factory);\n\n /**\n * @memberof Mailbox\n * @desc Fetch list of mailboxes of a specific account\n * @param {string} accountId - the account\n * @return a promise of the HTTP operation\n * @see {@link Account.$getMailboxes}\n */\n Mailbox.$find = function(account) {\n var path, futureMailboxData;\n\n futureMailboxData = this.$$resource.fetch(account.id.toString(), 'view');\n\n return Mailbox.$unwrapCollection(account, futureMailboxData); // a collection of mailboxes\n };\n\n /**\n * @memberof Mailbox\n * @desc Unwrap to a collection of Mailbox instances.\n * @param {string} account - the account\n * @param {promise} futureMailboxData - a promise of the mailboxes metadata\n * @returns a promise of a collection of Mailbox objects\n */\n Mailbox.$unwrapCollection = function(account, futureMailboxData) {\n var collection = [],\n // Local recursive function\n createMailboxes = function(level, mailbox) {\n for (var i = 0; i < mailbox.children.length; i++) {\n mailbox.children[i].level = level;\n mailbox.children[i] = new Mailbox(account, mailbox.children[i]);\n createMailboxes(level+1, mailbox.children[i]);\n }\n };\n //collection.$futureMailboxData = futureMailboxData;\n\n return futureMailboxData.then(function(data) {\n return Mailbox.$timeout(function() {\n // Each entry is spun up as a Mailbox instance\n angular.forEach(data.mailboxes, function(data, index) {\n data.level = 0;\n var mailbox = new Mailbox(account, data);\n createMailboxes(1, mailbox); // recursively create all sub-mailboxes\n collection.push(mailbox);\n });\n return collection;\n });\n });\n };\n\n /**\n * @memberof Mailbox\n * @desc Build the path of the mailbox (or account only).\n * @param {string} accountId - the account ID\n * @param {string} [mailboxPath] - the mailbox path\n * @returns a string representing the path relative to the mail module\n */\n Mailbox.$absolutePath = function(accountId, mailboxPath) {\n var path = [];\n\n if (mailboxPath) {\n path = _.map(mailboxPath.split('/'), function(component) {\n return 'folder' + component.asCSSIdentifier();\n });\n }\n\n path.splice(0, 0, accountId); // insert account ID\n\n return path.join('/');\n };\n\n /**\n * @function init\n * @memberof Mailbox.prototype\n * @desc Extend instance with new data and compute additional attributes.\n * @param {object} data - attributes of mailbox\n */\n Mailbox.prototype.init = function(data) {\n var _this = this;\n this.$isLoading = true;\n this.$messages = [];\n this.uidsMap = {};\n angular.extend(this, data);\n if (this.path) {\n this.id = this.$id();\n this.$acl = new Mailbox.$$Acl('Mail/' + this.id);\n }\n if (this.type) {\n this.$isEditable = this.isEditable();\n }\n if (angular.isUndefined(this.$shadowData)) {\n // Make a copy of the data for an eventual reset\n this.$shadowData = this.$omit();\n }\n };\n\n /**\n * @function getLength\n * @memberof Mailbox.prototype\n * @desc Used by md-virtual-repeat / md-on-demand\n * @returns the number of items in the mailbox\n */\n Mailbox.prototype.getLength = function() {\n return this.$messages.length;\n };\n\n /**\n * @function getItemAtIndex\n * @memberof Mailbox.prototype\n * @desc Used by md-virtual-repeat / md-on-demand\n * @returns the message as the specified index\n */\n Mailbox.prototype.getItemAtIndex = function(index) {\n var message;\n\n if (index >= 0 && index < this.$messages.length) {\n message = this.$messages[index];\n\n if (this.$loadMessage(message.uid))\n return message;\n }\n\n return null;\n };\n\n /**\n * @function $id\n * @memberof Mailbox.prototype\n * @desc Build the unique ID to identified the mailbox.\n * @returns a string representing the path relative to the mail module\n */\n Mailbox.prototype.$id = function() {\n return Mailbox.$absolutePath(this.$account.id, this.path);\n };\n\n /**\n * @function $selectedCount\n * @memberof Mailbox.prototype\n * @desc Return the number of messages selected by the user.\n * @returns the number of selected messages\n */\n Mailbox.prototype.$selectedCount = function() {\n var count;\n\n count = 0;\n if (this.$messages) {\n count = (_.filter(this.$messages, function(message) { return message.selected; })).length;\n }\n return count;\n };\n\n /**\n * @function $filter\n * @memberof Mailbox.prototype\n * @desc Fetch the messages metadata of the mailbox\n * @param {object} [sort] - sort preferences. Defaults to descendent by date.\n * @param {string} sort.match - either AND or OR\n * @param {string} sort.sort - either arrival, subject, from, to, date, or size\n * @param {boolean} sort.asc - sort is ascendant if true\n * @param {object[]} [filters] - list of filters for the query\n * @param {string} filters.searchBy - either subject, from, to, cc, or body\n * @param {string} filters.searchInput - the search string to match\n * @param {boolean} filters.negative - negate the condition\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$filter = function(sortingAttributes, filters) {\n var _this = this, options = {};\n\n if (!angular.isDefined(this.unseenCount))\n this.unseenCount = 0;\n\n this.$isLoading = true;\n\n return Mailbox.$Preferences.ready().then(function() {\n\n if (Mailbox.$refreshTimeout)\n Mailbox.$timeout.cancel(Mailbox.$refreshTimeout);\n\n if (sortingAttributes)\n // Sorting preferences are common to all mailboxes\n angular.extend(Mailbox.$query, sortingAttributes);\n\n angular.extend(options, { sortingAttributes: Mailbox.$query });\n if (angular.isDefined(filters)) {\n options.filters = _.reject(filters, function(filter) {\n return angular.isUndefined(filter.searchInput) || filter.searchInput.length === 0;\n });\n _.each(options.filters, function(filter) {\n var secondFilter,\n match = filter.searchBy.match(/(\\w+)_or_(\\w+)/);\n if (match) {\n options.sortingAttributes.match = 'OR';\n filter.searchBy = match[1];\n secondFilter = angular.copy(filter);\n secondFilter.searchBy = match[2];\n options.filters.push(secondFilter);\n }\n });\n }\n\n // Restart the refresh timer, if needed\n var refreshViewCheck = Mailbox.$Preferences.defaults.SOGoRefreshViewCheck;\n if (refreshViewCheck && refreshViewCheck != 'manually') {\n var f = angular.bind(_this, Mailbox.prototype.$filter);\n Mailbox.$refreshTimeout = Mailbox.$timeout(f, refreshViewCheck.timeInterval()*1000);\n }\n\n var futureMailboxData = Mailbox.$$resource.post(_this.id, 'view', options);\n return _this.$unwrap(futureMailboxData);\n });\n };\n\n /**\n * @function $loadMessage\n * @memberof Mailbox.prototype\n * @desc Check if the message is loaded and in any case, fetch more messages headers from the server.\n * @returns true if the message metadata are already fetched\n */\n Mailbox.prototype.$loadMessage = function(messageId) {\n var startIndex = this.uidsMap[messageId],\n endIndex,\n max = this.$messages.length,\n loaded = false,\n uids,\n futureHeadersData;\n if (angular.isDefined(this.uidsMap[messageId]) && startIndex < this.$messages.length) {\n // Index is valid\n if (angular.isDefined(this.$messages[startIndex].subject)) {// || this.$messages[startIndex].loading) {\n // Message headers are loaded or data is coming\n loaded = true;\n }\n\n // Preload more headers if possible\n endIndex = Math.min(startIndex + Mailbox.PRELOAD.LOOKAHEAD, max - 1);\n if (!angular.isDefined(this.$messages[endIndex].subject) &&\n !angular.isDefined(this.$messages[endIndex].loading)) {\n endIndex = Math.min(startIndex + Mailbox.PRELOAD.SIZE, max);\n for (uids = []; startIndex < endIndex && startIndex < max; startIndex++) {\n if (angular.isDefined(this.$messages[startIndex].subject) || this.$messages[startIndex].loading) {\n // Message at this index is already loaded; increase the end index\n endIndex++;\n }\n else {\n // Message at this index will be loaded\n uids.push(this.$messages[startIndex].uid);\n this.$messages[startIndex].loading = true;\n }\n }\n\n Mailbox.$log.debug('Loading UIDs ' + uids.join(' '));\n futureHeadersData = Mailbox.$$resource.post(this.id, 'headers', {uids: uids});\n this.$unwrapHeaders(futureHeadersData);\n }\n }\n return loaded;\n };\n\n /**\n * @function isEditable\n * @memberof Mailbox.prototype\n * @desc Checks if the mailbox is editable based on its type.\n * @returns true if the mailbox is not a special folder.\n */\n Mailbox.prototype.isEditable = function() {\n return this.type == 'folder';\n };\n\n /**\n * @function $rename\n * @memberof AddressBook.prototype\n * @desc Rename the addressbook and keep the list sorted\n * @param {string} name - the new name\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$rename = function() {\n var _this = this,\n findParent,\n deferred = Mailbox.$q.defer(),\n parent,\n children,\n i;\n\n if (this.name == this.$shadowData.name) {\n // Name hasn't changed\n deferred.resolve();\n return deferred.promise;\n }\n\n // Local recursive function\n findParent = function(parent, children) {\n var parentMailbox = null,\n mailbox = _.find(children, function(o) {\n return o.path == _this.path;\n });\n if (mailbox) {\n parentMailbox = parent;\n }\n else {\n angular.forEach(children, function(o) {\n if (!parentMailbox && o.children && o.children.length > 0) {\n parentMailbox = findParent(o, o.children);\n }\n });\n }\n return parentMailbox;\n };\n\n // Find mailbox parent\n parent = findParent(null, this.$account.$mailboxes);\n if (parent === null)\n children = this.$account.$mailboxes;\n else\n children = parent.children;\n\n // Find index of mailbox among siblings\n i = _.indexOf(_.pluck(children, 'id'), this.id);\n\n this.$save().then(function(data) {\n var sibling;\n angular.extend(_this, data); // update the path attribute\n _this.id = _this.$id();\n\n // Move mailbox among its siblings according to its new name\n children.splice(i, 1);\n sibling = _.find(children, function(o) {\n Mailbox.$log.debug(o.name + ' ? ' + _this.name);\n return (o.type == 'folder' && o.name.localeCompare(_this.name) > 0);\n });\n if (sibling) {\n i = _.indexOf(_.pluck(children, 'id'), sibling.id);\n }\n else {\n i = children.length;\n }\n children.splice(i, 0, _this);\n\n deferred.resolve();\n }, function(data) {\n deferred.reject(data);\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $compact\n * @memberof Mailbox.prototype\n * @desc Compact the mailbox\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$compact = function() {\n return Mailbox.$$resource.post(this.id, 'expunge');\n };\n\n /**\n * @function $setFolderAs\n * @memberof Mailbox.prototype\n * @desc Set a folder as Drafts/Sent/Trash\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$setFolderAs = function(type) {\n return Mailbox.$$resource.post(this.id, 'setAs' + type + 'Folder');\n };\n\n /**\n * @function $emptyTrash\n * @memberof Mailbox.prototype\n * @desc Empty the Trash folder.\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$emptyTrash = function() {\n var _this = this;\n\n return Mailbox.$$resource.post(this.id, 'emptyTrash').then(function() {\n // Remove all messages from the mailbox\n _this.$messages = [];\n _this.uidsMap = {};\n _this.unseenCount = 0;\n\n // If we had any submailboxes, lets do a refresh of the mailboxes list\n if (angular.isDefined(_this.children) && _this.children.length)\n _this.$account.$getMailboxes({reload: true});\n });\n };\n\n /**\n * @function $markAsRead\n * @memberof Mailbox.prototype\n * @desc Mark all messages from folder as read\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$markAsRead = function() {\n return Mailbox.$$resource.post(this.id, 'markRead');\n };\n\n /**\n * @function $flagMessages\n * @memberof Mailbox.prototype\n * @desc Add or remove a flag on a message set\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$flagMessages = function(uids, flags, operation) {\n var data = {msgUIDs: uids,\n flags: flags,\n operation: operation};\n\n return Mailbox.$$resource.post(this.id, 'addOrRemoveLabel', data);\n };\n\n /**\n * @function $delete\n * @memberof Mailbox.prototype\n * @desc Delete the mailbox from the server\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$delete = function() {\n var _this = this,\n deferred = Mailbox.$q.defer(),\n promise;\n\n promise = Mailbox.$$resource.remove(this.id);\n\n promise.then(function() {\n _this.$account.$getMailboxes({reload: true});\n deferred.resolve(true);\n }, function(data, status) {\n deferred.reject(data);\n });\n return deferred.promise;\n };\n\n /**\n * @function $deleteMessages\n * @memberof Mailbox.prototype\n * @desc Delete multiple messages from mailbox.\n * @return a promise of the HTTP operation\n */\n Mailbox.prototype.$deleteMessages = function(uids) {\n return Mailbox.$$resource.post(this.id, 'batchDelete', {uids: uids});\n };\n\n /**\n * @function $copyMessages\n * @memberof Mailbox.prototype\n * @desc Copy multiple messages from the current mailbox to a target one\n * @return a promise of the HTTP operation\n */\n Mailbox.prototype.$copyMessages = function(uids, folder) {\n return Mailbox.$$resource.post(this.id, 'copyMessages', {uids: uids, folder: folder});\n };\n\n /**\n * @function $moveMessages\n * @memberof Mailbox.prototype\n * @desc Move multiple messages from the current mailbox to a target one\n * @return a promise of the HTTP operation\n */\n Mailbox.prototype.$moveMessages = function(uids, folder) {\n return Mailbox.$$resource.post(this.id, 'moveMessages', {uids: uids, folder: folder});\n };\n \n /**\n * @function $reset\n * @memberof Mailbox.prototype\n * @desc Reset the original state the mailbox's data.\n */\n Mailbox.prototype.$reset = function() {\n var _this = this;\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key != 'children' && key[0] != '$') {\n delete _this[key];\n }\n });\n angular.extend(this, this.$shadowData);\n this.$shadowData = this.$omit();\n };\n\n /**\n * @function $save\n * @memberof Mailbox.prototype\n * @desc Save the mailbox to the server. This currently can only affect the name of the mailbox.\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$save = function() {\n var _this = this;\n\n return Mailbox.$$resource.save(this.id, this.$omit()).then(function(data) {\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit();\n Mailbox.$log.debug(JSON.stringify(data, undefined, 2));\n return data;\n }, function(data) {\n Mailbox.$log.error(JSON.stringify(data, undefined, 2));\n // Restore previous version\n _this.$reset();\n });\n };\n\n /**\n * @function $newMailbox\n * @memberof Mailbox.prototype\n * @desc Create a new mailbox on the server and refresh the list of mailboxes.\n * @returns a promise of the HTTP operations\n */\n Mailbox.prototype.$newMailbox = function(path, name) {\n return this.$account.$newMailbox(path, name);\n };\n\n /**\n * @function $omit\n * @memberof Mailbox.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Mailbox instance\n */\n Mailbox.prototype.$omit = function() {\n var mailbox = {};\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' &&\n key != 'children' &&\n key[0] != '$') {\n mailbox[key] = value;\n }\n });\n return mailbox;\n };\n\n /**\n * @function $unwrap\n * @memberof Mailbox.prototype\n * @desc Unwrap a promise and instanciate new Message objects using received data.\n * @param {promise} futureMailboxData - a promise of the Mailbox's metadata\n * @returns a promise of the HTTP operation\n */\n Mailbox.prototype.$unwrap = function(futureMailboxData) {\n var _this = this,\n deferred = Mailbox.$q.defer();\n\n this.$futureMailboxData = futureMailboxData;\n this.$futureMailboxData.then(function(data) {\n Mailbox.$timeout(function() {\n var uids, headers;\n\n _this.init(data);\n\n if (_this.uids) {\n Mailbox.$log.debug('unwrapping ' + data.uids.length + ' messages');\n\n // First entry of 'headers' are keys\n headers = _.invoke(_this.headers[0], 'toLowerCase');\n _this.headers.splice(0, 1);\n\n // First entry of 'uids' are keys when threaded view is enabled\n if (_this.threaded) {\n uids = _this.uids[0];\n _this.uids.splice(0, 1);\n }\n\n // Instanciate Message objects\n _.reduce(_this.uids, function(msgs, msg, i) {\n var data;\n if (_this.threaded)\n data = _.object(uids, msg);\n else\n data = {uid: msg.toString()};\n\n // Build map of UID <=> index\n _this.uidsMap[data.uid] = i;\n\n msgs.push(new Mailbox.$Message(_this.$account.id, _this, data, true));\n\n return msgs;\n }, _this.$messages);\n\n // Extend Message objects with received headers\n _.each(_this.headers, function(data) {\n var msg = _.object(headers, data),\n i = _this.uidsMap[msg.uid.toString()];\n _.extend(_this.$messages[i], msg);\n });\n }\n Mailbox.$log.debug('mailbox ' + _this.id + ' ready');\n _this.$isLoading = false;\n deferred.resolve(_this.$messages);\n });\n }, function(data) {\n angular.extend(_this, data);\n _this.isError = true;\n deferred.reject();\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $unwrapHeaders\n * @memberof Mailbox.prototype\n * @desc Unwrap a promise and extend matching Message objects using received data.\n * @param {promise} futureHeadersData - a promise of some messages metadata\n */\n Mailbox.prototype.$unwrapHeaders = function(futureHeadersData) {\n var _this = this;\n\n futureHeadersData.then(function(data) {\n Mailbox.$timeout(function() {\n var headers, j;\n if (data.length > 0) {\n // First entry of 'headers' are keys\n headers = _.invoke(data[0], 'toLowerCase');\n data.splice(0, 1);\n _.each(data, function(messageHeaders) {\n messageHeaders = _.object(headers, messageHeaders);\n j = _this.uidsMap[messageHeaders.uid.toString()];\n if (angular.isDefined(j)) {\n _.extend(_this.$messages[j], messageHeaders);\n }\n });\n }\n });\n });\n };\n\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Message\n * @constructor\n * @param {string} accountId - the account ID\n * @param {string} mailboxPath - an array of the mailbox path components\n * @param {object} futureAddressBookData - either an object literal or a promise\n * @param {bool} lazy - do \"lazy loading\" so we are very quick at initializing message instances\n */\n function Message(accountId, mailbox, futureMessageData, lazy) {\n this.accountId = accountId;\n this.$mailbox = mailbox;\n this.$hasUnsafeContent = false;\n this.$loadUnsafeContent = false;\n this.$showDetailedRecipients = false;\n this.editable = {to: [], cc: [], bcc: []};\n this.selected = false;\n\n // Data is immediately available\n if (typeof futureMessageData.then !== 'function') {\n //console.debug(JSON.stringify(futureMessageData, undefined, 2));\n if (angular.isDefined(lazy) && lazy) {\n this.uid = futureMessageData.uid;\n }\n else {\n angular.extend(this, futureMessageData);\n this.$formatFullAddresses();\n }\n }\n else {\n // The promise will be unwrapped first\n this.$unwrap(futureMessageData);\n }\n }\n\n /**\n * @memberof Message\n * @desc The factory we'll use to register with Angular\n * @returns the Message constructor\n */\n Message.$factory = ['$q', '$timeout', '$log', '$sce', 'sgSettings', 'Gravatar', 'Resource', 'Preferences', function($q, $timeout, $log, $sce, Settings, Gravatar, Resource, Preferences) {\n angular.extend(Message, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $sce: $sce,\n $gravatar: Gravatar,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Mail', Settings.activeUser())\n });\n // Initialize tags form user's defaults\n Preferences.ready().then(function() {\n if (Preferences.defaults.SOGoMailLabelsColors) {\n Message.$tags = Preferences.defaults.SOGoMailLabelsColors;\n }\n });\n\n return Message; // return constructor\n }];\n\n /**\n * @module SOGo.MailerUI\n * @desc Factory registration of Message in Angular module.\n */\n try {\n angular.module('SOGo.MailerUI');\n }\n catch(e) {\n angular.module('SOGo.MailerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.MailerUI')\n .factory('Message', Message.$factory);\n\n /**\n * @function filterTags\n * @memberof Message.prototype\n * @desc Search for tags (ie., mail labels) matching some criterias\n * @param {string} search - the search string to match\n * @returns a collection of strings\n */\n Message.filterTags = function(query) {\n var re = new RegExp(query, 'i');\n return _.filter(_.keys(Message.$tags), function(tag) {\n var value = Message.$tags[tag];\n return value[0].search(re) != -1;\n });\n };\n\n /**\n * @function $absolutePath\n * @memberof Message.prototype\n * @desc Build the path of the message\n * @returns a string representing the path relative to the mail module\n */\n Message.prototype.$absolutePath = function(options) {\n if (angular.isUndefined(this.id)) {\n var path;\n path = _.map(this.$mailbox.path.split('/'), function(component) {\n return 'folder' + component.asCSSIdentifier();\n });\n path.splice(0, 0, this.accountId); // insert account ID\n if (options && options.asDraft && this.draftId) {\n path.push(this.draftId); // add draft ID\n }\n else {\n path.push(this.uid); // add message UID\n }\n\n this.id = path.join('/');\n }\n\n return this.id;\n };\n\n /**\n * @function $setUID\n * @memberof Message.prototype\n * @desc Change the UID of the message. This happens when saving a draft.\n * @param {number} uid - the new message UID\n */\n Message.prototype.$setUID = function(uid) {\n var oldUID = this.uid || -1;\n\n if (oldUID != uid) {\n this.uid = uid;\n if (oldUID > -1 && this.$mailbox.uidsMap[oldUID]) {\n this.$mailbox.uidsMap[uid] = this.$mailbox.uidsMap[oldUID];\n this.$mailbox.uidsMap[oldUID] = null;\n }\n }\n };\n\n /**\n * @function $formatFullAddresses\n * @memberof Message.prototype\n * @desc Format all sender and recipients addresses with a complete description (name ).\n * This function also generates a gravatar for each email address, and a short name\n */\n Message.prototype.$formatFullAddresses = function() {\n var _this = this;\n var identities = _.pluck(_this.$mailbox.$account.identities, 'email');\n\n // Build long representation of email addresses\n _.each(['from', 'to', 'cc', 'bcc', 'reply-to'], function(type) {\n _.each(_this[type], function(data, i) {\n if (data.name && data.name != data.email) {\n data.full = data.name + ' <' + data.email + '>';\n\n // If we have \"Alice Foo\" as name, we grab \"Alice\"\n if (data.name.split(' ').length)\n data.shortname = data.name.split(' ')[0].replace('\\'','');\n }\n else {\n data.full = '<' + data.email + '>';\n data.shortname = data.email.split('@')[0];\n }\n\n // Generate the gravatar\n data.image = Message.$gravatar(data.email, 32);\n\n // If the current user is the recepient, overwrite\n // the short name with 'me'\n if (_.indexOf(identities, data.email) >= 0)\n data.shortname = l('me');\n });\n });\n };\n\n /**\n * @function $shortRecipients\n * @memberof Message.prototype\n * @desc Format all recipients into a very compact string\n * @returns a compacted string of all recipients\n */\n Message.prototype.$shortRecipients = function() {\n var _this = this;\n var result = [];\n\n // Build long representation of email addresses\n _.each(['to', 'cc', 'bcc'], function(type) {\n _.each(_this[type], function(data, i) {\n result.push(data.shortname);\n });\n });\n\n return result.join(', ');\n };\n\n /**\n * @function $shortAddress\n * @memberof Message.prototype\n * @desc Format the first address of a specific type with a short description.\n * @returns a string of the name or the email of the envelope address type\n */\n Message.prototype.$shortAddress = function(type) {\n var address = '';\n if (this[type] && this[type].length > 0) {\n address = this[type][0].name || this[type][0].email || '';\n }\n\n return address;\n };\n\n /**\n * @function loadUnsafeContent\n * @memberof Message.prototype\n * @desc Mark the message to load unsafe resources when calling $content().\n */\n Message.prototype.loadUnsafeContent = function() {\n this.$loadUnsafeContent = true;\n };\n\n /**\n * @function showDetailedRecipients\n * @memberof Message.prototype\n * @desc Mark the message to show all to/cc recipients.\n */\n Message.prototype.showDetailedRecipients = function() {\n this.$showDetailedRecipients = true;\n };\n\n /**\n * @function $content\n * @memberof Message.prototype\n * @desc Get the message body as accepted by SCE (Angular Strict Contextual Escaping).\n * @returns the HTML representation of the body\n */\n Message.prototype.$content = function() {\n var _this = this,\n parts = [],\n _visit = function(part) {\n part.msgclass = 'msg-attachment-other';\n if (part.type == 'UIxMailPartAlternativeViewer') {\n _visit(_.find(part.content, function(alternatePart) {\n return part.preferredPart == alternatePart.contentType;\n }));\n }\n // Can be used for UIxMailPartMixedViewer and UIxMailPartMessageViewer\n else if (angular.isArray(part.content)) {\n _.each(part.content, function(mixedPart) {\n _visit(mixedPart);\n });\n }\n else {\n if (angular.isUndefined(part.safeContent)) {\n // Keep a copy of the original content\n part.safeContent = part.content;\n _this.$hasUnsafeContent = (part.safeContent.indexOf(' unsafe-') > -1);\n }\n if (part.type == 'UIxMailPartHTMLViewer') {\n part.html = true;\n if (_this.$loadUnsafeContent) {\n if (angular.isUndefined(part.unsafeContent)) {\n part.unsafeContent = document.createElement('div');\n part.unsafeContent.innerHTML = part.safeContent;\n angular.forEach(['src', 'data', 'classid', 'background', 'style'], function(suffix) {\n var elements = part.unsafeContent.querySelectorAll('[unsafe-' + suffix + ']'),\n element,\n value,\n i;\n for (i = 0; i < elements.length; i++) {\n element = angular.element(elements[i]);\n value = element.attr('unsafe-' + suffix);\n element.attr(suffix, value);\n element.removeAttr('unsafe-' + suffix);\n }\n });\n }\n part.content = Message.$sce.trustAs('html', part.unsafeContent.innerHTML);\n }\n else {\n part.content = Message.$sce.trustAs('html', part.safeContent);\n }\n parts.push(part);\n }\n else if (part.type == 'UIxMailPartICalViewer' ||\n part.type == 'UIxMailPartImageViewer' ||\n part.type == 'UIxMailPartLinkViewer') {\n\n // UIxMailPartICalViewer injects 'participants'\n if (part.participants) {\n _.each(part.participants, function(participant) {\n participant.image = Message.$gravatar(participant.email, 32);\n });\n }\n\n if (part.type == 'UIxMailPartImageViewer')\n part.msgclass = 'msg-attachment-image';\n\n // Trusted content that can be compiled (Angularly-speaking)\n part.compile = true;\n parts.push(part);\n }\n else {\n part.html = true;\n part.content = Message.$sce.trustAs('html', part.safeContent);\n parts.push(part);\n }\n }\n };\n _visit(this.parts);\n\n return parts;\n };\n\n /**\n * @function $editableContent\n * @memberof Message.prototype\n * @desc First, fetch the draft ID that corresponds to the temporary draft object on the SOGo server.\n * Secondly, fetch the editable message body along with other metadata such as the recipients.\n * @returns the HTML representation of the body\n */\n Message.prototype.$editableContent = function() {\n var _this = this;\n\n return Message.$$resource.fetch(this.$absolutePath(), 'edit').then(function(data) {\n angular.extend(_this, data);\n return Message.$$resource.fetch(_this.$absolutePath({asDraft: true}), 'edit').then(function(data) {\n Message.$log.debug('editable = ' + JSON.stringify(data, undefined, 2));\n angular.extend(_this.editable, data);\n return data.text;\n });\n });\n };\n\n /**\n * @function addTag\n * @memberof Message.prototype\n * @desc Add a mail tag on the current message.\n * @param {string} tag - the tag name\n * @returns a promise of the HTTP operation\n */\n Message.prototype.addTag = function(tag) {\n return this.$addOrRemoveTag('add', tag);\n };\n\n /**\n * @function removeTag\n * @memberof Message.prototype\n * @desc Remove a mail tag from the current message.\n * @param {string} tag - the tag name\n * @returns a promise of the HTTP operation\n */\n Message.prototype.removeTag = function(tag) {\n return this.$addOrRemoveTag('remove', tag);\n };\n\n /**\n * @function $addOrRemoveTag\n * @memberof Message.prototype\n * @desc Add or remove a mail tag on the current message.\n * @param {string} operation - the operation name to perform\n * @param {string} tag - the tag name\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$addOrRemoveTag = function(operation, tag) {\n var data = {\n operation: operation,\n msgUIDs: [this.uid],\n flags: tag\n };\n\n if (tag)\n return Message.$$resource.post(this.$mailbox.$id(), 'addOrRemoveLabel', data);\n };\n\n /**\n * @function $imipAction\n * @memberof Message.prototype\n * @desc Perform IMIP actions on the current message.\n * @param {string} path - the path of the IMIP calendar part \n * @param {string} action - the the IMIP action to perform\n * @param {object} data - the delegation info \n */\n Message.prototype.$imipAction = function(path, action, data) {\n var _this = this;\n Message.$$resource.post([this.$absolutePath(), path].join('/'), action, data).then(function(data) {\n Message.$timeout(function() {\n _this.$reload();\n }, function() {\n // TODO: show toast\n });\n });\n };\n\n /**\n * @function $sendMDN\n * @memberof Message.prototype\n * @desc Send MDN response for current email message\n */\n Message.prototype.$sendMDN = function() {\n this.shouldAskReceipt = 0;\n return Message.$$resource.post(this.$absolutePath(), 'sendMDN');\n };\n\n /**\n * @function $deleteAttachment\n * @memberof Message.prototype\n * @desc Delete an attachment from a message being composed\n * @param {string} filename - the filename of the attachment to delete\n */\n Message.prototype.$deleteAttachment = function(filename) {\n var action = 'deleteAttachment?filename=' + filename;\n var _this = this;\n Message.$$resource.post(this.$absolutePath({asDraft: true}), action).then(function(data) {\n Message.$timeout(function() {\n _this.editable.attachmentAttrs = _.filter(_this.editable.attachmentAttrs, function(attachment) {\n return attachment.filename != filename;\n });\n }, function() {\n // TODO: show toast\n });\n });\n };\n\n /**\n * @function $markAsFlaggedOrUnflagged\n * @memberof Message.prototype\n * @desc Add or remove a the \\\\Flagged flag on the current message.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.toggleFlag = function() {\n var _this = this,\n action = 'markMessageFlagged';\n\n if (this.isflagged)\n action = 'markMessageUnflagged';\n\n return Message.$$resource.post(this.$absolutePath(), action).then(function(data) {\n Message.$timeout(function() {\n _this.isflagged = !_this.isflagged;\n });\n });\n };\n\n /**\n * @function $reload\n * @memberof Message.prototype\n * @desc Fetch the viewable message body along with other metadata such as the list of attachments.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$reload = function() {\n var futureMessageData;\n\n futureMessageData = Message.$$resource.fetch(this.$absolutePath(), 'view');\n\n return this.$unwrap(futureMessageData);\n };\n\n /**\n * @function $reply\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a reply to the sender.\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$reply = function() {\n return this.$newDraft('reply');\n };\n\n /**\n * @function $replyAll\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a reply to the sender and all recipients.\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$replyAll = function() {\n return this.$newDraft('replyall');\n };\n\n /**\n * @function $forward\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a forward.\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$forward = function() {\n return this.$newDraft('forward');\n };\n\n /**\n * @function $newDraft\n * @memberof Message.prototype\n * @desc Prepare a new Message object as a reply or a forward of the current message and associated\n * to the draft mailbox.\n * @see {@link Account.$newMessage}\n * @see {@link Message.$editableContent}\n * @see {@link Message.$reply}\n * @see {@link Message.$replyAll}\n * @see {@link Message.$forwad}\n * @param {string} action - the HTTP action to perform on the message\n * @returns a promise of the HTTP operations\n */\n Message.prototype.$newDraft = function(action) {\n var _this = this;\n\n // Query server for draft folder and draft UID\n return Message.$$resource.fetch(this.$absolutePath(), action).then(function(data) {\n var mailbox, message;\n Message.$log.debug('New ' + action + ': ' + JSON.stringify(data, undefined, 2));\n mailbox = _this.$mailbox.$account.$getMailboxByPath(data.mailboxPath);\n message = new Message(data.accountId, mailbox, data);\n // Fetch draft initial data\n return Message.$$resource.fetch(message.$absolutePath({asDraft: true}), 'edit').then(function(data) {\n Message.$log.debug('New ' + action + ': ' + JSON.stringify(data, undefined, 2) + ' original UID: ' + _this.uid);\n angular.extend(message.editable, data);\n\n // We keep a reference to our original message in order to update the flags\n message.origin = {message: _this, action: action};\n return message;\n });\n });\n };\n\n /**\n * @function $save\n * @memberof Message.prototype\n * @desc Save the message to the server.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$save = function() {\n var _this = this,\n data = this.editable;\n\n Message.$log.debug('save = ' + JSON.stringify(data, undefined, 2));\n\n return Message.$$resource.save(this.$absolutePath({asDraft: true}), data).then(function(response) {\n Message.$log.debug('save = ' + JSON.stringify(response, undefined, 2));\n _this.$setUID(response.uid);\n _this.$reload(); // fetch a new viewable version of the message\n });\n };\n\n /**\n * @function $send\n * @memberof Message.prototype\n * @desc Send the message.\n * @returns a promise of the HTTP operation\n */\n Message.prototype.$send = function() {\n var _this = this,\n data = angular.copy(this.editable),\n deferred = Message.$q.defer();\n\n Message.$log.debug('send = ' + JSON.stringify(data, undefined, 2));\n\n Message.$$resource.post(this.$absolutePath({asDraft: true}), 'send', data).then(function(data) {\n if (data.status == 'success') {\n deferred.resolve(data);\n if (angular.isDefined(_this.origin)) {\n if (_this.origin.action.startsWith('reply'))\n _this.origin.message.isanswered = true;\n else if (_this.origin.action == 'forward')\n _this.origin.message.isforwarded = true;\n }\n }\n else {\n deferred.reject(data);\n }\n });\n\n return deferred.promise;\n };\n\n /**\n * @function $unwrap\n * @memberof Message.prototype\n * @desc Unwrap a promise. \n * @param {promise} futureMessageData - a promise of some of the Message's data\n */\n Message.prototype.$unwrap = function(futureMessageData) {\n var _this = this;\n\n // Resolve and expose the promise\n this.$futureMessageData = futureMessageData.then(function(data) {\n // Calling $timeout will force Angular to refresh the view\n if (_this.isread === 0) {\n Message.$$resource.fetch(_this.$absolutePath(), 'markMessageRead').then(function() {\n Message.$timeout(function() {\n _this.isread = true;\n _this.$mailbox.unseenCount--;\n });\n });\n }\n return Message.$timeout(function() {\n angular.extend(_this, data);\n _this.$formatFullAddresses();\n _this.$loadUnsafeContent = false;\n return _this;\n });\n });\n\n return this.$futureMessageData;\n };\n\n /**\n * @function $omit\n * @memberof Message.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Message instance\n */\n Message.prototype.$omit = function() {\n var message = {};\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key[0] != '$') {\n message[key] = value;\n }\n });\n\n // Format addresses as arrays\n _.each(['from', 'to', 'cc', 'bcc', 'reply-to'], function(type) {\n if (message[type])\n message[type] = _.invoke(message[type].split(','), 'trim');\n });\n\n //Message.$log.debug(JSON.stringify(message, undefined, 2));\n return message;\n };\n\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MailboxController.$inject = ['$state', '$timeout', '$mdDialog', 'stateAccounts', 'stateAccount', 'stateMailbox', 'encodeUriFilter', 'sgFocus', 'Dialog', 'Account', 'Mailbox'];\n function MailboxController($state, $timeout, $mdDialog, stateAccounts, stateAccount, stateMailbox, encodeUriFilter, focus, Dialog, Account, Mailbox) {\n var vm = this, messageDialog = null;\n\n Mailbox.selectedFolder = stateMailbox;\n\n vm.service = Mailbox;\n vm.accounts = stateAccounts;\n vm.account = stateAccount;\n vm.selectedFolder = stateMailbox;\n vm.selectMessage = selectMessage;\n vm.unselectMessages = unselectMessages;\n vm.confirmDeleteSelectedMessages = confirmDeleteSelectedMessages;\n vm.copySelectedMessages = copySelectedMessages;\n // vm.moveSelectedMessages = moveSelectedMessages;\n vm.saveSelectedMessages = saveSelectedMessages;\n vm.markSelectedMessagesAsFlagged = markSelectedMessagesAsFlagged;\n vm.markSelectedMessagesAsUnread = markSelectedMessagesAsUnread;\n vm.selectAll = selectAll;\n vm.sort = sort;\n vm.sortedBy = sortedBy;\n vm.cancelSearch = cancelSearch;\n vm.newMessage = newMessage;\n vm.mode = { search: false };\n\n function selectMessage(message) {\n $state.go('mail.account.mailbox.message', {accountId: stateAccount.id, mailboxId: encodeUriFilter(stateMailbox.path), messageId: message.uid});\n }\n\n function unselectMessages() {\n _.each(vm.selectedFolder.$messages, function(message) { message.selected = false; });\n }\n\n function confirmDeleteSelectedMessages() {\n Dialog.confirm(l('Warning'),\n l('Are you sure you want to delete the selected messages?'))\n .then(function() {\n // User confirmed the deletion\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n vm.selectedFolder.$deleteMessages(selectedUIDs).then(function() {\n // Decrement the unseenCount accordingly\n var unseenCount = _.filter(selectedMessages, function(message) { return !message.isread; });\n vm.selectedFolder.$messages = _.difference(vm.selectedFolder.$messages, selectedMessages);\n vm.selectedFolder.unseenCount =- unseenCount;\n }, function(error) {\n Dialog.alert(l('Error'), error);\n });\n });\n }\n\n function copySelectedMessages(folder) {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n vm.selectedFolder.$copyMessages(selectedUIDs, '/' + folder).then(function() {\n // TODO: refresh target mailbox?\n }, function(error) {\n Dialog.alert(l('Error'), error);\n });\n }\n\n // function moveSelectedMessages(folder) {\n // var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected });\n // var selectedUIDs = _.pluck(selectedMessages, 'uid');\n // vm.selectedFolder.$moveMessages(selectedUIDs, '/' + folder).then(function() {\n // // TODO: refresh target mailbox?\n // vm.selectedFolder.$messages = _.difference(vm.selectedFolder.$messages, selectedMessages);\n // });\n // }\n\n function saveSelectedMessages() {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n window.location.href = ApplicationBaseURL + '/' + vm.selectedFolder.id + '/saveMessages?uid=' + selectedUIDs.join(\",\");\n }\n\n function selectAll() {\n _.each(vm.selectedFolder.$messages, function(message) {\n message.selected = true;\n });\n }\n\n function markSelectedMessagesAsFlagged() {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n\n vm.selectedFolder.$flagMessages(selectedUIDs, '\\\\Flagged', 'add').then(function(d) {\n // Success\n _.forEach(selectedMessages, function(message) {\n message.isflagged = true;\n });\n });\n }\n\n function markSelectedMessagesAsUnread() {\n var selectedMessages = _.filter(vm.selectedFolder.$messages, function(message) { return message.selected; });\n var selectedUIDs = _.pluck(selectedMessages, 'uid');\n\n vm.selectedFolder.$flagMessages(selectedUIDs, 'seen', 'remove').then(function(d) {\n // Success\n _.forEach(selectedMessages, function(message) {\n message.isread = false;\n vm.selectedFolder.unseenCount++;\n });\n });\n }\n\n function sort(field) {\n vm.selectedFolder.$filter({ sort: field });\n }\n\n function sortedBy(field) {\n return Mailbox.$query.sort == field;\n }\n\n function cancelSearch() {\n vm.mode.search = false;\n vm.selectedFolder.$filter();\n }\n\n function newMessage($event) {\n var message;\n\n if (messageDialog === null) {\n message = vm.account.$newMessage();\n messageDialog = $mdDialog\n .show({\n parent: angular.element(document.body),\n targetEvent: $event,\n clickOutsideToClose: false,\n escapeToClose: false,\n templateUrl: 'UIxMailEditor',\n controller: 'MessageEditorController',\n controllerAs: 'editor',\n locals: {\n stateAccounts: vm.accounts,\n stateMessage: message,\n stateRecipients: []\n }\n })\n .finally(function() {\n messageDialog = null;\n });\n }\n }\n }\n\n angular\n .module('SOGo.MailerUI') \n .controller('MailboxController', MailboxController); \n})();\n\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MailboxesController.$inject = ['$state', '$timeout', '$mdDialog', 'sgFocus', 'encodeUriFilter', 'Dialog', 'sgSettings', 'Account', 'Mailbox', 'User', 'Preferences', 'stateAccounts'];\n function MailboxesController($state, $timeout, $mdDialog, focus, encodeUriFilter, Dialog, Settings, Account, Mailbox, User, Preferences, stateAccounts) {\n var vm = this,\n account,\n mailbox;\n\n vm.service = Mailbox;\n vm.accounts = stateAccounts;\n vm.newFolder = newFolder;\n vm.delegate = delegate;\n vm.editFolder = editFolder;\n vm.revertEditing = revertEditing;\n vm.selectFolder = selectFolder;\n vm.saveFolder = saveFolder;\n vm.compactFolder = compactFolder;\n vm.emptyTrashFolder = emptyTrashFolder;\n vm.exportMails = exportMails;\n vm.confirmDelete = confirmDelete;\n vm.markFolderRead = markFolderRead;\n vm.share = share;\n vm.metadataForFolder = metadataForFolder;\n vm.setFolderAs = setFolderAs;\n vm.refreshUnseenCount = refreshUnseenCount;\n\n if ($state.current.name == 'mail' && vm.accounts.length > 0 && vm.accounts[0].$mailboxes.length > 0) {\n // Redirect to first mailbox of first account if no mailbox is selected\n account = vm.accounts[0];\n mailbox = account.$mailboxes[0];\n $state.go('mail.account.mailbox', { accountId: account.id, mailboxId: encodeUriFilter(mailbox.path) });\n }\n\n function newFolder(parentFolder) {\n Dialog.prompt(l('New folder'),\n l('Enter the new name of your folder :'))\n .then(function(name) {\n parentFolder.$newMailbox(parentFolder.id, name)\n .then(function() {\n // success\n }, function(data, status) {\n Dialog.alert(l('An error occured while creating the mailbox \"%{0}\".', name),\n l(data.error));\n });\n });\n }\n\n function delegate(account) {\n $mdDialog.show({\n templateUrl: account.id + '/delegation', // UI/Templates/MailerUI/UIxMailUserDelegation.wox\n controller: MailboxDelegationController,\n controllerAs: 'delegate',\n clickOutsideToClose: true,\n escapeToClose: true,\n locals: {\n User: User,\n account: account\n }\n });\n\n /**\n * @ngInject\n */\n MailboxDelegationController.$inject = ['$scope', '$mdDialog', 'User', 'account'];\n function MailboxDelegationController($scope, $mdDialog, User, account) {\n var vm = this;\n\n vm.users = account.delegates;\n vm.account = account;\n vm.userToAdd = '';\n vm.searchText = '';\n vm.userFilter = userFilter;\n vm.closeModal = closeModal;\n vm.removeUser = removeUser;\n vm.addUser = addUser;\n\n function userFilter($query) {\n return User.$filter($query, account.delegates);\n }\n\n function closeModal() {\n $mdDialog.hide();\n }\n\n function removeUser(user) {\n account.$removeDelegate(user.uid).catch(function(data, status) {\n Dialog.alert(l('Warning'), l('An error occured please try again.'));\n });\n }\n\n function addUser(data) {\n if (data) {\n account.$addDelegate(data).then(function() {\n vm.userToAdd = '';\n vm.searchText = '';\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n }\n }\n } // delegate\n\n function editFolder(folder) {\n vm.editMode = folder.path;\n focus('mailboxName_' + folder.path);\n }\n\n function revertEditing(folder) {\n folder.$reset();\n vm.editMode = false;\n }\n\n function selectFolder(account, folder) {\n if (vm.editMode == folder.path)\n return;\n vm.editMode = false;\n $state.go('mail.account.mailbox', { accountId: account.id, mailboxId: encodeUriFilter(folder.path) });\n }\n\n function saveFolder(folder) {\n folder.$rename();\n }\n\n function compactFolder(folder) {\n folder.$compact().then(function() {\n // Success\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n\n function emptyTrashFolder(folder) {\n folder.$emptyTrash().then(function() {\n // Success\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n\n function exportMails(folder) {\n window.location.href = ApplicationBaseURL + '/' + folder.id + '/exportFolder';\n }\n\n function confirmDelete(folder) {\n Dialog.confirm(l('Confirmation'), l('Do you really want to move this folder into the trash ?'))\n .then(function() {\n folder.$delete()\n .then(function() {\n $state.go('mail');\n }, function(data, status) {\n Dialog.alert(l('An error occured while deleting the mailbox \"%{0}\".', folder.name),\n l(data.error));\n });\n });\n }\n\n function markFolderRead(folder) {\n folder.$markAsRead();\n }\n\n function share(folder) {\n // Fetch list of ACL users\n folder.$acl.$users().then(function() {\n // Show ACL editor\n $mdDialog.show({\n templateUrl: folder.id + '/UIxAclEditor', // UI/Templates/UIxAclEditor.wox\n controller: 'AclController', // from the ng module SOGo.Common\n controllerAs: 'acl',\n clickOutsideToClose: true,\n escapeToClose: true,\n locals: {\n usersWithACL: folder.$acl.users,\n User: User,\n folder: folder\n }\n });\n });\n } // share\n\n function metadataForFolder(folder) {\n if (folder.type == 'inbox')\n return {name: folder.name, icon:'inbox'};\n else if (folder.type == 'draft')\n return {name: l('DraftsFolderName'), icon: 'drafts'};\n else if (folder.type == 'sent')\n return {name: l('SentFolderName'), icon: 'send'};\n else if (folder.type == 'trash')\n return {name: l('TrashFolderName'), icon: 'delete'};\n else if (folder.type == 'additional')\n return {name: folder.name, icon: 'folder_shared'};\n\n //if ($rootScope.currentFolder == folder)\n // return 'folder_open';\n\n return {name: folder.name, icon: 'folder'};\n }\n\n function setFolderAs(folder, type) {\n folder.$setFolderAs(type).then(function() {\n folder.$account.$getMailboxes({reload: true});\n }, function(error) {\n Dialog.alert(l('Warning'), error);\n });\n }\n\n function refreshUnseenCount() {\n var unseenCountFolders = window.unseenCountFolders;\n\n _.forEach(vm.accounts, function(account) {\n\n // Always include the INBOX\n if (!_.includes(unseenCountFolders, account.id + '/folderINBOX'))\n unseenCountFolders.push(account.id + '/folderINBOX');\n\n _.forEach(account.$$flattenMailboxes, function(mailbox) {\n if (angular.isDefined(mailbox.unseenCount) &&\n !_.includes(unseenCountFolders, mailbox.id))\n unseenCountFolders.push(mailbox.id);\n });\n });\n\n Account.$$resource.post('', 'unseenCount', {mailboxes: unseenCountFolders}).then(function(data) {\n _.forEach(vm.accounts, function(account) {\n _.forEach(account.$$flattenMailboxes, function(mailbox) {\n if (data[mailbox.id])\n mailbox.unseenCount = data[mailbox.id];\n });\n });\n });\n\n Preferences.ready().then(function() {\n var refreshViewCheck = Preferences.defaults.SOGoRefreshViewCheck;\n if (refreshViewCheck && refreshViewCheck != 'manually')\n $timeout(vm.refreshUnseenCount, refreshViewCheck.timeInterval()*1000);\n });\n }\n\n vm.refreshUnseenCount();\n }\n\n angular\n .module('SOGo.MailerUI') \n .controller('MailboxesController', MailboxesController); \n})();\n\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MessageController.$inject = ['$scope', '$state', '$mdDialog', 'stateAccounts', 'stateAccount', 'stateMailbox', 'stateMessage', 'encodeUriFilter', 'sgFocus', 'Dialog', 'Account', 'Mailbox', 'Message'];\n function MessageController($scope, $state, $mdDialog, stateAccounts, stateAccount, stateMailbox, stateMessage, encodeUriFilter, focus, Dialog, Account, Mailbox, Message) {\n var vm = this, messageDialog = null;\n\n vm.accounts = stateAccounts;\n vm.account = stateAccount;\n vm.mailbox = stateMailbox;\n vm.message = stateMessage;\n vm.service = Message;\n vm.tags = { searchText: '', selected: '' };\n vm.doDelete = doDelete;\n vm.close = close;\n vm.reply = reply;\n vm.replyAll = replyAll;\n vm.forward = forward;\n vm.edit = edit;\n vm.newMessage = newMessage;\n vm.saveMessage = saveMessage;\n vm.viewRawSource = viewRawSource;\n\n // Watch the message model \"flags\" attribute to remove on-the-fly a tag from the IMAP message\n // when removed from the message viewer.\n // TODO: this approach should be reviewed once md-chips supports ng-change.\n $scope.$watchCollection('viewer.message.flags', function(oldTags, newTags) {\n _.each(_.difference(newTags, oldTags), function(tag) {\n vm.message.removeTag(tag);\n });\n });\n\n function doDelete() {\n stateMailbox.$deleteMessages([stateMessage.uid]).then(function() {\n // Remove message from list of messages\n var index = _.findIndex(stateMailbox.$messages, function(o) {\n return o.uid == stateMessage.uid;\n });\n if (index != -1)\n stateMailbox.$messages.splice(index, 1);\n // Remove message object from scope\n vm.message = null;\n $state.go('mail.account.mailbox', { accountId: stateAccount.id, mailboxId: encodeUriFilter(stateMailbox.path) });\n });\n }\n\n function showMailEditor($event, message, recipients) {\n if (messageDialog === null) {\n if (!angular.isDefined(recipients))\n recipients = [];\n\n messageDialog = $mdDialog\n .show({\n parent: angular.element(document.body),\n targetEvent: $event,\n clickOutsideToClose: false,\n escapeToClose: false,\n templateUrl: 'UIxMailEditor',\n controller: 'MessageEditorController',\n controllerAs: 'editor',\n locals: {\n stateAccounts: vm.accounts,\n stateMessage: message,\n stateRecipients: recipients\n }\n })\n .finally(function() {\n messageDialog = null;\n });\n }\n }\n\n function close() {\n $state.go('mail.account.mailbox', { accountId: stateAccount.id, mailboxId: encodeUriFilter(stateMailbox.path) }).then(function() {\n vm.message = null;\n delete stateMailbox.selectedMessage;\n });\n }\n\n function reply($event) {\n var message = vm.message.$reply();\n showMailEditor($event, message);\n }\n\n function replyAll($event) {\n var message = vm.message.$replyAll();\n showMailEditor($event, message);\n }\n\n function forward($event) {\n var message = vm.message.$forward();\n showMailEditor($event, message);\n }\n\n function edit($event) {\n vm.message.$editableContent().then(function() {\n showMailEditor($event, vm.message);\n });\n }\n\n function newMessage($event, recipient) {\n var message = vm.account.$newMessage();\n showMailEditor($event, message, [recipient]);\n }\n\n function saveMessage() {\n window.location.href = ApplicationBaseURL + '/' + vm.mailbox.id + '/saveMessages?uid=' + vm.message.uid;\n }\n\n function viewRawSource($event) {\n Message.$$resource.post(vm.message.id, \"viewsource\").then(function(data) {\n $mdDialog.show({\n parent: angular.element(document.body),\n targetEvent: $event,\n clickOutsideToClose: true,\n escapeToClose: true,\n template: [\n '',\n ' ',\n '
',\n            data,\n            '    
',\n '
',\n '
',\n ' ' + l('Close') + '',\n '
',\n '
'\n ].join(''),\n controller: MessageRawSourceDialogController\n });\n\n /**\n * @ngInject\n */\n MessageRawSourceDialogController.$inject = ['scope', '$mdDialog'];\n function MessageRawSourceDialogController(scope, $mdDialog) {\n scope.close = function() {\n $mdDialog.hide();\n };\n }\n });\n }\n }\n \n angular\n .module('SOGo.MailerUI') \n .controller('MessageController', MessageController); \n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @ngInject\n */\n MessageEditorController.$inject = ['$stateParams', '$state', '$q', '$mdDialog', 'FileUploader', 'stateAccounts', 'stateMessage', 'stateRecipients', '$timeout', 'encodeUriFilter', 'sgFocus', 'Dialog', 'Account', 'Mailbox', 'AddressBook', 'Preferences'];\n function MessageEditorController($stateParams, $state, $q, $mdDialog, FileUploader, stateAccounts, stateMessage, stateRecipients, $timeout, encodeUriFilter, focus, Dialog, Account, Mailbox, AddressBook, Preferences) {\n var vm = this;\n\n vm.addRecipient = addRecipient;\n vm.autocomplete = {to: {}, cc: {}, bcc: {}};\n vm.autosave = null;\n vm.autosaveDrafts = autosaveDrafts;\n vm.hideCc = true;\n vm.hideBcc = true;\n vm.cancel = cancel;\n vm.send = send;\n vm.contactFilter = contactFilter;\n vm.identities = _.pluck(_.flatten(_.pluck(stateAccounts, 'identities')), 'full');\n vm.uploader = new FileUploader({\n url: stateMessage.$absolutePath({asDraft: true}) + '/save',\n autoUpload: true,\n alias: 'attachments',\n onProgressItem: function(item, progress) {\n console.debug(item); console.debug(progress);\n },\n onSuccessItem: function(item, response, status, headers) {\n stateMessage.$setUID(response.uid);\n stateMessage.$reload();\n console.debug(item); console.debug('success = ' + JSON.stringify(response, undefined, 2));\n },\n onCancelItem: function(item, response, status, headers) {\n console.debug(item); console.debug('cancel = ' + JSON.stringify(response, undefined, 2));\n\n // We remove the attachment\n stateMessage.$deleteAttachment(item.file.name);\n this.removeFromQueue(item);\n },\n onErrorItem: function(item, response, status, headers) {\n console.debug(item); console.debug('error = ' + JSON.stringify(response, undefined, 2));\n }\n });\n\n if ($stateParams.actionName == 'reply') {\n stateMessage.$reply().then(function(msgObject) {\n vm.message = msgObject;\n vm.hideCc = (!msgObject.editable.cc || msgObject.editable.cc.length === 0);\n vm.hideBcc = (!msgObject.editable.bcc || msgObject.editable.bcc.length === 0);\n });\n }\n else if ($stateParams.actionName == 'replyall') {\n stateMessage.$replyAll().then(function(msgObject) {\n vm.message = msgObject;\n vm.hideCc = (!msgObject.editable.cc || msgObject.editable.cc.length === 0);\n vm.hideBcc = (!msgObject.editable.bcc || msgObject.editable.bcc.length === 0);\n });\n }\n else if ($stateParams.actionName == 'forward') {\n stateMessage.$forward().then(function(msgObject) {\n vm.message = msgObject;\n });\n }\n else if (angular.isDefined(stateMessage)) {\n vm.message = stateMessage;\n }\n\n if (angular.isDefined(stateRecipients)) {\n vm.message.editable.to = _.union(vm.message.editable.to, _.pluck(stateRecipients, 'full'));\n }\n\n function cancel() {\n // TODO: delete draft?\n if (vm.autosave)\n $timeout.cancel(vm.autosave);\n\n $mdDialog.cancel();\n }\n\n function send() {\n if (vm.autosave)\n $timeout.cancel(vm.autosave);\n\n vm.message.$send().then(function(data) {\n $mdDialog.hide();\n }, function(data) {\n Dialog.alert(l(data.status), l(data.message));\n });\n }\n\n function contactFilter($query) {\n return AddressBook.$filterAll($query);\n }\n\n function addRecipient(user) {\n var recipient = [];\n\n if (angular.isString(user))\n return user;\n if (user.$$fullname)\n recipient.push(user.$$fullname);\n if (user.$$email)\n recipient.push('<' + user.$$email + '>');\n\n return recipient.join(' ');\n }\n\n // Drafts autosaving\n function autosaveDrafts() {\n vm.message.$save();\n if (Preferences.defaults.SOGoMailAutoSave)\n vm.autosave = $timeout(vm.autosaveDrafts, Preferences.defaults.SOGoMailAutoSave*1000*60);\n }\n\n // Select list based on user's settings\n Preferences.ready().then(function() {\n if (Preferences.defaults.SOGoMailAutoSave)\n vm.autosave = $timeout(vm.autosaveDrafts, Preferences.defaults.SOGoMailAutoSave*1000*60);\n vm.localeCode = Preferences.defaults.LocaleCode;\n });\n }\n\n angular\n .module('SOGo.MailerUI') \n .controller('MessageEditorController', MessageEditorController); \n})();\n"]} \ No newline at end of file diff --git a/UI/WebServerResources/js/Scheduler.services.js b/UI/WebServerResources/js/Scheduler.services.js index fb1694ef4..8b1329e82 100644 --- a/UI/WebServerResources/js/Scheduler.services.js +++ b/UI/WebServerResources/js/Scheduler.services.js @@ -1,2 +1,2 @@ -!function(){"use strict";function Calendar(futureCalendarData){if(this.init(futureCalendarData),this.name&&!this.id){var newCalendarData=Calendar.$$resource.create("createFolder",this.name);angular.extend(this,newCalendarData)}this.id&&(this.$acl=new Calendar.$$Acl("Calendar/"+this.id))}Calendar.$factory=["$q","$timeout","$log","sgSettings","Resource","Component","Acl",function($q,$timeout,$log,Settings,Resource,Component,Acl){return angular.extend(Calendar,{$q:$q,$timeout:$timeout,$log:$log,$$resource:new Resource(Settings.activeUser("folderURL")+"Calendar",Settings.activeUser()),$Component:Component,$$Acl:Acl,activeUser:Settings.activeUser()}),Calendar}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").factory("Calendar",Calendar.$factory),Calendar.$add=function(calendar){var list,sibling,i;list=calendar.isWebCalendar?this.$webcalendars:calendar.isSubscription?this.$subscriptions:this.$calendars,sibling=_.find(list,function(o){return"personal"!=o.id&&1===o.name.localeCompare(calendar.name)}),i=sibling?_.indexOf(_.pluck(list,"id"),sibling.id):1,list.splice(i,0,calendar)},Calendar.$findAll=function(data){var _this=this;return data&&(this.$calendars=[],this.$subscriptions=[],this.$webcalendars=[],angular.forEach(data,function(o,i){var calendar=new Calendar(o);calendar.isWebCalendar?_this.$webcalendars.push(calendar):calendar.isSubscription?_this.$subscriptions.push(calendar):_this.$calendars.push(calendar)})),_.union(this.$calendars,this.$subscriptions,this.$webcalendars)},Calendar.$get=function(id){var calendar;return calendar=_.find(Calendar.$calendars,function(o){return o.id==id}),calendar||(calendar=_.find(Calendar.$subscriptions,function(o){return o.id==id})),calendar||(calendar=_.find(Calendar.$webcalendars,function(o){return o.id==id})),calendar},Calendar.$subscribe=function(uid,path){var _this=this;return Calendar.$$resource.userResource(uid).fetch(path,"subscribe").then(function(calendarData){var calendar=new Calendar(calendarData);return _.find(_this.$subscriptions,function(o){return o.id==calendarData.id})||Calendar.$add(calendar),calendar})},Calendar.$addWebCalendar=function(url){var _this=this,d=Calendar.$q.defer();return _.find(_this.$webcalendars,function(o){return o.urls.webCalendarURL==url})?d.reject():Calendar.$$resource.post(null,"addWebCalendar",{url:url}).then(function(calendarData){angular.extend(calendarData,{isWebCalendar:!0,isEditable:!0,isRemote:!1,owner:Calendar.activeUser.login,urls:{webCalendarURL:url}});var calendar=new Calendar(calendarData);Calendar.$add(calendar),Calendar.$$resource.fetch(calendar.id,"reload").then(function(data){Calendar.$log.debug(JSON.stringify(data,void 0,2))}),d.resolve()},function(){d.reject()}),d.promise},Calendar.prototype.init=function(data){angular.extend(this,data),this.isOwned=Calendar.activeUser.isSuperUser||this.owner==Calendar.activeUser.login,this.isSubscription=!this.isRemote&&this.owner!=Calendar.activeUser.login},Calendar.prototype.getClassName=function(base){return angular.isUndefined(base)&&(base="fg"),base+"-folder"+this.id},Calendar.prototype.$rename=function(name){var i=_.indexOf(_.pluck(Calendar.$calendars,"id"),this.id);return this.name=name,Calendar.$calendars.splice(i,1),Calendar.$add(this),this.$save()},Calendar.prototype.$delete=function(){var list,promise,_this=this,d=Calendar.$q.defer();return this.isSubscription?(promise=Calendar.$$resource.fetch(this.id,"unsubscribe"),list=Calendar.$subscriptions):(promise=Calendar.$$resource.remove(this.id),list=this.isWebCalendar?Calendar.$webcalendars:Calendar.$calendars),promise.then(function(){var i=_.indexOf(_.pluck(list,"id"),_this.id);list.splice(i,1),d.resolve()},function(data,status){d.reject(data)}),d.promise},Calendar.$deleteComponents=function(components){var calendars={},_this=this;_.forEach(components,function(component){angular.isDefined(calendars[component.c_folder])||(calendars[component.c_folder]=[]),calendars[component.c_folder].push(component.c_name)}),_.forEach(calendars,function(uids,c_folder){Calendar.$$resource.post(c_folder,"batchDelete",{uids:uids})}),_this.$Component.$events=_.difference(_this.$Component.$events,components),_this.$Component.$tasks=_.difference(_this.$Component.$tasks,components)},Calendar.prototype.$save=function(){return Calendar.$$resource.save(this.id,this.$omit()).then(function(data){return data})},Calendar.prototype.$setActivation=function(){return Calendar.$$resource.fetch(this.id,(this.active?"":"de")+"activateFolder")},Calendar.prototype.$getComponent=function(componentId,recurrenceId){return Calendar.$Component.$find(this.id,componentId,recurrenceId)},Calendar.prototype.$omit=function(){var calendar={};return angular.forEach(this,function(value,key){"constructor"!=key&&"$"!=key[0]&&(calendar[key]=value)}),calendar}}(),function(){"use strict";function Component(futureComponentData){if("function"!=typeof futureComponentData.then){if(this.init(futureComponentData),this.pid&&!this.id){var newComponentData=Component.$$resource.newguid(this.pid);this.$unwrap(newComponentData),this.isNew=!0}}else this.$unwrap(futureComponentData)}Component.$factory=["$q","$timeout","$log","sgSettings","Preferences","Gravatar","Resource",function($q,$timeout,$log,Settings,Preferences,Gravatar,Resource){return angular.extend(Component,{$q:$q,$timeout:$timeout,$log:$log,$Preferences:Preferences,$gravatar:Gravatar,$$resource:new Resource(Settings.baseURL(),Settings.activeUser()),timeFormat:"%H:%M",$query:{value:"",search:"title_Category_Location"},$queryEvents:{sort:"start",asc:1,filterpopup:"view_next7"},$queryTasks:{sort:"status",asc:1,filterpopup:"view_incomplete"}}),Preferences.ready().then(function(){Preferences.settings.Calendar.EventsFilterState&&(Component.$queryEvents.filterpopup=Preferences.settings.Calendar.EventsFilterState),Preferences.settings.Calendar.TasksFilterState&&(Component.$queryTasks.filterpopup=Preferences.settings.Calendar.TasksFilterState),Preferences.settings.Calendar.EventsSortingState&&(Component.$queryEvents.sort=Preferences.settings.Calendar.EventsSortingState[0],Component.$queryEvents.asc=parseInt(Preferences.settings.Calendar.EventsSortingState[1])),Preferences.settings.Calendar.TasksSortingState&&(Component.$queryTasks.sort=Preferences.settings.Calendar.TasksSortingState[0],Component.$queryTasks.asc=parseInt(Preferences.settings.Calendar.TasksSortingState[1])),Component.$queryTasks.show_completed=parseInt(Preferences.settings.ShowCompletedTasks),Component.$categories=Preferences.defaults.SOGoCalendarCategoriesColors,Preferences.defaults.SOGoTimeFormat&&(Component.timeFormat=Preferences.defaults.SOGoTimeFormat)}),Component}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").factory("Component",Component.$factory),Component.$selectedCount=function(){var count;return count=0,Component.$events&&(count=_.filter(Component.$events,function(event){return event.selected}).length),Component.$tasks&&(count=_.filter(Component.$tasks,function(event){return event.selected}).length),count},Component.$filter=function(type,options){var _this=this,now=new Date,day=now.getDate(),month=now.getMonth()+1,year=now.getFullYear(),queryKey="$query"+type.capitalize(),params={day:""+year+(10>month?"0":"")+month+(10>day?"0":"")+day};return this.$Preferences.ready().then(function(){var futureComponentData,otherType,dirty=!1;return angular.extend(_this.$query,params),options&&_.each(_.keys(options),function(key){dirty|=_this.$query[key]&&options[key]!=Component.$query[key],"reload"==key&&options[key]?dirty=!0:angular.isDefined(_this.$query[key])?_this.$query[key]=options[key]:_this[queryKey][key]=options[key]}),futureComponentData=_this.$$resource.fetch(null,type+"list",angular.extend(_this[queryKey],_this.$query)),otherType="tasks"==type?"$events":"$tasks",dirty&&(delete Component[otherType],Component.$log.debug("force reload of "+otherType)),_this.$unwrapCollection(type,futureComponentData)})},Component.$find=function(calendarId,componentId,occurrenceId){var futureComponentData,path=[calendarId,componentId];return occurrenceId&&path.push(occurrenceId),futureComponentData=this.$$resource.fetch(path.join("/"),"view"),new Component(futureComponentData)},Component.filterCategories=function(query){var re=new RegExp(query,"i");return _.filter(_.keys(Component.$categories),function(category){return-1!=category.search(re)})},Component.saveSelectedList=function(componentType){return this.$$resource.post(null,"saveSelectedList",{list:componentType+"ListView"})},Component.$eventsBlocksForView=function(view,date){var viewAction,startDate,endDate;return"day"==view?(viewAction="dayView",startDate=endDate=date):"week"==view?(viewAction="weekView",startDate=date.beginOfWeek(),endDate=new Date,endDate.setTime(startDate.getTime()),endDate.addDays(6)):"month"==view&&(viewAction="monthView",startDate=date,startDate.setDate(1),startDate=startDate.beginOfWeek(),endDate=new Date,endDate.setTime(startDate.getTime()),endDate.setMonth(endDate.getMonth()+1),endDate.addDays(-1),endDate=endDate.endOfWeek()),this.$eventsBlocks(viewAction,startDate,endDate)},Component.$eventsBlocks=function(view,startDate,endDate){var params,futureComponentData,i,deferred=Component.$q.defer();return params={view:view.toLowerCase(),sd:startDate.getDayString(),ed:endDate.getDayString()},Component.$log.debug("eventsblocks "+JSON.stringify(params,void 0,2)),futureComponentData=this.$$resource.fetch(null,"eventsblocks",params),futureComponentData.then(function(data){Component.$timeout(function(){var components=[],blocks={};for(_.reduce(data.events,function(objects,eventData,i){var componentData=_.object(data.eventsFields,eventData),start=new Date(1e3*componentData.c_startdate);return componentData.hour=start.getHourString(),objects.push(new Component(componentData)),objects},components),_.each(_.flatten(data.blocks),function(block){block.component=components[block.nbr]}),i=0;i1||this.repeat.days&&this.repeat.days.length>0||this.repeat.monthdays&&this.repeat.monthdays.length>0||this.repeat.months&&this.repeat.months.length>0);return b},Component.prototype.isEditable=function(){return!this.occurrenceId&&!this.isReadOnly},Component.prototype.isEditableOccurrence=function(){return this.occurrenceId&&!this.isReadOnly},Component.prototype.isInvitation=function(){return!this.occurrenceId&&this.userHasRSVP},Component.prototype.isInvitationOccurrence=function(){return this.occurrenceId&&this.userHasRSVP},Component.prototype.isReadOnly=function(){return this.isReadOnly&&!this.userHasRSVP},Component.prototype.enablePercentComplete=function(){return this.component="not-specified"!=this.status&&"cancelled"!=this.status},Component.prototype.coversFreeBusy=function(day,hour,quarter){var b=angular.isDefined(this.freebusy[day])&&angular.isDefined(this.freebusy[day][hour])&&1==this.freebusy[day][hour][quarter];return b},Component.prototype.updateFreeBusyCoverage=function(){var _this=this,freebusy={};if(this.start&&this.end){var roundedStart=new Date(this.start.getTime()),roundedEnd=new Date(this.end.getTime()),startQuarter=parseInt(roundedStart.getMinutes()/15+.5),endQuarter=parseInt(roundedEnd.getMinutes()/15+.5);return roundedStart.setMinutes(15*startQuarter),roundedEnd.setMinutes(15*endQuarter),_.each(roundedStart.daysUpTo(roundedEnd),function(date,index){var hourKey,currentDay=date.getDate(),dayKey=date.getDayString();if(dayKey==_this.start.getDayString())for(hourKey=date.getHours().toString(),freebusy[dayKey]={},freebusy[dayKey][hourKey]=[];startQuarter>0;)freebusy[dayKey][hourKey].push(0),startQuarter--;else date=date.beginOfDay(),freebusy[dayKey]={};for(;date.getTime()<_this.end.getTime()&&date.getDate()==currentDay;)hourKey=date.getHours().toString(),angular.isUndefined(freebusy[dayKey][hourKey])&&(freebusy[dayKey][hourKey]=[]),freebusy[dayKey][hourKey].push(1),date.addMinutes(15)}),freebusy}},Component.prototype.updateFreeBusy=function(attendee){var params,url,days;attendee.uid&&(params={sday:this.start.getDayString(),eday:this.end.getDayString()},url=["..","..",attendee.uid,"freebusy.ifb"],days=_.map(this.start.daysUpTo(this.end),function(day){return day.getDayString()}),angular.isUndefined(attendee.freebusy)&&(attendee.freebusy={}),Component.$$resource.fetch(url.join("/"),"ajaxRead",params).then(function(data){_.each(days,function(day){var hour;angular.isUndefined(attendee.freebusy[day])&&(attendee.freebusy[day]={}),angular.isUndefined(data[day])&&(data[day]={});for(var i=0;23>=i;i++)hour=i.toString(),data[day][hour]?attendee.freebusy[day][hour]=[data[day][hour][0],data[day][hour][15],data[day][hour][30],data[day][hour][45]]:attendee.freebusy[day][hour]=[0,0,0,0]})}))},Component.prototype.getClassName=function(base){return angular.isUndefined(base)&&(base="fg"),base+"-folder"+(this.destinationCalendar||this.c_folder)},Component.prototype.addAttendee=function(card){var attendee;card&&(attendee={name:card.c_cn,email:card.$preferredEmail(),role:"req-participant",status:"needs-action",uid:card.c_uid},_.find(this.attendees,function(o){return o.email==attendee.email})||(attendee.image=Component.$gravatar(attendee.email,32),this.attendees?this.attendees.push(attendee):this.attendees=[attendee],this.updateFreeBusy(attendee)))},Component.prototype.hasAttendee=function(card){var attendee=_.find(this.attendees,function(attendee){return _.find(card.emails,function(email){return email.value==attendee.email})});return angular.isDefined(attendee)},Component.prototype.canRemindAttendeesByEmail=function(){return"email"==this.alarm.action&&!this.isReadOnly&&this.attendees&&this.attendees.length>0},Component.prototype.addAttachUrl=function(attachUrl){if(angular.isUndefined(this.attachUrls))this.attachUrls=[{value:attachUrl}];else{for(var i=0;i-1&&this.attachUrls.length>index&&this.attachUrls.splice(index,1)},Component.prototype.$addDueDate=function(){this.due=new Date,this.dueDate=this.due.toISOString()},Component.prototype.$deleteDueDate=function(){delete this.due},Component.prototype.$addStartDate=function(){this.start=new Date},Component.prototype.$deleteStartDate=function(){delete this.start,delete this.startDate},Component.prototype.$reset=function(){var _this=this;angular.forEach(this,function(value,key){"constructor"!=key&&"$"!=key[0]&&delete _this[key]}),this.init(this.$shadowData),this.$shadowData=this.$omit(!0)},Component.prototype.$reply=function(){var data,_this=this,path=[this.pid,this.id];return this.occurrenceId&&path.push(this.occurrenceId),data={reply:this.reply,delegatedTo:this.delegatedTo,alarm:this.$hasAlarm?this.alarm:{}},Component.$$resource.save(path.join("/"),data,{action:"rsvpAppointment"}).then(function(data){return _this.$shadowData=_this.$omit(!0),data})},Component.prototype.$save=function(){var options,_this=this,path=[this.pid,this.id];return this.isNew&&(options={action:"saveAs"+this.type.capitalize()}),this.occurrenceId&&path.push(this.occurrenceId),Component.$$resource.save(path.join("/"),this.$omit(),options).then(function(data){return _this.$shadowData=_this.$omit(!0),data})},Component.prototype.$unwrap=function(futureComponentData){var _this=this;this.$futureComponentData=futureComponentData,this.$futureComponentData.then(function(data){_this.init(data),_this.$shadowData=_this.$omit()},function(data){angular.extend(_this,data),_this.isError=!0,Component.$log.error(_this.error)})},Component.prototype.$omit=function(){function formatTime(date){var hours=date.getHours();10>hours&&(hours="0"+hours);var minutes=date.getMinutes();return 10>minutes&&(minutes="0"+minutes),hours+":"+minutes}function formatDate(date){var year=date.getYear();1e3>year&&(year+=1900);var month=""+(date.getMonth()+1);1==month.length&&(month="0"+month);var day=""+date.getDate();return 1==day.length&&(day="0"+day),year+"-"+month+"-"+day}var component={};return angular.forEach(this,function(value,key){"constructor"!=key&&"$"!=key[0]&&(component[key]=angular.copy(value))}),component.startDate=component.start?formatDate(component.start):"",component.startTime=component.start?formatTime(component.start):"",component.endDate=component.end?formatDate(component.end):"",component.endTime=component.end?formatTime(component.end):"",component.dueDate=component.due?formatDate(component.due):"",component.dueTime=component.due?formatTime(component.due):"",this.$hasCustomRepeat?"monthly"==this.repeat.frequency&&this.repeat.month.type&&"byday"==this.repeat.month.type||"yearly"==this.repeat.frequency&&this.repeat.year.byday?(delete component.repeat.monthdays,component.repeat.days=[{day:this.repeat.month.day,occurrence:this.repeat.month.occurrence.toString()}]):this.repeat.month.type&&delete component.repeat.days:this.repeat.frequency&&(component.repeat={frequency:this.repeat.frequency}),this.repeat.frequency?"until"==this.repeat.end&&this.repeat.until?component.repeat.until=this.repeat.until.stringWithSeparator("-"):"count"==this.repeat.end&&this.repeat.count?component.repeat.count=this.repeat.count:(delete component.repeat.until,delete component.repeat.count):delete component.repeat,this.$hasAlarm?!this.alarm.action||"email"!=this.alarm.action||this.attendees&&this.attendees.length>0||(this.alarm.attendees=0,this.alarm.organizer=1):component.alarm={},component}}(); +!function(){"use strict";function Calendar(futureCalendarData){if(this.init(futureCalendarData),this.name&&!this.id){var newCalendarData=Calendar.$$resource.create("createFolder",this.name);angular.extend(this,newCalendarData)}this.id&&(this.$acl=new Calendar.$$Acl("Calendar/"+this.id))}Calendar.$factory=["$q","$timeout","$log","sgSettings","Resource","Component","Acl",function($q,$timeout,$log,Settings,Resource,Component,Acl){return angular.extend(Calendar,{$q:$q,$timeout:$timeout,$log:$log,$$resource:new Resource(Settings.activeUser("folderURL")+"Calendar",Settings.activeUser()),$Component:Component,$$Acl:Acl,activeUser:Settings.activeUser()}),Calendar}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").factory("Calendar",Calendar.$factory),Calendar.$add=function(calendar){var list,sibling,i;list=calendar.isWebCalendar?this.$webcalendars:calendar.isSubscription?this.$subscriptions:this.$calendars,sibling=_.find(list,function(o){return"personal"!=o.id&&1===o.name.localeCompare(calendar.name)}),i=sibling?_.indexOf(_.pluck(list,"id"),sibling.id):1,list.splice(i,0,calendar)},Calendar.$findAll=function(data){var _this=this;return data&&(this.$calendars=[],this.$subscriptions=[],this.$webcalendars=[],angular.forEach(data,function(o,i){var calendar=new Calendar(o);calendar.isWebCalendar?_this.$webcalendars.push(calendar):calendar.isSubscription?_this.$subscriptions.push(calendar):_this.$calendars.push(calendar)})),_.union(this.$calendars,this.$subscriptions,this.$webcalendars)},Calendar.$get=function(id){var calendar;return calendar=_.find(Calendar.$calendars,function(o){return o.id==id}),calendar||(calendar=_.find(Calendar.$subscriptions,function(o){return o.id==id})),calendar||(calendar=_.find(Calendar.$webcalendars,function(o){return o.id==id})),calendar},Calendar.$subscribe=function(uid,path){var _this=this;return Calendar.$$resource.userResource(uid).fetch(path,"subscribe").then(function(calendarData){var calendar=new Calendar(calendarData);return _.find(_this.$subscriptions,function(o){return o.id==calendarData.id})||Calendar.$add(calendar),calendar})},Calendar.$addWebCalendar=function(url){var _this=this,d=Calendar.$q.defer();return _.find(_this.$webcalendars,function(o){return o.urls.webCalendarURL==url})?d.reject():Calendar.$$resource.post(null,"addWebCalendar",{url:url}).then(function(calendarData){angular.extend(calendarData,{isWebCalendar:!0,isEditable:!0,isRemote:!1,owner:Calendar.activeUser.login,urls:{webCalendarURL:url}});var calendar=new Calendar(calendarData);Calendar.$add(calendar),Calendar.$$resource.fetch(calendar.id,"reload").then(function(data){Calendar.$log.debug(JSON.stringify(data,void 0,2))}),d.resolve()},function(){d.reject()}),d.promise},Calendar.prototype.init=function(data){angular.extend(this,data),this.isOwned=Calendar.activeUser.isSuperUser||this.owner==Calendar.activeUser.login,this.isSubscription=!this.isRemote&&this.owner!=Calendar.activeUser.login},Calendar.prototype.getClassName=function(base){return angular.isUndefined(base)&&(base="fg"),base+"-folder"+this.id},Calendar.prototype.$rename=function(name){var i=_.indexOf(_.pluck(Calendar.$calendars,"id"),this.id);return this.name=name,Calendar.$calendars.splice(i,1),Calendar.$add(this),this.$save()},Calendar.prototype.$delete=function(){var list,promise,_this=this,d=Calendar.$q.defer();return this.isSubscription?(promise=Calendar.$$resource.fetch(this.id,"unsubscribe"),list=Calendar.$subscriptions):(promise=Calendar.$$resource.remove(this.id),list=this.isWebCalendar?Calendar.$webcalendars:Calendar.$calendars),promise.then(function(){var i=_.indexOf(_.pluck(list,"id"),_this.id);list.splice(i,1),d.resolve()},function(data,status){d.reject(data)}),d.promise},Calendar.$deleteComponents=function(components){var calendars={},_this=this;_.forEach(components,function(component){angular.isDefined(calendars[component.c_folder])||(calendars[component.c_folder]=[]),calendars[component.c_folder].push(component.c_name)}),_.forEach(calendars,function(uids,c_folder){Calendar.$$resource.post(c_folder,"batchDelete",{uids:uids})}),_this.$Component.$events=_.difference(_this.$Component.$events,components),_this.$Component.$tasks=_.difference(_this.$Component.$tasks,components)},Calendar.prototype.$save=function(){return Calendar.$$resource.save(this.id,this.$omit()).then(function(data){return data})},Calendar.prototype.$setActivation=function(){return Calendar.$$resource.fetch(this.id,(this.active?"":"de")+"activateFolder")},Calendar.prototype.$getComponent=function(componentId,recurrenceId){return Calendar.$Component.$find(this.id,componentId,recurrenceId)},Calendar.prototype.$omit=function(){var calendar={};return angular.forEach(this,function(value,key){"constructor"!=key&&"$"!=key[0]&&(calendar[key]=value)}),calendar}}(),function(){"use strict";function Component(futureComponentData){if("function"!=typeof futureComponentData.then){if(this.init(futureComponentData),this.pid&&!this.id){var newComponentData=Component.$$resource.newguid(this.pid);this.$unwrap(newComponentData),this.isNew=!0}}else this.$unwrap(futureComponentData)}Component.$factory=["$q","$timeout","$log","sgSettings","Preferences","Gravatar","Resource",function($q,$timeout,$log,Settings,Preferences,Gravatar,Resource){return angular.extend(Component,{$q:$q,$timeout:$timeout,$log:$log,$Preferences:Preferences,$gravatar:Gravatar,$$resource:new Resource(Settings.baseURL(),Settings.activeUser()),timeFormat:"%H:%M",$query:{value:"",search:"title_Category_Location"},$queryEvents:{sort:"start",asc:1,filterpopup:"view_next7"},$queryTasks:{sort:"status",asc:1,filterpopup:"view_incomplete"}}),Preferences.ready().then(function(){Preferences.settings.Calendar.EventsFilterState&&(Component.$queryEvents.filterpopup=Preferences.settings.Calendar.EventsFilterState),Preferences.settings.Calendar.TasksFilterState&&(Component.$queryTasks.filterpopup=Preferences.settings.Calendar.TasksFilterState),Preferences.settings.Calendar.EventsSortingState&&(Component.$queryEvents.sort=Preferences.settings.Calendar.EventsSortingState[0],Component.$queryEvents.asc=parseInt(Preferences.settings.Calendar.EventsSortingState[1])),Preferences.settings.Calendar.TasksSortingState&&(Component.$queryTasks.sort=Preferences.settings.Calendar.TasksSortingState[0],Component.$queryTasks.asc=parseInt(Preferences.settings.Calendar.TasksSortingState[1])),Component.$queryTasks.show_completed=parseInt(Preferences.settings.ShowCompletedTasks),Component.$categories=Preferences.defaults.SOGoCalendarCategoriesColors,Preferences.defaults.SOGoTimeFormat&&(Component.timeFormat=Preferences.defaults.SOGoTimeFormat)}),Component}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").factory("Component",Component.$factory),Component.$selectedCount=function(){var count;return count=0,Component.$events&&(count=_.filter(Component.$events,function(event){return event.selected}).length),Component.$tasks&&(count=_.filter(Component.$tasks,function(event){return event.selected}).length),count},Component.$filter=function(type,options){var _this=this,now=new Date,day=now.getDate(),month=now.getMonth()+1,year=now.getFullYear(),queryKey="$query"+type.capitalize(),params={day:""+year+(10>month?"0":"")+month+(10>day?"0":"")+day};return this.$Preferences.ready().then(function(){var futureComponentData,otherType,dirty=!1;return angular.extend(_this.$query,params),options&&_.each(_.keys(options),function(key){dirty|=_this.$query[key]&&options[key]!=Component.$query[key],"reload"==key&&options[key]?dirty=!0:angular.isDefined(_this.$query[key])?_this.$query[key]=options[key]:_this[queryKey][key]=options[key]}),futureComponentData=_this.$$resource.fetch(null,type+"list",angular.extend(_this[queryKey],_this.$query)),otherType="tasks"==type?"$events":"$tasks",dirty&&(delete Component[otherType],Component.$log.debug("force reload of "+otherType)),_this.$unwrapCollection(type,futureComponentData)})},Component.$find=function(calendarId,componentId,occurrenceId){var futureComponentData,path=[calendarId,componentId];return occurrenceId&&path.push(occurrenceId),futureComponentData=this.$$resource.fetch(path.join("/"),"view"),new Component(futureComponentData)},Component.filterCategories=function(query){var re=new RegExp(query,"i");return _.filter(_.keys(Component.$categories),function(category){return-1!=category.search(re)})},Component.saveSelectedList=function(componentType){return this.$$resource.post(null,"saveSelectedList",{list:componentType+"ListView"})},Component.$eventsBlocksForView=function(view,date){var viewAction,startDate,endDate;return"day"==view?(viewAction="dayView",startDate=endDate=date):"week"==view?(viewAction="weekView",startDate=date.beginOfWeek(),endDate=new Date,endDate.setTime(startDate.getTime()),endDate.addDays(6)):"month"==view&&(viewAction="monthView",startDate=date,startDate.setDate(1),startDate=startDate.beginOfWeek(),endDate=new Date,endDate.setTime(startDate.getTime()),endDate.setMonth(endDate.getMonth()+1),endDate.addDays(-1),endDate=endDate.endOfWeek()),this.$eventsBlocks(viewAction,startDate,endDate)},Component.$eventsBlocks=function(view,startDate,endDate){var params,futureComponentData,i,deferred=Component.$q.defer();return params={view:view.toLowerCase(),sd:startDate.getDayString(),ed:endDate.getDayString()},Component.$log.debug("eventsblocks "+JSON.stringify(params,void 0,2)),futureComponentData=this.$$resource.fetch(null,"eventsblocks",params),futureComponentData.then(function(data){Component.$timeout(function(){var components=[],blocks={};for(_.reduce(data.events,function(objects,eventData,i){var componentData=_.object(data.eventsFields,eventData),start=new Date(1e3*componentData.c_startdate);return componentData.hour=start.getHourString(),objects.push(new Component(componentData)),objects},components),_.each(_.flatten(data.blocks),function(block){block.component=components[block.nbr]}),i=0;i1||this.repeat.days&&this.repeat.days.length>0||this.repeat.monthdays&&this.repeat.monthdays.length>0||this.repeat.months&&this.repeat.months.length>0);return b},Component.prototype.isEditable=function(){return!this.occurrenceId&&!this.isReadOnly},Component.prototype.isEditableOccurrence=function(){return this.occurrenceId&&!this.isReadOnly},Component.prototype.isInvitation=function(){return!this.occurrenceId&&this.userHasRSVP},Component.prototype.isInvitationOccurrence=function(){return this.occurrenceId&&this.userHasRSVP},Component.prototype.isReadOnly=function(){return this.isReadOnly&&!this.userHasRSVP},Component.prototype.enablePercentComplete=function(){return this.component="not-specified"!=this.status&&"cancelled"!=this.status},Component.prototype.coversFreeBusy=function(day,hour,quarter){var b=angular.isDefined(this.freebusy[day])&&angular.isDefined(this.freebusy[day][hour])&&1==this.freebusy[day][hour][quarter];return b},Component.prototype.updateFreeBusyCoverage=function(){var _this=this,freebusy={};if(this.start&&this.end){var roundedStart=new Date(this.start.getTime()),roundedEnd=new Date(this.end.getTime()),startQuarter=parseInt(roundedStart.getMinutes()/15+.5),endQuarter=parseInt(roundedEnd.getMinutes()/15+.5);return roundedStart.setMinutes(15*startQuarter),roundedEnd.setMinutes(15*endQuarter),_.each(roundedStart.daysUpTo(roundedEnd),function(date,index){var hourKey,currentDay=date.getDate(),dayKey=date.getDayString();if(dayKey==_this.start.getDayString())for(hourKey=date.getHours().toString(),freebusy[dayKey]={},freebusy[dayKey][hourKey]=[];startQuarter>0;)freebusy[dayKey][hourKey].push(0),startQuarter--;else date=date.beginOfDay(),freebusy[dayKey]={};for(;date.getTime()<_this.end.getTime()&&date.getDate()==currentDay;)hourKey=date.getHours().toString(),angular.isUndefined(freebusy[dayKey][hourKey])&&(freebusy[dayKey][hourKey]=[]),freebusy[dayKey][hourKey].push(1),date.addMinutes(15)}),freebusy}},Component.prototype.updateFreeBusy=function(attendee){var params,url,days;attendee.uid&&(params={sday:this.start.getDayString(),eday:this.end.getDayString()},url=["..","..",attendee.uid,"freebusy.ifb"],days=_.map(this.start.daysUpTo(this.end),function(day){return day.getDayString()}),angular.isUndefined(attendee.freebusy)&&(attendee.freebusy={}),Component.$$resource.fetch(url.join("/"),"ajaxRead",params).then(function(data){_.each(days,function(day){var hour;angular.isUndefined(attendee.freebusy[day])&&(attendee.freebusy[day]={}),angular.isUndefined(data[day])&&(data[day]={});for(var i=0;23>=i;i++)hour=i.toString(),data[day][hour]?attendee.freebusy[day][hour]=[data[day][hour][0],data[day][hour][15],data[day][hour][30],data[day][hour][45]]:attendee.freebusy[day][hour]=[0,0,0,0]})}))},Component.prototype.getClassName=function(base){return angular.isUndefined(base)&&(base="fg"),base+"-folder"+(this.destinationCalendar||this.c_folder)},Component.prototype.addAttendee=function(card){var attendee;card&&(attendee={name:card.c_cn,email:card.$preferredEmail(),role:"req-participant",status:"needs-action",uid:card.c_uid},_.find(this.attendees,function(o){return o.email==attendee.email})||(attendee.image=Component.$gravatar(attendee.email,32),this.attendees?this.attendees.push(attendee):this.attendees=[attendee],this.updateFreeBusy(attendee)))},Component.prototype.hasAttendee=function(card){var attendee=_.find(this.attendees,function(attendee){return _.find(card.emails,function(email){return email.value==attendee.email})});return angular.isDefined(attendee)},Component.prototype.canRemindAttendeesByEmail=function(){return"email"==this.alarm.action&&!this.isReadOnly&&this.attendees&&this.attendees.length>0},Component.prototype.addAttachUrl=function(attachUrl){if(angular.isUndefined(this.attachUrls))this.attachUrls=[{value:attachUrl}];else{for(var i=0;i-1&&this.attachUrls.length>index&&this.attachUrls.splice(index,1)},Component.prototype.$addDueDate=function(){this.due=new Date,this.dueDate=this.due.toISOString()},Component.prototype.$deleteDueDate=function(){delete this.due,delete this.dueDate},Component.prototype.$addStartDate=function(){this.start=new Date},Component.prototype.$deleteStartDate=function(){delete this.start,delete this.startDate},Component.prototype.$reset=function(){var _this=this;angular.forEach(this,function(value,key){"constructor"!=key&&"$"!=key[0]&&delete _this[key]}),this.init(this.$shadowData),this.$shadowData=this.$omit(!0)},Component.prototype.$reply=function(){var data,_this=this,path=[this.pid,this.id];return this.occurrenceId&&path.push(this.occurrenceId),data={reply:this.reply,delegatedTo:this.delegatedTo,alarm:this.$hasAlarm?this.alarm:{}},Component.$$resource.save(path.join("/"),data,{action:"rsvpAppointment"}).then(function(data){return _this.$shadowData=_this.$omit(!0),data})},Component.prototype.$save=function(){var options,_this=this,path=[this.pid,this.id];return this.isNew&&(options={action:"saveAs"+this.type.capitalize()}),this.occurrenceId&&path.push(this.occurrenceId),Component.$$resource.save(path.join("/"),this.$omit(),options).then(function(data){return _this.$shadowData=_this.$omit(!0),data})},Component.prototype.$unwrap=function(futureComponentData){var _this=this;this.$futureComponentData=futureComponentData,this.$futureComponentData.then(function(data){_this.init(data),_this.$shadowData=_this.$omit()},function(data){angular.extend(_this,data),_this.isError=!0,Component.$log.error(_this.error)})},Component.prototype.$omit=function(){function formatTime(date){var hours=date.getHours();10>hours&&(hours="0"+hours);var minutes=date.getMinutes();return 10>minutes&&(minutes="0"+minutes),hours+":"+minutes}function formatDate(date){var year=date.getYear();1e3>year&&(year+=1900);var month=""+(date.getMonth()+1);1==month.length&&(month="0"+month);var day=""+date.getDate();return 1==day.length&&(day="0"+day),year+"-"+month+"-"+day}var component={};return angular.forEach(this,function(value,key){"constructor"!=key&&"$"!=key[0]&&(component[key]=angular.copy(value))}),component.startDate=component.start?formatDate(component.start):"",component.startTime=component.start?formatTime(component.start):"",component.endDate=component.end?formatDate(component.end):"",component.endTime=component.end?formatTime(component.end):"",component.dueDate=component.due?formatDate(component.due):"",component.dueTime=component.due?formatTime(component.due):"",this.$hasCustomRepeat?"monthly"==this.repeat.frequency&&this.repeat.month.type&&"byday"==this.repeat.month.type||"yearly"==this.repeat.frequency&&this.repeat.year.byday?(delete component.repeat.monthdays,component.repeat.days=[{day:this.repeat.month.day,occurrence:this.repeat.month.occurrence.toString()}]):this.repeat.month.type&&delete component.repeat.days:this.repeat.frequency&&(component.repeat={frequency:this.repeat.frequency}),this.repeat.frequency?"until"==this.repeat.end&&this.repeat.until?component.repeat.until=this.repeat.until.stringWithSeparator("-"):"count"==this.repeat.end&&this.repeat.count?component.repeat.count=this.repeat.count:(delete component.repeat.until,delete component.repeat.count):delete component.repeat,this.$hasAlarm?!this.alarm.action||"email"!=this.alarm.action||this.attendees&&this.attendees.length>0||(this.alarm.attendees=0,this.alarm.organizer=1):component.alarm={},component}}(); //# sourceMappingURL=Scheduler.services.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Scheduler.services.js.map b/UI/WebServerResources/js/Scheduler.services.js.map index c83ee312b..b1b13b969 100644 --- a/UI/WebServerResources/js/Scheduler.services.js.map +++ b/UI/WebServerResources/js/Scheduler.services.js.map @@ -1 +1 @@ -{"version":3,"file":"Scheduler.services.js","sources":["Scheduler/Calendar.service.js","Scheduler/Component.service.js"],"names":["Calendar","futureCalendarData","this","init","name","id","newCalendarData","$$resource","create","angular","extend","$acl","$$Acl","$factory","$q","$timeout","$log","Settings","Resource","Component","Acl","activeUser","$Component","module","e","factory","$add","calendar","list","sibling","i","isWebCalendar","$webcalendars","isSubscription","$subscriptions","$calendars","_","find","o","localeCompare","indexOf","pluck","splice","$findAll","data","_this","forEach","push","union","$get","$subscribe","uid","path","userResource","fetch","then","calendarData","$addWebCalendar","url","d","defer","urls","webCalendarURL","reject","post","isEditable","isRemote","owner","login","debug","JSON","stringify","undefined","resolve","promise","prototype","isOwned","isSuperUser","getClassName","base","isUndefined","$rename","$save","$delete","remove","status","$deleteComponents","components","calendars","component","isDefined","c_folder","c_name","uids","$events","difference","$tasks","save","$omit","$setActivation","active","$getComponent","componentId","recurrenceId","$find","value","key","futureComponentData","pid","newComponentData","newguid","$unwrap","isNew","Preferences","Gravatar","$Preferences","$gravatar","baseURL","timeFormat","$query","search","$queryEvents","sort","asc","filterpopup","$queryTasks","ready","settings","EventsFilterState","TasksFilterState","EventsSortingState","parseInt","TasksSortingState","show_completed","ShowCompletedTasks","$categories","defaults","SOGoCalendarCategoriesColors","SOGoTimeFormat","$selectedCount","count","filter","event","selected","length","$filter","type","options","now","Date","day","getDate","month","getMonth","year","getFullYear","queryKey","capitalize","params","otherType","dirty","each","keys","$unwrapCollection","calendarId","occurrenceId","join","filterCategories","query","re","RegExp","category","saveSelectedList","componentType","$eventsBlocksForView","view","date","viewAction","startDate","endDate","beginOfWeek","setTime","getTime","addDays","setDate","setMonth","endOfWeek","$eventsBlocks","deferred","toLowerCase","sd","getDayString","ed","blocks","reduce","events","objects","eventData","componentData","object","eventsFields","start","c_startdate","hour","getHourString","flatten","block","nbr","$blocks","fields","invoke","categories","repeat","alarm","action","quantity","unit","reference","relation","classification","substring","end","addHours","dueDate","due","$isRecurrent","days","byDayMask","occurrence","frequency","byday","toString","interval","monthdays","months","until","asDate","$hasCustomRepeat","hasCustomRepeat","units","M","H","D","W","match","exec","SOGoCalendarDefaultReminder","$hasAlarm","destinationCalendar","organizer","email","$image","freebusy","updateFreeBusyCoverage","attendees","attendee","image","updateFreeBusy","b","isReadOnly","isEditableOccurrence","isInvitation","userHasRSVP","isInvitationOccurrence","enablePercentComplete","coversFreeBusy","quarter","roundedStart","roundedEnd","startQuarter","getMinutes","endQuarter","setMinutes","daysUpTo","index","hourKey","currentDay","dayKey","getHours","beginOfDay","addMinutes","sday","eday","map","addAttendee","card","c_cn","$preferredEmail","role","c_uid","hasAttendee","emails","canRemindAttendeesByEmail","addAttachUrl","attachUrl","attachUrls","deleteAttachUrl","$addDueDate","toISOString","$deleteDueDate","$addStartDate","$deleteStartDate","$reset","$shadowData","$reply","reply","delegatedTo","$futureComponentData","isError","error","formatTime","hours","minutes","formatDate","getYear","copy","startTime","endTime","dueTime","stringWithSeparator"],"mappings":"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","sourcesContent":["/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Calendar\n * @constructor\n * @param {object} futureCalendarData - either an object literal or a promise\n */\n function Calendar(futureCalendarData) {\n // Data is immediately available\n this.init(futureCalendarData);\n if (this.name && !this.id) {\n // Create a new calendar on the server\n var newCalendarData = Calendar.$$resource.create('createFolder', this.name);\n angular.extend(this, newCalendarData);\n }\n if (this.id) {\n this.$acl = new Calendar.$$Acl('Calendar/' + this.id);\n }\n }\n\n /**\n * @memberof Calendar\n * @desc The factory we'll use to register with Angular\n * @returns the Calendar constructor\n */\n Calendar.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Resource', 'Component', 'Acl', function($q, $timeout, $log, Settings, Resource, Component, Acl) {\n angular.extend(Calendar, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Calendar', Settings.activeUser()),\n $Component: Component,\n $$Acl: Acl,\n activeUser: Settings.activeUser()\n });\n\n return Calendar; // return constructor\n }];\n\n /**\n * @module SOGo.SchedulerUI\n * @desc Factory registration of Calendar in Angular module.\n */\n try {\n angular.module('SOGo.SchedulerUI');\n }\n catch(e) {\n angular.module('SOGo.SchedulerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.SchedulerUI')\n .factory('Calendar', Calendar.$factory);\n\n /**\n * @memberof Calendar\n * @desc Add a new calendar to the static list of calendars\n * @param {Calendar} calendar - an Calendar object instance\n */\n Calendar.$add = function(calendar) {\n // Insert new calendar at proper index\n var list, sibling, i;\n\n if (calendar.isWebCalendar)\n list = this.$webcalendars;\n else if (calendar.isSubscription)\n list = this.$subscriptions;\n else\n list = this.$calendars;\n\n sibling = _.find(list, function(o) {\n return (o.id != 'personal' &&\n o.name.localeCompare(calendar.name) === 1);\n });\n i = sibling ? _.indexOf(_.pluck(list, 'id'), sibling.id) : 1;\n list.splice(i, 0, calendar);\n };\n\n /**\n * @memberof Calendar\n * @desc Set or get the list of calendars. Will instanciate a new Calendar object for each item.\n * @param {object[]} [data] - the metadata of the calendars\n * @returns the list of calendars\n */\n Calendar.$findAll = function(data) {\n var _this = this;\n if (data) {\n this.$calendars = [];\n this.$subscriptions = [];\n this.$webcalendars = [];\n // Instanciate Calendar objects\n angular.forEach(data, function(o, i) {\n var calendar = new Calendar(o);\n if (calendar.isWebCalendar)\n _this.$webcalendars.push(calendar);\n else if (calendar.isSubscription)\n _this.$subscriptions.push(calendar);\n else\n _this.$calendars.push(calendar);\n });\n }\n return _.union(this.$calendars, this.$subscriptions, this.$webcalendars);\n };\n\n /**\n * @memberof Calendar\n * @desc Find a calendar among local instances (personal calendars, subscriptions and Web calendars).\n * @param {string} id - the calendar ID\n * @returns an object literal of the matching Calendar instance\n */\n Calendar.$get = function(id) {\n var calendar;\n\n calendar = _.find(Calendar.$calendars, function(o) { return o.id == id; });\n if (!calendar)\n calendar = _.find(Calendar.$subscriptions, function(o) { return o.id == id; });\n if (!calendar)\n calendar = _.find(Calendar.$webcalendars, function(o) { return o.id == id; });\n\n return calendar;\n };\n\n /**\n * @memberOf Calendar\n * @desc Subscribe to another user's calendar and add it to the list of calendars.\n * @param {string} uid - user id\n * @param {string} path - path of folder for specified user\n * @returns a promise of the HTTP query result\n */\n Calendar.$subscribe = function(uid, path) {\n var _this = this;\n return Calendar.$$resource.userResource(uid).fetch(path, 'subscribe').then(function(calendarData) {\n var calendar = new Calendar(calendarData);\n if (!_.find(_this.$subscriptions, function(o) {\n return o.id == calendarData.id;\n })) {\n Calendar.$add(calendar);\n }\n return calendar;\n });\n };\n\n /**\n * @memberOf Calendar\n * @desc Subscribe to a remote Web calendar\n * @param {string} url - URL of .ics file\n * @returns a promise of the HTTP query result\n */\n Calendar.$addWebCalendar = function(url) {\n var _this = this,\n d = Calendar.$q.defer();\n\n if (_.find(_this.$webcalendars, function(o) {\n return o.urls.webCalendarURL == url;\n })) {\n // Already subscribed\n d.reject();\n }\n else {\n Calendar.$$resource.post(null, 'addWebCalendar', { url: url }).then(function(calendarData) {\n angular.extend(calendarData, {\n isWebCalendar: true,\n isEditable: true,\n isRemote: false,\n owner: Calendar.activeUser.login,\n urls: { webCalendarURL: url }\n });\n var calendar = new Calendar(calendarData);\n Calendar.$add(calendar);\n Calendar.$$resource.fetch(calendar.id, 'reload').then(function(data) {\n // TODO: show a toast of the reload status\n Calendar.$log.debug(JSON.stringify(data, undefined, 2));\n });\n d.resolve();\n }, function() {\n d.reject();\n });\n }\n\n return d.promise;\n };\n\n /**\n * @function init\n * @memberof Calendar.prototype\n * @desc Extend instance with new data and compute additional attributes.\n * @param {object} data - attributes of calendar\n */\n Calendar.prototype.init = function(data) {\n angular.extend(this, data);\n // Add 'isOwned' and 'isSubscription' attributes based on active user (TODO: add it server-side?)\n this.isOwned = Calendar.activeUser.isSuperUser || this.owner == Calendar.activeUser.login;\n this.isSubscription = !this.isRemote && this.owner != Calendar.activeUser.login;\n };\n\n /**\n * @function getClassName\n * @memberof Calendar.prototype\n * @desc Return the calendar CSS class name based on its ID.\n * @returns a string representing the foreground CSS class name\n */\n Calendar.prototype.getClassName = function(base) {\n if (angular.isUndefined(base))\n base = 'fg';\n return base + '-folder' + this.id;\n };\n\n /**\n * @function $rename\n * @memberof Calendar.prototype\n * @desc Rename the calendar and keep the list sorted\n * @param {string} name - the new name\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$rename = function(name) {\n var i = _.indexOf(_.pluck(Calendar.$calendars, 'id'), this.id);\n this.name = name;\n Calendar.$calendars.splice(i, 1);\n Calendar.$add(this);\n return this.$save();\n };\n\n /**\n * @function $delete\n * @memberof Calendar.prototype\n * @desc Delete the calendar from the server and the static list of calendars.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$delete = function() {\n var _this = this,\n d = Calendar.$q.defer(),\n list,\n promise;\n\n if (this.isSubscription) {\n promise = Calendar.$$resource.fetch(this.id, 'unsubscribe');\n list = Calendar.$subscriptions;\n }\n else {\n promise = Calendar.$$resource.remove(this.id);\n if (this.isWebCalendar)\n list = Calendar.$webcalendars;\n else\n list = Calendar.$calendars;\n }\n\n promise.then(function() {\n var i = _.indexOf(_.pluck(list, 'id'), _this.id);\n list.splice(i, 1);\n d.resolve();\n }, function(data, status) {\n d.reject(data);\n });\n return d.promise;\n };\n\n /**\n * @function $deleteComponents\n * @memberof Calendar\n * @desc Delete multiple components from calendar.\n * @return a promise of the HTTP operation\n */\n Calendar.$deleteComponents = function(components) {\n\n // We create a c_folder -> event hash\n var calendars = {}, _this = this;\n\n _.forEach(components, function(component) {\n if (!angular.isDefined(calendars[component.c_folder]))\n calendars[component.c_folder] = [];\n\n calendars[component.c_folder].push(component.c_name);\n });\n\n _.forEach(calendars, function(uids, c_folder) {\n Calendar.$$resource.post(c_folder, 'batchDelete', {uids: uids});\n });\n\n // We slice both arrays - might be useful if in the future, we can delete\n // events and tasks at the same time.\n _this.$Component.$events = _.difference(_this.$Component.$events, components);\n _this.$Component.$tasks = _.difference(_this.$Component.$tasks, components);\n };\n\n /**\n * @function $save\n * @memberof Calendar.prototype\n * @desc Save the calendar properties to the server.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$save = function() {\n return Calendar.$$resource.save(this.id, this.$omit()).then(function(data) {\n return data;\n });\n };\n\n /**\n * @function $setActivation\n * @memberof Calendar.prototype\n * @desc Either activate or deactivate the calendar.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$setActivation = function() {\n return Calendar.$$resource.fetch(this.id, (this.active?'':'de') + 'activateFolder');\n };\n\n /**\n * @function $getComponent\n * @memberof Calendar.prototype\n * @desc Fetch a component attributes from the server.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$getComponent = function(componentId, recurrenceId) {\n return Calendar.$Component.$find(this.id, componentId, recurrenceId);\n };\n\n /**\n * @function $omit\n * @memberof Calendar.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Calendar instance\n */\n Calendar.prototype.$omit = function() {\n var calendar = {};\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' &&\n key[0] != '$') {\n calendar[key] = value;\n }\n });\n return calendar;\n };\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Component\n * @constructor\n * @param {object} futureComponentData - either an object literal or a promise\n */\n function Component(futureComponentData) {\n // Data is immediately available\n if (typeof futureComponentData.then !== 'function') {\n this.init(futureComponentData);\n if (this.pid && !this.id) {\n // Prepare for the creation of a new component;\n // Get UID from the server.\n var newComponentData = Component.$$resource.newguid(this.pid);\n this.$unwrap(newComponentData);\n this.isNew = true;\n }\n }\n else {\n // The promise will be unwrapped first\n this.$unwrap(futureComponentData);\n }\n }\n\n /**\n * @memberof Component\n * @desc The factory we'll use to register with Angular\n * @returns the Component constructor\n */\n Component.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Preferences', 'Gravatar', 'Resource', function($q, $timeout, $log, Settings, Preferences, Gravatar, Resource) {\n angular.extend(Component, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $Preferences: Preferences,\n $gravatar: Gravatar,\n $$resource: new Resource(Settings.baseURL(), Settings.activeUser()),\n timeFormat: \"%H:%M\",\n // Filter parameters common to events and tasks\n $query: { value: '', search: 'title_Category_Location' },\n // Filter paramaters specific to events\n $queryEvents: { sort: 'start', asc: 1, filterpopup: 'view_next7' },\n // Filter parameters specific to tasks\n $queryTasks: { sort: 'status', asc: 1, filterpopup: 'view_incomplete' }\n });\n Preferences.ready().then(function() {\n // Initialize filter parameters from user's settings\n if (Preferences.settings.Calendar.EventsFilterState)\n Component.$queryEvents.filterpopup = Preferences.settings.Calendar.EventsFilterState;\n if (Preferences.settings.Calendar.TasksFilterState)\n Component.$queryTasks.filterpopup = Preferences.settings.Calendar.TasksFilterState;\n if (Preferences.settings.Calendar.EventsSortingState) {\n Component.$queryEvents.sort = Preferences.settings.Calendar.EventsSortingState[0];\n Component.$queryEvents.asc = parseInt(Preferences.settings.Calendar.EventsSortingState[1]);\n }\n if (Preferences.settings.Calendar.TasksSortingState) {\n Component.$queryTasks.sort = Preferences.settings.Calendar.TasksSortingState[0];\n Component.$queryTasks.asc = parseInt(Preferences.settings.Calendar.TasksSortingState[1]);\n }\n Component.$queryTasks.show_completed = parseInt(Preferences.settings.ShowCompletedTasks);\n // Initialize categories from user's defaults\n Component.$categories = Preferences.defaults.SOGoCalendarCategoriesColors;\n // Initialize time format from user's defaults\n if (Preferences.defaults.SOGoTimeFormat) {\n Component.timeFormat = Preferences.defaults.SOGoTimeFormat;\n }\n });\n\n return Component; // return constructor\n }];\n\n /**\n * @module SOGo.SchedulerUI\n * @desc Factory registration of Component in Angular module.\n */\n try {\n angular.module('SOGo.SchedulerUI');\n }\n catch(e) {\n angular.module('SOGo.SchedulerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.SchedulerUI')\n .factory('Component', Component.$factory);\n\n /**\n * @function $selectedCount\n * @memberof Component\n * @desc Return the number of events or tasks selected by the user.\n * @returns the number of selected events or tasks\n */\n Component.$selectedCount = function() {\n var count;\n\n count = 0;\n if (Component.$events) {\n count = (_.filter(Component.$events, function(event) { return event.selected; })).length;\n }\n if (Component.$tasks) {\n count = (_.filter(Component.$tasks, function(event) { return event.selected; })).length;\n }\n return count;\n };\n\n /**\n * @function $filter\n * @memberof Component\n * @desc Search for components matching some criterias\n * @param {string} type - either 'events' or 'tasks'\n * @param {object} [options] - additional options to the query\n * @returns a collection of Components instances\n */\n Component.$filter = function(type, options) {\n var _this = this,\n now = new Date(),\n day = now.getDate(),\n month = now.getMonth() + 1,\n year = now.getFullYear(),\n queryKey = '$query' + type.capitalize(),\n params = {\n day: '' + year + (month < 10?'0':'') + month + (day < 10?'0':'') + day,\n };\n\n return this.$Preferences.ready().then(function() {\n var futureComponentData,\n dirty = false,\n otherType;\n\n angular.extend(_this.$query, params);\n\n if (options) {\n _.each(_.keys(options), function(key) {\n // Query parameters common to events and tasks are compared\n dirty |= (_this.$query[key] && options[key] != Component.$query[key]);\n if (key == 'reload' && options[key])\n dirty = true;\n // Update either the common parameters or the type-specific parameters\n else if (angular.isDefined(_this.$query[key]))\n _this.$query[key] = options[key];\n else\n _this[queryKey][key] = options[key];\n });\n }\n\n // Perform query with both common and type-specific parameters\n futureComponentData = _this.$$resource.fetch(null, type + 'list',\n angular.extend(_this[queryKey], _this.$query));\n\n // Invalidate cached results of other type if $query has changed\n otherType = (type == 'tasks')? '$events' : '$tasks';\n if (dirty) {\n delete Component[otherType];\n Component.$log.debug('force reload of ' + otherType);\n }\n\n return _this.$unwrapCollection(type, futureComponentData);\n });\n };\n\n /**\n * @function $find\n * @desc Fetch a component from a specific calendar.\n * @param {string} calendarId - the calendar ID\n * @param {string} componentId - the component ID\n * @param {string} [occurrenceId] - the component ID\n * @see {@link Calendar.$getComponent}\n */\n Component.$find = function(calendarId, componentId, occurrenceId) {\n var futureComponentData, path = [calendarId, componentId];\n\n if (occurrenceId)\n path.push(occurrenceId);\n\n futureComponentData = this.$$resource.fetch(path.join('/'), 'view');\n\n return new Component(futureComponentData);\n };\n\n /**\n * @function filterCategories\n * @desc Search for categories matching some criterias\n * @param {string} search - the search string to match\n * @returns a collection of strings\n */\n Component.filterCategories = function(query) {\n var re = new RegExp(query, 'i');\n return _.filter(_.keys(Component.$categories), function(category) {\n return category.search(re) != -1;\n });\n };\n\n /**\n * @function saveSelectedList\n * @desc Save to the user's settings the currently selected list.\n * @param {string} componentType - either \"events\" or \"tasks\"\n * @returns a promise of the HTTP operation\n */\n Component.saveSelectedList = function(componentType) {\n return this.$$resource.post(null, 'saveSelectedList', { list: componentType + 'ListView' });\n };\n\n /**\n * @function $eventsBlocksForView\n * @desc Events blocks for a specific week\n * @param {string} view - Either 'day' or 'week'\n * @param {Date} type - Date of any day of the desired period\n * @returns a promise of a collection of objects describing the events blocks\n */\n Component.$eventsBlocksForView = function(view, date) {\n var viewAction, startDate, endDate, params;\n\n if (view == 'day') {\n viewAction = 'dayView';\n startDate = endDate = date;\n }\n else if (view == 'week') {\n viewAction = 'weekView';\n startDate = date.beginOfWeek();\n endDate = new Date();\n endDate.setTime(startDate.getTime());\n endDate.addDays(6);\n }\n else if (view == 'month') {\n viewAction = 'monthView';\n startDate = date;\n startDate.setDate(1);\n startDate = startDate.beginOfWeek();\n endDate = new Date();\n endDate.setTime(startDate.getTime());\n endDate.setMonth(endDate.getMonth() + 1);\n endDate.addDays(-1);\n endDate = endDate.endOfWeek();\n }\n return this.$eventsBlocks(viewAction, startDate, endDate);\n };\n\n /**\n * @function $eventsBlocks\n * @desc Events blocks for a specific view and period\n * @param {string} view - Either 'day' or 'week'\n * @param {Date} startDate - period's start date\n * @param {Date} endDate - period's end date\n * @returns a promise of a collection of objects describing the events blocks\n */\n Component.$eventsBlocks = function(view, startDate, endDate) {\n var params, futureComponentData, i,\n deferred = Component.$q.defer();\n\n params = { view: view.toLowerCase(), sd: startDate.getDayString(), ed: endDate.getDayString() };\n Component.$log.debug('eventsblocks ' + JSON.stringify(params, undefined, 2));\n futureComponentData = this.$$resource.fetch(null, 'eventsblocks', params);\n futureComponentData.then(function(data) {\n Component.$timeout(function() {\n var components = [], blocks = {};\n\n // Instantiate Component objects\n _.reduce(data.events, function(objects, eventData, i) {\n var componentData = _.object(data.eventsFields, eventData),\n start = new Date(componentData.c_startdate * 1000);\n componentData.hour = start.getHourString();\n objects.push(new Component(componentData));\n return objects;\n }, components);\n\n // Associate Component objects to blocks positions\n _.each(_.flatten(data.blocks), function(block) {\n block.component = components[block.nbr];\n });\n\n // Convert array of blocks to object with days as keys\n for (i = 0; i < data.blocks.length; i++) {\n blocks[startDate.getDayString()] = data.blocks[i];\n startDate.addDays(1);\n }\n\n Component.$log.debug('blocks ready (' + _.keys(blocks).length + ')');\n\n // Save the blocks to the object model\n Component.$blocks = blocks;\n\n deferred.resolve(blocks);\n });\n }, deferred.reject);\n\n return deferred.promise;\n };\n\n /**\n * @function $unwrapCollection\n * @desc Unwrap a promise and instanciate new Component objects using received data.\n * @param {string} type - either 'events' or 'tasks'\n * @param {promise} futureComponentData - a promise of the components' metadata\n * @returns a promise of the HTTP operation\n */\n Component.$unwrapCollection = function(type, futureComponentData) {\n var _this = this,\n components = [];\n\n return futureComponentData.then(function(data) {\n return Component.$timeout(function() {\n var fields = _.invoke(data.fields, 'toLowerCase');\n\n // Instanciate Component objects\n _.reduce(data[type], function(components, componentData, i) {\n var data = _.object(fields, componentData);\n components.push(new Component(data));\n return components;\n }, components);\n\n Component.$log.debug('list of ' + type + ' ready (' + components.length + ')');\n\n // Save the list of components to the object model\n Component['$' + type] = components;\n\n return components;\n });\n });\n };\n\n /**\n * @function init\n * @memberof Component.prototype\n * @desc Extend instance with required attributes and new data.\n * @param {object} data - attributes of component\n */\n Component.prototype.init = function(data) {\n var _this = this;\n\n this.categories = [];\n this.repeat = {};\n this.alarm = { action: 'display', quantity: 5, unit: 'MINUTES', reference: 'BEFORE', relation: 'START' };\n this.status = 'not-specified';\n angular.extend(this, data);\n\n Component.$Preferences.ready().then(function() {\n var type = (_this.type == 'appointment')? 'Events' : 'Tasks';\n\n // Set default values from user's defaults\n _this.classification = _this.classification ||\n Component.$Preferences.defaults['SOGoCalendar' + type + 'DefaultClassification'].toLowerCase();\n });\n\n if (this.startDate)\n this.start = new Date(this.startDate.substring(0,10) + ' ' + this.startDate.substring(11,16));\n else if (this.type == 'appointment') {\n this.start = new Date();\n //this.startDate = this.start.toISOString();\n }\n\n if (this.endDate)\n this.end = new Date(this.endDate.substring(0,10) + ' ' + this.endDate.substring(11,16));\n else if (this.type == 'appointment') {\n this.end = new Date();\n this.end.addHours(1);\n //this.endDate = this.end.toISOString();\n }\n\n if (this.dueDate)\n this.due = new Date(this.dueDate.substring(0,10) + ' ' + this.dueDate.substring(11,16));\n\n // Parse recurrence rule definition and initialize default values\n this.$isRecurrent = angular.isDefined(data.repeat);\n if (this.repeat.days) {\n var byDayMask = _.find(this.repeat.days, function(o) {\n return angular.isDefined(o.occurrence);\n });\n if (byDayMask)\n if (this.repeat.frequency == 'yearly')\n this.repeat.year = { byday: true };\n this.repeat.month = {\n type: 'byday',\n occurrence: byDayMask.occurrence.toString(),\n day: byDayMask.day\n };\n }\n else {\n this.repeat.days = [];\n }\n if (angular.isUndefined(this.repeat.frequency))\n this.repeat.frequency = 'never';\n if (angular.isUndefined(this.repeat.interval))\n this.repeat.interval = 1;\n if (angular.isUndefined(this.repeat.month))\n this.repeat.month = { occurrence: '1', day: 'SU', type: 'bymonthday' };\n if (angular.isUndefined(this.repeat.monthdays))\n // TODO: initialize this.repeat.monthdays with month day of start date\n this.repeat.monthdays = [];\n if (angular.isUndefined(this.repeat.months))\n // TODO: initialize this.repeat.months with month of start date\n this.repeat.months = [];\n if (angular.isUndefined(this.repeat.year))\n this.repeat.year = {};\n if (this.repeat.count)\n this.repeat.end = 'count';\n else if (this.repeat.until) {\n this.repeat.end = 'until';\n this.repeat.until = this.repeat.until.substring(0,10).asDate();\n }\n else\n this.repeat.end = 'never';\n this.$hasCustomRepeat = this.hasCustomRepeat();\n\n if (this.isNew) {\n // Set default alarm\n Component.$Preferences.ready().then(function() {\n var units = { M: 'MINUTES', H: 'HOURS', D: 'DAYS', W: 'WEEKS' };\n var match = /-PT?([0-9]+)([MHDW])/.exec(Component.$Preferences.defaults.SOGoCalendarDefaultReminder);\n if (match) {\n _this.$hasAlarm = true;\n _this.alarm.quantity = parseInt(match[1]);\n _this.alarm.unit = units[match[2]];\n }\n });\n }\n else {\n this.$hasAlarm = angular.isDefined(data.alarm);\n }\n\n // Allow the component to be moved to a different calendar\n this.destinationCalendar = this.pid;\n\n if (this.organizer && this.organizer.email) {\n this.organizer.$image = Component.$gravatar(this.organizer.email, 32);\n }\n\n // Load freebusy of attendees\n this.freebusy = this.updateFreeBusyCoverage();\n\n if (this.attendees) {\n _.each(this.attendees, function(attendee) {\n attendee.image = Component.$gravatar(attendee.email, 32);\n _this.updateFreeBusy(attendee);\n });\n }\n\n this.selected = false;\n };\n\n /**\n * @function hasCustomRepeat\n * @memberof Component.prototype\n * @desc Check if the component has a custom recurrence rule.\n * @returns true if the recurrence rule requires the full recurrence editor\n */\n Component.prototype.hasCustomRepeat = function() {\n var b = angular.isDefined(this.repeat) &&\n (this.repeat.interval > 1 ||\n this.repeat.days && this.repeat.days.length > 0 ||\n this.repeat.monthdays && this.repeat.monthdays.length > 0 ||\n this.repeat.months && this.repeat.months.length > 0);\n return b;\n };\n\n /**\n * @function isEditable\n * @memberof Component.prototype\n * @desc Check if the component is editable and not an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isEditable = function() {\n return (!this.occurrenceId && !this.isReadOnly);\n };\n\n /**\n * @function isEditableOccurrence\n * @memberof Component.prototype\n * @desc Check if the component is editable and an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isEditableOccurrence = function() {\n return (this.occurrenceId && !this.isReadOnly);\n };\n\n /**\n * @function isInvitation\n * @memberof Component.prototype\n * @desc Check if the component an invitation and not an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isInvitation = function() {\n return (!this.occurrenceId && this.userHasRSVP);\n };\n\n /**\n * @function isInvitationOccurrence\n * @memberof Component.prototype\n * @desc Check if the component an invitation and an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isInvitationOccurrence = function() {\n return (this.occurrenceId && this.userHasRSVP);\n };\n\n /**\n * @function isReadOnly\n * @memberof Component.prototype\n * @desc Check if the component is not editable and not an invitation\n * @returns true or false\n */\n Component.prototype.isReadOnly = function() {\n return (this.isReadOnly && !this.userHasRSVP);\n };\n\n /**\n * @function enablePercentComplete\n * @memberof Component.prototype\n * @desc Check if the percent completion should be enabled with respect to the\n * component's type and status.\n * @returns true if the percent completion should be displayed\n */\n Component.prototype.enablePercentComplete = function() {\n return (this.component = 'vtodo' &&\n this.status != 'not-specified' &&\n this.status != 'cancelled');\n };\n\n /**\n * @function coversFreeBusy\n * @memberof Component.prototype\n * @desc Check if a specific quarter matches the component's period\n * @returns true if the quarter covers the component's period\n */\n Component.prototype.coversFreeBusy = function(day, hour, quarter) {\n var b = (angular.isDefined(this.freebusy[day]) &&\n angular.isDefined(this.freebusy[day][hour]) &&\n this.freebusy[day][hour][quarter] == 1);\n return b;\n };\n\n /**\n * @function updateFreeBusyCoverage\n * @memberof Component.prototype\n * @desc Build a 15-minute-based representation of the component's period.\n * @returns an object literal hashed by days and hours and arrays of four 1's and 0's\n */\n Component.prototype.updateFreeBusyCoverage = function() {\n var _this = this, freebusy = {};\n\n if (this.start && this.end) {\n var roundedStart = new Date(this.start.getTime()),\n roundedEnd = new Date(this.end.getTime()),\n startQuarter = parseInt(roundedStart.getMinutes()/15 + 0.5),\n endQuarter = parseInt(roundedEnd.getMinutes()/15 + 0.5);\n roundedStart.setMinutes(15*startQuarter);\n roundedEnd.setMinutes(15*endQuarter);\n\n _.each(roundedStart.daysUpTo(roundedEnd), function(date, index) {\n var currentDay = date.getDate(),\n dayKey = date.getDayString(),\n hourKey;\n if (dayKey == _this.start.getDayString()) {\n hourKey = date.getHours().toString();\n freebusy[dayKey] = {};\n freebusy[dayKey][hourKey] = [];\n while (startQuarter > 0) {\n freebusy[dayKey][hourKey].push(0);\n startQuarter--;\n }\n }\n else {\n date = date.beginOfDay();\n freebusy[dayKey] = {};\n }\n while (date.getTime() < _this.end.getTime() &&\n date.getDate() == currentDay) {\n hourKey = date.getHours().toString();\n if (angular.isUndefined(freebusy[dayKey][hourKey]))\n freebusy[dayKey][hourKey] = [];\n freebusy[dayKey][hourKey].push(1);\n date.addMinutes(15);\n }\n });\n return freebusy;\n }\n };\n\n /**\n * @function updateFreeBusy\n * @memberof Component.prototype\n * @desc Update the freebusy information for the component's period for a specific attendee.\n * @param {Object} card - an Card object instance of the attendee\n */\n Component.prototype.updateFreeBusy = function(attendee) {\n var params, url, days;\n if (attendee.uid) {\n params =\n {\n sday: this.start.getDayString(),\n eday: this.end.getDayString()\n };\n url = ['..', '..', attendee.uid, 'freebusy.ifb'];\n days = _.map(this.start.daysUpTo(this.end), function(day) { return day.getDayString(); });\n\n if (angular.isUndefined(attendee.freebusy))\n attendee.freebusy = {};\n\n // Fetch FreeBusy information\n Component.$$resource.fetch(url.join('/'), 'ajaxRead', params).then(function(data) {\n _.each(days, function(day) {\n var hour;\n\n if (angular.isUndefined(attendee.freebusy[day]))\n attendee.freebusy[day] = {};\n\n if (angular.isUndefined(data[day]))\n data[day] = {};\n\n for (var i = 0; i <= 23; i++) {\n hour = i.toString();\n if (data[day][hour])\n attendee.freebusy[day][hour] = [\n data[day][hour][\"0\"],\n data[day][hour][\"15\"],\n data[day][hour][\"30\"],\n data[day][hour][\"45\"]\n ];\n else\n attendee.freebusy[day][hour] = [0, 0, 0, 0];\n }\n });\n });\n }\n };\n\n /**\n * @function getClassName\n * @memberof Component.prototype\n * @desc Return the component CSS class name based on its container (calendar) ID.\n * @param {string} [base] - the prefix to add to the class name (defaults to \"fg\")\n * @returns a string representing the foreground CSS class name\n */\n Component.prototype.getClassName = function(base) {\n if (angular.isUndefined(base))\n base = 'fg';\n return base + '-folder' + (this.destinationCalendar || this.c_folder);\n };\n\n /**\n * @function addAttendee\n * @memberof Component.prototype\n * @desc Add an attendee and fetch his freebusy info.\n * @param {Object} card - an Card object instance to be added to the attendees list\n */\n Component.prototype.addAttendee = function(card) {\n var attendee, url, params;\n if (card) {\n attendee = {\n name: card.c_cn,\n email: card.$preferredEmail(),\n role: 'req-participant',\n status: 'needs-action',\n uid: card.c_uid\n };\n if (!_.find(this.attendees, function(o) {\n return o.email == attendee.email;\n })) {\n attendee.image = Component.$gravatar(attendee.email, 32);\n if (this.attendees)\n this.attendees.push(attendee);\n else\n this.attendees = [attendee];\n this.updateFreeBusy(attendee);\n }\n }\n };\n\n /**\n * @function hasAttendee\n * @memberof Component.prototype\n * @desc Verify if one of the email addresses of a Card instance matches an attendee.\n * @param {Object} card - an Card object instance\n * @returns true if the Card matches an attendee\n */\n Component.prototype.hasAttendee = function(card) {\n var attendee = _.find(this.attendees, function(attendee) {\n return _.find(card.emails, function(email) {\n return email.value == attendee.email;\n });\n });\n return angular.isDefined(attendee);\n };\n\n /**\n * @function canRemindAttendeesByEmail\n * @memberof Component.prototype\n * @desc Verify if the component's reminder must be send by email and if it has at least one attendee.\n * @returns true if attendees can receive a reminder by email\n */\n Component.prototype.canRemindAttendeesByEmail = function() {\n return this.alarm.action == 'email' &&\n !this.isReadOnly &&\n this.attendees && this.attendees.length > 0;\n };\n\n /**\n * @function addAttachUrl\n * @memberof Component.prototype\n * @desc Add a new attach URL if not already defined\n * @param {string} attachUrl - the URL\n * @returns the number of values in the list of attach URLs\n */\n Component.prototype.addAttachUrl = function(attachUrl) {\n if (angular.isUndefined(this.attachUrls)) {\n this.attachUrls = [{value: attachUrl}];\n }\n else {\n for (var i = 0; i < this.attachUrls.length; i++) {\n if (this.attachUrls[i].value == attachUrl) {\n break;\n }\n }\n if (i == this.attachUrls.length)\n this.attachUrls.push({value: attachUrl});\n }\n return this.attachUrls.length - 1;\n };\n\n /**\n * @function deleteAttachUrl\n * @memberof Component.prototype\n * @desc Remove an attach URL\n * @param {number} index - the URL index in the list of attach URLs\n */\n Component.prototype.deleteAttachUrl = function(index) {\n if (index > -1 && this.attachUrls.length > index) {\n this.attachUrls.splice(index, 1);\n }\n };\n\n /**\n * @function $addDueDate\n * @memberof Component.prototype\n * @desc Add a due date\n */\n Component.prototype.$addDueDate = function() {\n this.due = new Date();\n this.dueDate = this.due.toISOString();\n };\n\n /**\n * @function $deleteDueDate\n * @memberof Component.prototype\n * @desc Delete a due date\n */\n Component.prototype.$deleteDueDate = function() {\n delete this.due;\n //delete this.dueDate;\n };\n\n /**\n * @function $addStartDate\n * @memberof Component.prototype\n * @desc Add a start date\n */\n Component.prototype.$addStartDate = function() {\n this.start = new Date();\n //this.startDate = this.due.toISOString();\n };\n\n /**\n * @function $deleteStartDate\n * @memberof Component.prototype\n * @desc Delete a start date\n */\n Component.prototype.$deleteStartDate = function() {\n delete this.start;\n delete this.startDate;\n };\n\n /**\n * @function $reset\n * @memberof Component.prototype\n * @desc Reset the original state the component's data.\n */\n Component.prototype.$reset = function() {\n var _this = this;\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key[0] != '$') {\n delete _this[key];\n }\n });\n this.init(this.$shadowData);\n this.$shadowData = this.$omit(true);\n };\n\n /**\n * @function reply\n * @memberof Component.prototype\n * @desc Reply to an invitation.\n * @returns a promise of the HTTP operation\n */\n Component.prototype.$reply = function() {\n var _this = this, data, path = [this.pid, this.id];\n\n if (this.occurrenceId)\n path.push(this.occurrenceId);\n\n data = {\n reply: this.reply,\n delegatedTo: this.delegatedTo,\n alarm: this.$hasAlarm? this.alarm : {}\n };\n\n return Component.$$resource.save(path.join('/'), data, { action: 'rsvpAppointment' })\n .then(function(data) {\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit(true);\n return data;\n });\n };\n\n /**\n * @function $save\n * @memberof Component.prototype\n * @desc Save the component to the server.\n */\n Component.prototype.$save = function() {\n var _this = this, options, path = [this.pid, this.id];\n\n if (this.isNew)\n options = { action: 'saveAs' + this.type.capitalize() };\n\n if (this.occurrenceId)\n path.push(this.occurrenceId);\n\n return Component.$$resource.save(path.join('/'), this.$omit(), options)\n .then(function(data) {\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit(true);\n return data;\n });\n };\n\n /**\n * @function $unwrap\n * @memberof Component.prototype\n * @desc Unwrap a promise.\n * @param {promise} futureComponentData - a promise of some of the Component's data\n */\n Component.prototype.$unwrap = function(futureComponentData) {\n var _this = this;\n\n // Expose the promise\n this.$futureComponentData = futureComponentData;\n\n // Resolve the promise\n this.$futureComponentData.then(function(data) {\n _this.init(data);\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit();\n }, function(data) {\n angular.extend(_this, data);\n _this.isError = true;\n Component.$log.error(_this.error);\n });\n };\n\n /**\n * @function $omit\n * @memberof Component.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Component instance\n */\n Component.prototype.$omit = function() {\n var component = {}, date;\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key[0] != '$') {\n component[key] = angular.copy(value);\n }\n });\n\n // Format dates and times\n component.startDate = component.start ? formatDate(component.start) : '';\n component.startTime = component.start ? formatTime(component.start) : '';\n component.endDate = component.end ? formatDate(component.end) : '';\n component.endTime = component.end ? formatTime(component.end) : '';\n component.dueDate = component.due ? formatDate(component.due) : '';\n component.dueTime = component.due ? formatTime(component.due) : '';\n\n // Update recurrence definition depending on selections\n if (this.$hasCustomRepeat) {\n if (this.repeat.frequency == 'monthly' && this.repeat.month.type && this.repeat.month.type == 'byday' ||\n this.repeat.frequency == 'yearly' && this.repeat.year.byday) {\n // BYDAY mask for a monthly or yearly recurrence\n delete component.repeat.monthdays;\n component.repeat.days = [{ day: this.repeat.month.day, occurrence: this.repeat.month.occurrence.toString() }];\n }\n else if (this.repeat.month.type) {\n // montly recurrence by month days or yearly by month\n delete component.repeat.days;\n }\n }\n else if (this.repeat.frequency) {\n component.repeat = { frequency: this.repeat.frequency };\n }\n if (this.repeat.frequency) {\n if (this.repeat.end == 'until' && this.repeat.until)\n component.repeat.until = this.repeat.until.stringWithSeparator('-');\n else if (this.repeat.end == 'count' && this.repeat.count)\n component.repeat.count = this.repeat.count;\n else {\n delete component.repeat.until;\n delete component.repeat.count;\n }\n }\n else {\n delete component.repeat;\n }\n\n if (this.$hasAlarm) {\n if (this.alarm.action && this.alarm.action == 'email' &&\n !(this.attendees && this.attendees.length > 0)) {\n // No attendees; email reminder must be sent to organizer only\n this.alarm.attendees = 0;\n this.alarm.organizer = 1;\n }\n }\n else {\n component.alarm = {};\n }\n\n function formatTime(date) {\n var hours = date.getHours();\n if (hours < 10) hours = '0' + hours;\n\n var minutes = date.getMinutes();\n if (minutes < 10) minutes = '0' + minutes;\n return hours + ':' + minutes;\n }\n\n function formatDate(date) {\n var year = date.getYear();\n if (year < 1000) year += 1900;\n\n var month = '' + (date.getMonth() + 1);\n if (month.length == 1)\n month = '0' + month;\n\n var day = '' + date.getDate();\n if (day.length == 1)\n day = '0' + day;\n\n return year + '-' + month + '-' + day;\n }\n\n return component;\n };\n\n})();\n"]} \ No newline at end of file +{"version":3,"file":"Scheduler.services.js","sources":["Scheduler/Calendar.service.js","Scheduler/Component.service.js"],"names":["Calendar","futureCalendarData","this","init","name","id","newCalendarData","$$resource","create","angular","extend","$acl","$$Acl","$factory","$q","$timeout","$log","Settings","Resource","Component","Acl","activeUser","$Component","module","e","factory","$add","calendar","list","sibling","i","isWebCalendar","$webcalendars","isSubscription","$subscriptions","$calendars","_","find","o","localeCompare","indexOf","pluck","splice","$findAll","data","_this","forEach","push","union","$get","$subscribe","uid","path","userResource","fetch","then","calendarData","$addWebCalendar","url","d","defer","urls","webCalendarURL","reject","post","isEditable","isRemote","owner","login","debug","JSON","stringify","undefined","resolve","promise","prototype","isOwned","isSuperUser","getClassName","base","isUndefined","$rename","$save","$delete","remove","status","$deleteComponents","components","calendars","component","isDefined","c_folder","c_name","uids","$events","difference","$tasks","save","$omit","$setActivation","active","$getComponent","componentId","recurrenceId","$find","value","key","futureComponentData","pid","newComponentData","newguid","$unwrap","isNew","Preferences","Gravatar","$Preferences","$gravatar","baseURL","timeFormat","$query","search","$queryEvents","sort","asc","filterpopup","$queryTasks","ready","settings","EventsFilterState","TasksFilterState","EventsSortingState","parseInt","TasksSortingState","show_completed","ShowCompletedTasks","$categories","defaults","SOGoCalendarCategoriesColors","SOGoTimeFormat","$selectedCount","count","filter","event","selected","length","$filter","type","options","now","Date","day","getDate","month","getMonth","year","getFullYear","queryKey","capitalize","params","otherType","dirty","each","keys","$unwrapCollection","calendarId","occurrenceId","join","filterCategories","query","re","RegExp","category","saveSelectedList","componentType","$eventsBlocksForView","view","date","viewAction","startDate","endDate","beginOfWeek","setTime","getTime","addDays","setDate","setMonth","endOfWeek","$eventsBlocks","deferred","toLowerCase","sd","getDayString","ed","blocks","reduce","events","objects","eventData","componentData","object","eventsFields","start","c_startdate","hour","getHourString","flatten","block","nbr","$blocks","fields","invoke","categories","repeat","alarm","action","quantity","unit","reference","relation","classification","substring","end","addHours","dueDate","due","$isRecurrent","days","byDayMask","occurrence","frequency","byday","toString","interval","monthdays","months","until","asDate","$hasCustomRepeat","hasCustomRepeat","units","M","H","D","W","match","exec","SOGoCalendarDefaultReminder","$hasAlarm","destinationCalendar","organizer","email","$image","freebusy","updateFreeBusyCoverage","attendees","attendee","image","updateFreeBusy","b","isReadOnly","isEditableOccurrence","isInvitation","userHasRSVP","isInvitationOccurrence","enablePercentComplete","coversFreeBusy","quarter","roundedStart","roundedEnd","startQuarter","getMinutes","endQuarter","setMinutes","daysUpTo","index","hourKey","currentDay","dayKey","getHours","beginOfDay","addMinutes","sday","eday","map","addAttendee","card","c_cn","$preferredEmail","role","c_uid","hasAttendee","emails","canRemindAttendeesByEmail","addAttachUrl","attachUrl","attachUrls","deleteAttachUrl","$addDueDate","toISOString","$deleteDueDate","$addStartDate","$deleteStartDate","$reset","$shadowData","$reply","reply","delegatedTo","$futureComponentData","isError","error","formatTime","hours","minutes","formatDate","getYear","copy","startTime","endTime","dueTime","stringWithSeparator"],"mappings":"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","sourcesContent":["/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Calendar\n * @constructor\n * @param {object} futureCalendarData - either an object literal or a promise\n */\n function Calendar(futureCalendarData) {\n // Data is immediately available\n this.init(futureCalendarData);\n if (this.name && !this.id) {\n // Create a new calendar on the server\n var newCalendarData = Calendar.$$resource.create('createFolder', this.name);\n angular.extend(this, newCalendarData);\n }\n if (this.id) {\n this.$acl = new Calendar.$$Acl('Calendar/' + this.id);\n }\n }\n\n /**\n * @memberof Calendar\n * @desc The factory we'll use to register with Angular\n * @returns the Calendar constructor\n */\n Calendar.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Resource', 'Component', 'Acl', function($q, $timeout, $log, Settings, Resource, Component, Acl) {\n angular.extend(Calendar, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $$resource: new Resource(Settings.activeUser('folderURL') + 'Calendar', Settings.activeUser()),\n $Component: Component,\n $$Acl: Acl,\n activeUser: Settings.activeUser()\n });\n\n return Calendar; // return constructor\n }];\n\n /**\n * @module SOGo.SchedulerUI\n * @desc Factory registration of Calendar in Angular module.\n */\n try {\n angular.module('SOGo.SchedulerUI');\n }\n catch(e) {\n angular.module('SOGo.SchedulerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.SchedulerUI')\n .factory('Calendar', Calendar.$factory);\n\n /**\n * @memberof Calendar\n * @desc Add a new calendar to the static list of calendars\n * @param {Calendar} calendar - an Calendar object instance\n */\n Calendar.$add = function(calendar) {\n // Insert new calendar at proper index\n var list, sibling, i;\n\n if (calendar.isWebCalendar)\n list = this.$webcalendars;\n else if (calendar.isSubscription)\n list = this.$subscriptions;\n else\n list = this.$calendars;\n\n sibling = _.find(list, function(o) {\n return (o.id != 'personal' &&\n o.name.localeCompare(calendar.name) === 1);\n });\n i = sibling ? _.indexOf(_.pluck(list, 'id'), sibling.id) : 1;\n list.splice(i, 0, calendar);\n };\n\n /**\n * @memberof Calendar\n * @desc Set or get the list of calendars. Will instanciate a new Calendar object for each item.\n * @param {object[]} [data] - the metadata of the calendars\n * @returns the list of calendars\n */\n Calendar.$findAll = function(data) {\n var _this = this;\n if (data) {\n this.$calendars = [];\n this.$subscriptions = [];\n this.$webcalendars = [];\n // Instanciate Calendar objects\n angular.forEach(data, function(o, i) {\n var calendar = new Calendar(o);\n if (calendar.isWebCalendar)\n _this.$webcalendars.push(calendar);\n else if (calendar.isSubscription)\n _this.$subscriptions.push(calendar);\n else\n _this.$calendars.push(calendar);\n });\n }\n return _.union(this.$calendars, this.$subscriptions, this.$webcalendars);\n };\n\n /**\n * @memberof Calendar\n * @desc Find a calendar among local instances (personal calendars, subscriptions and Web calendars).\n * @param {string} id - the calendar ID\n * @returns an object literal of the matching Calendar instance\n */\n Calendar.$get = function(id) {\n var calendar;\n\n calendar = _.find(Calendar.$calendars, function(o) { return o.id == id; });\n if (!calendar)\n calendar = _.find(Calendar.$subscriptions, function(o) { return o.id == id; });\n if (!calendar)\n calendar = _.find(Calendar.$webcalendars, function(o) { return o.id == id; });\n\n return calendar;\n };\n\n /**\n * @memberOf Calendar\n * @desc Subscribe to another user's calendar and add it to the list of calendars.\n * @param {string} uid - user id\n * @param {string} path - path of folder for specified user\n * @returns a promise of the HTTP query result\n */\n Calendar.$subscribe = function(uid, path) {\n var _this = this;\n return Calendar.$$resource.userResource(uid).fetch(path, 'subscribe').then(function(calendarData) {\n var calendar = new Calendar(calendarData);\n if (!_.find(_this.$subscriptions, function(o) {\n return o.id == calendarData.id;\n })) {\n Calendar.$add(calendar);\n }\n return calendar;\n });\n };\n\n /**\n * @memberOf Calendar\n * @desc Subscribe to a remote Web calendar\n * @param {string} url - URL of .ics file\n * @returns a promise of the HTTP query result\n */\n Calendar.$addWebCalendar = function(url) {\n var _this = this,\n d = Calendar.$q.defer();\n\n if (_.find(_this.$webcalendars, function(o) {\n return o.urls.webCalendarURL == url;\n })) {\n // Already subscribed\n d.reject();\n }\n else {\n Calendar.$$resource.post(null, 'addWebCalendar', { url: url }).then(function(calendarData) {\n angular.extend(calendarData, {\n isWebCalendar: true,\n isEditable: true,\n isRemote: false,\n owner: Calendar.activeUser.login,\n urls: { webCalendarURL: url }\n });\n var calendar = new Calendar(calendarData);\n Calendar.$add(calendar);\n Calendar.$$resource.fetch(calendar.id, 'reload').then(function(data) {\n // TODO: show a toast of the reload status\n Calendar.$log.debug(JSON.stringify(data, undefined, 2));\n });\n d.resolve();\n }, function() {\n d.reject();\n });\n }\n\n return d.promise;\n };\n\n /**\n * @function init\n * @memberof Calendar.prototype\n * @desc Extend instance with new data and compute additional attributes.\n * @param {object} data - attributes of calendar\n */\n Calendar.prototype.init = function(data) {\n angular.extend(this, data);\n // Add 'isOwned' and 'isSubscription' attributes based on active user (TODO: add it server-side?)\n this.isOwned = Calendar.activeUser.isSuperUser || this.owner == Calendar.activeUser.login;\n this.isSubscription = !this.isRemote && this.owner != Calendar.activeUser.login;\n };\n\n /**\n * @function getClassName\n * @memberof Calendar.prototype\n * @desc Return the calendar CSS class name based on its ID.\n * @returns a string representing the foreground CSS class name\n */\n Calendar.prototype.getClassName = function(base) {\n if (angular.isUndefined(base))\n base = 'fg';\n return base + '-folder' + this.id;\n };\n\n /**\n * @function $rename\n * @memberof Calendar.prototype\n * @desc Rename the calendar and keep the list sorted\n * @param {string} name - the new name\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$rename = function(name) {\n var i = _.indexOf(_.pluck(Calendar.$calendars, 'id'), this.id);\n this.name = name;\n Calendar.$calendars.splice(i, 1);\n Calendar.$add(this);\n return this.$save();\n };\n\n /**\n * @function $delete\n * @memberof Calendar.prototype\n * @desc Delete the calendar from the server and the static list of calendars.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$delete = function() {\n var _this = this,\n d = Calendar.$q.defer(),\n list,\n promise;\n\n if (this.isSubscription) {\n promise = Calendar.$$resource.fetch(this.id, 'unsubscribe');\n list = Calendar.$subscriptions;\n }\n else {\n promise = Calendar.$$resource.remove(this.id);\n if (this.isWebCalendar)\n list = Calendar.$webcalendars;\n else\n list = Calendar.$calendars;\n }\n\n promise.then(function() {\n var i = _.indexOf(_.pluck(list, 'id'), _this.id);\n list.splice(i, 1);\n d.resolve();\n }, function(data, status) {\n d.reject(data);\n });\n return d.promise;\n };\n\n /**\n * @function $deleteComponents\n * @memberof Calendar\n * @desc Delete multiple components from calendar.\n * @return a promise of the HTTP operation\n */\n Calendar.$deleteComponents = function(components) {\n\n // We create a c_folder -> event hash\n var calendars = {}, _this = this;\n\n _.forEach(components, function(component) {\n if (!angular.isDefined(calendars[component.c_folder]))\n calendars[component.c_folder] = [];\n\n calendars[component.c_folder].push(component.c_name);\n });\n\n _.forEach(calendars, function(uids, c_folder) {\n Calendar.$$resource.post(c_folder, 'batchDelete', {uids: uids});\n });\n\n // We slice both arrays - might be useful if in the future, we can delete\n // events and tasks at the same time.\n _this.$Component.$events = _.difference(_this.$Component.$events, components);\n _this.$Component.$tasks = _.difference(_this.$Component.$tasks, components);\n };\n\n /**\n * @function $save\n * @memberof Calendar.prototype\n * @desc Save the calendar properties to the server.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$save = function() {\n return Calendar.$$resource.save(this.id, this.$omit()).then(function(data) {\n return data;\n });\n };\n\n /**\n * @function $setActivation\n * @memberof Calendar.prototype\n * @desc Either activate or deactivate the calendar.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$setActivation = function() {\n return Calendar.$$resource.fetch(this.id, (this.active?'':'de') + 'activateFolder');\n };\n\n /**\n * @function $getComponent\n * @memberof Calendar.prototype\n * @desc Fetch a component attributes from the server.\n * @returns a promise of the HTTP operation\n */\n Calendar.prototype.$getComponent = function(componentId, recurrenceId) {\n return Calendar.$Component.$find(this.id, componentId, recurrenceId);\n };\n\n /**\n * @function $omit\n * @memberof Calendar.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Calendar instance\n */\n Calendar.prototype.$omit = function() {\n var calendar = {};\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' &&\n key[0] != '$') {\n calendar[key] = value;\n }\n });\n return calendar;\n };\n})();\n","/* -*- Mode: javascript; indent-tabs-mode: nil; c-basic-offset: 2 -*- */\n\n(function() {\n 'use strict';\n\n /**\n * @name Component\n * @constructor\n * @param {object} futureComponentData - either an object literal or a promise\n */\n function Component(futureComponentData) {\n // Data is immediately available\n if (typeof futureComponentData.then !== 'function') {\n this.init(futureComponentData);\n if (this.pid && !this.id) {\n // Prepare for the creation of a new component;\n // Get UID from the server.\n var newComponentData = Component.$$resource.newguid(this.pid);\n this.$unwrap(newComponentData);\n this.isNew = true;\n }\n }\n else {\n // The promise will be unwrapped first\n this.$unwrap(futureComponentData);\n }\n }\n\n /**\n * @memberof Component\n * @desc The factory we'll use to register with Angular\n * @returns the Component constructor\n */\n Component.$factory = ['$q', '$timeout', '$log', 'sgSettings', 'Preferences', 'Gravatar', 'Resource', function($q, $timeout, $log, Settings, Preferences, Gravatar, Resource) {\n angular.extend(Component, {\n $q: $q,\n $timeout: $timeout,\n $log: $log,\n $Preferences: Preferences,\n $gravatar: Gravatar,\n $$resource: new Resource(Settings.baseURL(), Settings.activeUser()),\n timeFormat: \"%H:%M\",\n // Filter parameters common to events and tasks\n $query: { value: '', search: 'title_Category_Location' },\n // Filter paramaters specific to events\n $queryEvents: { sort: 'start', asc: 1, filterpopup: 'view_next7' },\n // Filter parameters specific to tasks\n $queryTasks: { sort: 'status', asc: 1, filterpopup: 'view_incomplete' }\n });\n Preferences.ready().then(function() {\n // Initialize filter parameters from user's settings\n if (Preferences.settings.Calendar.EventsFilterState)\n Component.$queryEvents.filterpopup = Preferences.settings.Calendar.EventsFilterState;\n if (Preferences.settings.Calendar.TasksFilterState)\n Component.$queryTasks.filterpopup = Preferences.settings.Calendar.TasksFilterState;\n if (Preferences.settings.Calendar.EventsSortingState) {\n Component.$queryEvents.sort = Preferences.settings.Calendar.EventsSortingState[0];\n Component.$queryEvents.asc = parseInt(Preferences.settings.Calendar.EventsSortingState[1]);\n }\n if (Preferences.settings.Calendar.TasksSortingState) {\n Component.$queryTasks.sort = Preferences.settings.Calendar.TasksSortingState[0];\n Component.$queryTasks.asc = parseInt(Preferences.settings.Calendar.TasksSortingState[1]);\n }\n Component.$queryTasks.show_completed = parseInt(Preferences.settings.ShowCompletedTasks);\n // Initialize categories from user's defaults\n Component.$categories = Preferences.defaults.SOGoCalendarCategoriesColors;\n // Initialize time format from user's defaults\n if (Preferences.defaults.SOGoTimeFormat) {\n Component.timeFormat = Preferences.defaults.SOGoTimeFormat;\n }\n });\n\n return Component; // return constructor\n }];\n\n /**\n * @module SOGo.SchedulerUI\n * @desc Factory registration of Component in Angular module.\n */\n try {\n angular.module('SOGo.SchedulerUI');\n }\n catch(e) {\n angular.module('SOGo.SchedulerUI', ['SOGo.Common']);\n }\n angular.module('SOGo.SchedulerUI')\n .factory('Component', Component.$factory);\n\n /**\n * @function $selectedCount\n * @memberof Component\n * @desc Return the number of events or tasks selected by the user.\n * @returns the number of selected events or tasks\n */\n Component.$selectedCount = function() {\n var count;\n\n count = 0;\n if (Component.$events) {\n count = (_.filter(Component.$events, function(event) { return event.selected; })).length;\n }\n if (Component.$tasks) {\n count = (_.filter(Component.$tasks, function(event) { return event.selected; })).length;\n }\n return count;\n };\n\n /**\n * @function $filter\n * @memberof Component\n * @desc Search for components matching some criterias\n * @param {string} type - either 'events' or 'tasks'\n * @param {object} [options] - additional options to the query\n * @returns a collection of Components instances\n */\n Component.$filter = function(type, options) {\n var _this = this,\n now = new Date(),\n day = now.getDate(),\n month = now.getMonth() + 1,\n year = now.getFullYear(),\n queryKey = '$query' + type.capitalize(),\n params = {\n day: '' + year + (month < 10?'0':'') + month + (day < 10?'0':'') + day,\n };\n\n return this.$Preferences.ready().then(function() {\n var futureComponentData,\n dirty = false,\n otherType;\n\n angular.extend(_this.$query, params);\n\n if (options) {\n _.each(_.keys(options), function(key) {\n // Query parameters common to events and tasks are compared\n dirty |= (_this.$query[key] && options[key] != Component.$query[key]);\n if (key == 'reload' && options[key])\n dirty = true;\n // Update either the common parameters or the type-specific parameters\n else if (angular.isDefined(_this.$query[key]))\n _this.$query[key] = options[key];\n else\n _this[queryKey][key] = options[key];\n });\n }\n\n // Perform query with both common and type-specific parameters\n futureComponentData = _this.$$resource.fetch(null, type + 'list',\n angular.extend(_this[queryKey], _this.$query));\n\n // Invalidate cached results of other type if $query has changed\n otherType = (type == 'tasks')? '$events' : '$tasks';\n if (dirty) {\n delete Component[otherType];\n Component.$log.debug('force reload of ' + otherType);\n }\n\n return _this.$unwrapCollection(type, futureComponentData);\n });\n };\n\n /**\n * @function $find\n * @desc Fetch a component from a specific calendar.\n * @param {string} calendarId - the calendar ID\n * @param {string} componentId - the component ID\n * @param {string} [occurrenceId] - the component ID\n * @see {@link Calendar.$getComponent}\n */\n Component.$find = function(calendarId, componentId, occurrenceId) {\n var futureComponentData, path = [calendarId, componentId];\n\n if (occurrenceId)\n path.push(occurrenceId);\n\n futureComponentData = this.$$resource.fetch(path.join('/'), 'view');\n\n return new Component(futureComponentData);\n };\n\n /**\n * @function filterCategories\n * @desc Search for categories matching some criterias\n * @param {string} search - the search string to match\n * @returns a collection of strings\n */\n Component.filterCategories = function(query) {\n var re = new RegExp(query, 'i');\n return _.filter(_.keys(Component.$categories), function(category) {\n return category.search(re) != -1;\n });\n };\n\n /**\n * @function saveSelectedList\n * @desc Save to the user's settings the currently selected list.\n * @param {string} componentType - either \"events\" or \"tasks\"\n * @returns a promise of the HTTP operation\n */\n Component.saveSelectedList = function(componentType) {\n return this.$$resource.post(null, 'saveSelectedList', { list: componentType + 'ListView' });\n };\n\n /**\n * @function $eventsBlocksForView\n * @desc Events blocks for a specific week\n * @param {string} view - Either 'day' or 'week'\n * @param {Date} type - Date of any day of the desired period\n * @returns a promise of a collection of objects describing the events blocks\n */\n Component.$eventsBlocksForView = function(view, date) {\n var viewAction, startDate, endDate, params;\n\n if (view == 'day') {\n viewAction = 'dayView';\n startDate = endDate = date;\n }\n else if (view == 'week') {\n viewAction = 'weekView';\n startDate = date.beginOfWeek();\n endDate = new Date();\n endDate.setTime(startDate.getTime());\n endDate.addDays(6);\n }\n else if (view == 'month') {\n viewAction = 'monthView';\n startDate = date;\n startDate.setDate(1);\n startDate = startDate.beginOfWeek();\n endDate = new Date();\n endDate.setTime(startDate.getTime());\n endDate.setMonth(endDate.getMonth() + 1);\n endDate.addDays(-1);\n endDate = endDate.endOfWeek();\n }\n return this.$eventsBlocks(viewAction, startDate, endDate);\n };\n\n /**\n * @function $eventsBlocks\n * @desc Events blocks for a specific view and period\n * @param {string} view - Either 'day' or 'week'\n * @param {Date} startDate - period's start date\n * @param {Date} endDate - period's end date\n * @returns a promise of a collection of objects describing the events blocks\n */\n Component.$eventsBlocks = function(view, startDate, endDate) {\n var params, futureComponentData, i,\n deferred = Component.$q.defer();\n\n params = { view: view.toLowerCase(), sd: startDate.getDayString(), ed: endDate.getDayString() };\n Component.$log.debug('eventsblocks ' + JSON.stringify(params, undefined, 2));\n futureComponentData = this.$$resource.fetch(null, 'eventsblocks', params);\n futureComponentData.then(function(data) {\n Component.$timeout(function() {\n var components = [], blocks = {};\n\n // Instantiate Component objects\n _.reduce(data.events, function(objects, eventData, i) {\n var componentData = _.object(data.eventsFields, eventData),\n start = new Date(componentData.c_startdate * 1000);\n componentData.hour = start.getHourString();\n objects.push(new Component(componentData));\n return objects;\n }, components);\n\n // Associate Component objects to blocks positions\n _.each(_.flatten(data.blocks), function(block) {\n block.component = components[block.nbr];\n });\n\n // Convert array of blocks to object with days as keys\n for (i = 0; i < data.blocks.length; i++) {\n blocks[startDate.getDayString()] = data.blocks[i];\n startDate.addDays(1);\n }\n\n Component.$log.debug('blocks ready (' + _.keys(blocks).length + ')');\n\n // Save the blocks to the object model\n Component.$blocks = blocks;\n\n deferred.resolve(blocks);\n });\n }, deferred.reject);\n\n return deferred.promise;\n };\n\n /**\n * @function $unwrapCollection\n * @desc Unwrap a promise and instanciate new Component objects using received data.\n * @param {string} type - either 'events' or 'tasks'\n * @param {promise} futureComponentData - a promise of the components' metadata\n * @returns a promise of the HTTP operation\n */\n Component.$unwrapCollection = function(type, futureComponentData) {\n var _this = this,\n components = [];\n\n return futureComponentData.then(function(data) {\n return Component.$timeout(function() {\n var fields = _.invoke(data.fields, 'toLowerCase');\n\n // Instanciate Component objects\n _.reduce(data[type], function(components, componentData, i) {\n var data = _.object(fields, componentData);\n components.push(new Component(data));\n return components;\n }, components);\n\n Component.$log.debug('list of ' + type + ' ready (' + components.length + ')');\n\n // Save the list of components to the object model\n Component['$' + type] = components;\n\n return components;\n });\n });\n };\n\n /**\n * @function init\n * @memberof Component.prototype\n * @desc Extend instance with required attributes and new data.\n * @param {object} data - attributes of component\n */\n Component.prototype.init = function(data) {\n var _this = this;\n\n this.categories = [];\n this.repeat = {};\n this.alarm = { action: 'display', quantity: 5, unit: 'MINUTES', reference: 'BEFORE', relation: 'START' };\n this.status = 'not-specified';\n angular.extend(this, data);\n\n Component.$Preferences.ready().then(function() {\n var type = (_this.type == 'appointment')? 'Events' : 'Tasks';\n\n // Set default values from user's defaults\n _this.classification = _this.classification ||\n Component.$Preferences.defaults['SOGoCalendar' + type + 'DefaultClassification'].toLowerCase();\n });\n\n if (this.startDate)\n this.start = new Date(this.startDate.substring(0,10) + ' ' + this.startDate.substring(11,16));\n else if (this.type == 'appointment') {\n this.start = new Date();\n }\n\n if (this.endDate)\n this.end = new Date(this.endDate.substring(0,10) + ' ' + this.endDate.substring(11,16));\n else if (this.type == 'appointment') {\n this.end = new Date();\n this.end.addHours(1);\n }\n\n if (this.dueDate)\n this.due = new Date(this.dueDate.substring(0,10) + ' ' + this.dueDate.substring(11,16));\n\n // Parse recurrence rule definition and initialize default values\n this.$isRecurrent = angular.isDefined(data.repeat);\n if (this.repeat.days) {\n var byDayMask = _.find(this.repeat.days, function(o) {\n return angular.isDefined(o.occurrence);\n });\n if (byDayMask)\n if (this.repeat.frequency == 'yearly')\n this.repeat.year = { byday: true };\n this.repeat.month = {\n type: 'byday',\n occurrence: byDayMask.occurrence.toString(),\n day: byDayMask.day\n };\n }\n else {\n this.repeat.days = [];\n }\n if (angular.isUndefined(this.repeat.frequency))\n this.repeat.frequency = 'never';\n if (angular.isUndefined(this.repeat.interval))\n this.repeat.interval = 1;\n if (angular.isUndefined(this.repeat.month))\n this.repeat.month = { occurrence: '1', day: 'SU', type: 'bymonthday' };\n if (angular.isUndefined(this.repeat.monthdays))\n // TODO: initialize this.repeat.monthdays with month day of start date\n this.repeat.monthdays = [];\n if (angular.isUndefined(this.repeat.months))\n // TODO: initialize this.repeat.months with month of start date\n this.repeat.months = [];\n if (angular.isUndefined(this.repeat.year))\n this.repeat.year = {};\n if (this.repeat.count)\n this.repeat.end = 'count';\n else if (this.repeat.until) {\n this.repeat.end = 'until';\n this.repeat.until = this.repeat.until.substring(0,10).asDate();\n }\n else\n this.repeat.end = 'never';\n this.$hasCustomRepeat = this.hasCustomRepeat();\n\n if (this.isNew) {\n // Set default alarm\n Component.$Preferences.ready().then(function() {\n var units = { M: 'MINUTES', H: 'HOURS', D: 'DAYS', W: 'WEEKS' };\n var match = /-PT?([0-9]+)([MHDW])/.exec(Component.$Preferences.defaults.SOGoCalendarDefaultReminder);\n if (match) {\n _this.$hasAlarm = true;\n _this.alarm.quantity = parseInt(match[1]);\n _this.alarm.unit = units[match[2]];\n }\n });\n }\n else {\n this.$hasAlarm = angular.isDefined(data.alarm);\n }\n\n // Allow the component to be moved to a different calendar\n this.destinationCalendar = this.pid;\n\n if (this.organizer && this.organizer.email) {\n this.organizer.$image = Component.$gravatar(this.organizer.email, 32);\n }\n\n // Load freebusy of attendees\n this.freebusy = this.updateFreeBusyCoverage();\n\n if (this.attendees) {\n _.each(this.attendees, function(attendee) {\n attendee.image = Component.$gravatar(attendee.email, 32);\n _this.updateFreeBusy(attendee);\n });\n }\n\n this.selected = false;\n };\n\n /**\n * @function hasCustomRepeat\n * @memberof Component.prototype\n * @desc Check if the component has a custom recurrence rule.\n * @returns true if the recurrence rule requires the full recurrence editor\n */\n Component.prototype.hasCustomRepeat = function() {\n var b = angular.isDefined(this.repeat) &&\n (this.repeat.interval > 1 ||\n this.repeat.days && this.repeat.days.length > 0 ||\n this.repeat.monthdays && this.repeat.monthdays.length > 0 ||\n this.repeat.months && this.repeat.months.length > 0);\n return b;\n };\n\n /**\n * @function isEditable\n * @memberof Component.prototype\n * @desc Check if the component is editable and not an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isEditable = function() {\n return (!this.occurrenceId && !this.isReadOnly);\n };\n\n /**\n * @function isEditableOccurrence\n * @memberof Component.prototype\n * @desc Check if the component is editable and an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isEditableOccurrence = function() {\n return (this.occurrenceId && !this.isReadOnly);\n };\n\n /**\n * @function isInvitation\n * @memberof Component.prototype\n * @desc Check if the component an invitation and not an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isInvitation = function() {\n return (!this.occurrenceId && this.userHasRSVP);\n };\n\n /**\n * @function isInvitationOccurrence\n * @memberof Component.prototype\n * @desc Check if the component an invitation and an occurrence of a recurrent component\n * @returns true or false\n */\n Component.prototype.isInvitationOccurrence = function() {\n return (this.occurrenceId && this.userHasRSVP);\n };\n\n /**\n * @function isReadOnly\n * @memberof Component.prototype\n * @desc Check if the component is not editable and not an invitation\n * @returns true or false\n */\n Component.prototype.isReadOnly = function() {\n return (this.isReadOnly && !this.userHasRSVP);\n };\n\n /**\n * @function enablePercentComplete\n * @memberof Component.prototype\n * @desc Check if the percent completion should be enabled with respect to the\n * component's type and status.\n * @returns true if the percent completion should be displayed\n */\n Component.prototype.enablePercentComplete = function() {\n return (this.component = 'vtodo' &&\n this.status != 'not-specified' &&\n this.status != 'cancelled');\n };\n\n /**\n * @function coversFreeBusy\n * @memberof Component.prototype\n * @desc Check if a specific quarter matches the component's period\n * @returns true if the quarter covers the component's period\n */\n Component.prototype.coversFreeBusy = function(day, hour, quarter) {\n var b = (angular.isDefined(this.freebusy[day]) &&\n angular.isDefined(this.freebusy[day][hour]) &&\n this.freebusy[day][hour][quarter] == 1);\n return b;\n };\n\n /**\n * @function updateFreeBusyCoverage\n * @memberof Component.prototype\n * @desc Build a 15-minute-based representation of the component's period.\n * @returns an object literal hashed by days and hours and arrays of four 1's and 0's\n */\n Component.prototype.updateFreeBusyCoverage = function() {\n var _this = this, freebusy = {};\n\n if (this.start && this.end) {\n var roundedStart = new Date(this.start.getTime()),\n roundedEnd = new Date(this.end.getTime()),\n startQuarter = parseInt(roundedStart.getMinutes()/15 + 0.5),\n endQuarter = parseInt(roundedEnd.getMinutes()/15 + 0.5);\n roundedStart.setMinutes(15*startQuarter);\n roundedEnd.setMinutes(15*endQuarter);\n\n _.each(roundedStart.daysUpTo(roundedEnd), function(date, index) {\n var currentDay = date.getDate(),\n dayKey = date.getDayString(),\n hourKey;\n if (dayKey == _this.start.getDayString()) {\n hourKey = date.getHours().toString();\n freebusy[dayKey] = {};\n freebusy[dayKey][hourKey] = [];\n while (startQuarter > 0) {\n freebusy[dayKey][hourKey].push(0);\n startQuarter--;\n }\n }\n else {\n date = date.beginOfDay();\n freebusy[dayKey] = {};\n }\n while (date.getTime() < _this.end.getTime() &&\n date.getDate() == currentDay) {\n hourKey = date.getHours().toString();\n if (angular.isUndefined(freebusy[dayKey][hourKey]))\n freebusy[dayKey][hourKey] = [];\n freebusy[dayKey][hourKey].push(1);\n date.addMinutes(15);\n }\n });\n return freebusy;\n }\n };\n\n /**\n * @function updateFreeBusy\n * @memberof Component.prototype\n * @desc Update the freebusy information for the component's period for a specific attendee.\n * @param {Object} card - an Card object instance of the attendee\n */\n Component.prototype.updateFreeBusy = function(attendee) {\n var params, url, days;\n if (attendee.uid) {\n params =\n {\n sday: this.start.getDayString(),\n eday: this.end.getDayString()\n };\n url = ['..', '..', attendee.uid, 'freebusy.ifb'];\n days = _.map(this.start.daysUpTo(this.end), function(day) { return day.getDayString(); });\n\n if (angular.isUndefined(attendee.freebusy))\n attendee.freebusy = {};\n\n // Fetch FreeBusy information\n Component.$$resource.fetch(url.join('/'), 'ajaxRead', params).then(function(data) {\n _.each(days, function(day) {\n var hour;\n\n if (angular.isUndefined(attendee.freebusy[day]))\n attendee.freebusy[day] = {};\n\n if (angular.isUndefined(data[day]))\n data[day] = {};\n\n for (var i = 0; i <= 23; i++) {\n hour = i.toString();\n if (data[day][hour])\n attendee.freebusy[day][hour] = [\n data[day][hour][\"0\"],\n data[day][hour][\"15\"],\n data[day][hour][\"30\"],\n data[day][hour][\"45\"]\n ];\n else\n attendee.freebusy[day][hour] = [0, 0, 0, 0];\n }\n });\n });\n }\n };\n\n /**\n * @function getClassName\n * @memberof Component.prototype\n * @desc Return the component CSS class name based on its container (calendar) ID.\n * @param {string} [base] - the prefix to add to the class name (defaults to \"fg\")\n * @returns a string representing the foreground CSS class name\n */\n Component.prototype.getClassName = function(base) {\n if (angular.isUndefined(base))\n base = 'fg';\n return base + '-folder' + (this.destinationCalendar || this.c_folder);\n };\n\n /**\n * @function addAttendee\n * @memberof Component.prototype\n * @desc Add an attendee and fetch his freebusy info.\n * @param {Object} card - an Card object instance to be added to the attendees list\n */\n Component.prototype.addAttendee = function(card) {\n var attendee, url, params;\n if (card) {\n attendee = {\n name: card.c_cn,\n email: card.$preferredEmail(),\n role: 'req-participant',\n status: 'needs-action',\n uid: card.c_uid\n };\n if (!_.find(this.attendees, function(o) {\n return o.email == attendee.email;\n })) {\n attendee.image = Component.$gravatar(attendee.email, 32);\n if (this.attendees)\n this.attendees.push(attendee);\n else\n this.attendees = [attendee];\n this.updateFreeBusy(attendee);\n }\n }\n };\n\n /**\n * @function hasAttendee\n * @memberof Component.prototype\n * @desc Verify if one of the email addresses of a Card instance matches an attendee.\n * @param {Object} card - an Card object instance\n * @returns true if the Card matches an attendee\n */\n Component.prototype.hasAttendee = function(card) {\n var attendee = _.find(this.attendees, function(attendee) {\n return _.find(card.emails, function(email) {\n return email.value == attendee.email;\n });\n });\n return angular.isDefined(attendee);\n };\n\n /**\n * @function canRemindAttendeesByEmail\n * @memberof Component.prototype\n * @desc Verify if the component's reminder must be send by email and if it has at least one attendee.\n * @returns true if attendees can receive a reminder by email\n */\n Component.prototype.canRemindAttendeesByEmail = function() {\n return this.alarm.action == 'email' &&\n !this.isReadOnly &&\n this.attendees && this.attendees.length > 0;\n };\n\n /**\n * @function addAttachUrl\n * @memberof Component.prototype\n * @desc Add a new attach URL if not already defined\n * @param {string} attachUrl - the URL\n * @returns the number of values in the list of attach URLs\n */\n Component.prototype.addAttachUrl = function(attachUrl) {\n if (angular.isUndefined(this.attachUrls)) {\n this.attachUrls = [{value: attachUrl}];\n }\n else {\n for (var i = 0; i < this.attachUrls.length; i++) {\n if (this.attachUrls[i].value == attachUrl) {\n break;\n }\n }\n if (i == this.attachUrls.length)\n this.attachUrls.push({value: attachUrl});\n }\n return this.attachUrls.length - 1;\n };\n\n /**\n * @function deleteAttachUrl\n * @memberof Component.prototype\n * @desc Remove an attach URL\n * @param {number} index - the URL index in the list of attach URLs\n */\n Component.prototype.deleteAttachUrl = function(index) {\n if (index > -1 && this.attachUrls.length > index) {\n this.attachUrls.splice(index, 1);\n }\n };\n\n /**\n * @function $addDueDate\n * @memberof Component.prototype\n * @desc Add a due date\n */\n Component.prototype.$addDueDate = function() {\n this.due = new Date();\n this.dueDate = this.due.toISOString();\n };\n\n /**\n * @function $deleteDueDate\n * @memberof Component.prototype\n * @desc Delete a due date\n */\n Component.prototype.$deleteDueDate = function() {\n delete this.due;\n delete this.dueDate;\n };\n\n /**\n * @function $addStartDate\n * @memberof Component.prototype\n * @desc Add a start date\n */\n Component.prototype.$addStartDate = function() {\n this.start = new Date();\n };\n\n /**\n * @function $deleteStartDate\n * @memberof Component.prototype\n * @desc Delete a start date\n */\n Component.prototype.$deleteStartDate = function() {\n delete this.start;\n delete this.startDate;\n };\n\n /**\n * @function $reset\n * @memberof Component.prototype\n * @desc Reset the original state the component's data.\n */\n Component.prototype.$reset = function() {\n var _this = this;\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key[0] != '$') {\n delete _this[key];\n }\n });\n this.init(this.$shadowData);\n this.$shadowData = this.$omit(true);\n };\n\n /**\n * @function reply\n * @memberof Component.prototype\n * @desc Reply to an invitation.\n * @returns a promise of the HTTP operation\n */\n Component.prototype.$reply = function() {\n var _this = this, data, path = [this.pid, this.id];\n\n if (this.occurrenceId)\n path.push(this.occurrenceId);\n\n data = {\n reply: this.reply,\n delegatedTo: this.delegatedTo,\n alarm: this.$hasAlarm? this.alarm : {}\n };\n\n return Component.$$resource.save(path.join('/'), data, { action: 'rsvpAppointment' })\n .then(function(data) {\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit(true);\n return data;\n });\n };\n\n /**\n * @function $save\n * @memberof Component.prototype\n * @desc Save the component to the server.\n */\n Component.prototype.$save = function() {\n var _this = this, options, path = [this.pid, this.id];\n\n if (this.isNew)\n options = { action: 'saveAs' + this.type.capitalize() };\n\n if (this.occurrenceId)\n path.push(this.occurrenceId);\n\n return Component.$$resource.save(path.join('/'), this.$omit(), options)\n .then(function(data) {\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit(true);\n return data;\n });\n };\n\n /**\n * @function $unwrap\n * @memberof Component.prototype\n * @desc Unwrap a promise.\n * @param {promise} futureComponentData - a promise of some of the Component's data\n */\n Component.prototype.$unwrap = function(futureComponentData) {\n var _this = this;\n\n // Expose the promise\n this.$futureComponentData = futureComponentData;\n\n // Resolve the promise\n this.$futureComponentData.then(function(data) {\n _this.init(data);\n // Make a copy of the data for an eventual reset\n _this.$shadowData = _this.$omit();\n }, function(data) {\n angular.extend(_this, data);\n _this.isError = true;\n Component.$log.error(_this.error);\n });\n };\n\n /**\n * @function $omit\n * @memberof Component.prototype\n * @desc Return a sanitized object used to send to the server.\n * @return an object literal copy of the Component instance\n */\n Component.prototype.$omit = function() {\n var component = {}, date;\n angular.forEach(this, function(value, key) {\n if (key != 'constructor' && key[0] != '$') {\n component[key] = angular.copy(value);\n }\n });\n\n // Format dates and times\n component.startDate = component.start ? formatDate(component.start) : '';\n component.startTime = component.start ? formatTime(component.start) : '';\n component.endDate = component.end ? formatDate(component.end) : '';\n component.endTime = component.end ? formatTime(component.end) : '';\n component.dueDate = component.due ? formatDate(component.due) : '';\n component.dueTime = component.due ? formatTime(component.due) : '';\n\n // Update recurrence definition depending on selections\n if (this.$hasCustomRepeat) {\n if (this.repeat.frequency == 'monthly' && this.repeat.month.type && this.repeat.month.type == 'byday' ||\n this.repeat.frequency == 'yearly' && this.repeat.year.byday) {\n // BYDAY mask for a monthly or yearly recurrence\n delete component.repeat.monthdays;\n component.repeat.days = [{ day: this.repeat.month.day, occurrence: this.repeat.month.occurrence.toString() }];\n }\n else if (this.repeat.month.type) {\n // montly recurrence by month days or yearly by month\n delete component.repeat.days;\n }\n }\n else if (this.repeat.frequency) {\n component.repeat = { frequency: this.repeat.frequency };\n }\n if (this.repeat.frequency) {\n if (this.repeat.end == 'until' && this.repeat.until)\n component.repeat.until = this.repeat.until.stringWithSeparator('-');\n else if (this.repeat.end == 'count' && this.repeat.count)\n component.repeat.count = this.repeat.count;\n else {\n delete component.repeat.until;\n delete component.repeat.count;\n }\n }\n else {\n delete component.repeat;\n }\n\n if (this.$hasAlarm) {\n if (this.alarm.action && this.alarm.action == 'email' &&\n !(this.attendees && this.attendees.length > 0)) {\n // No attendees; email reminder must be sent to organizer only\n this.alarm.attendees = 0;\n this.alarm.organizer = 1;\n }\n }\n else {\n component.alarm = {};\n }\n\n function formatTime(date) {\n var hours = date.getHours();\n if (hours < 10) hours = '0' + hours;\n\n var minutes = date.getMinutes();\n if (minutes < 10) minutes = '0' + minutes;\n return hours + ':' + minutes;\n }\n\n function formatDate(date) {\n var year = date.getYear();\n if (year < 1000) year += 1900;\n\n var month = '' + (date.getMonth() + 1);\n if (month.length == 1)\n month = '0' + month;\n\n var day = '' + date.getDate();\n if (day.length == 1)\n day = '0' + day;\n\n return year + '-' + month + '-' + day;\n }\n\n return component;\n };\n\n})();\n"]} \ No newline at end of file diff --git a/UI/WebServerResources/js/vendor/angular-animate.js b/UI/WebServerResources/js/vendor/angular-animate.js index dd9b0551d..b19f02de4 100644 --- a/UI/WebServerResources/js/vendor/angular-animate.js +++ b/UI/WebServerResources/js/vendor/angular-animate.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.4.4 + * @license AngularJS v1.4.5 * (c) 2010-2015 Google, Inc. http://angularjs.org * License: MIT */ @@ -379,6 +379,55 @@ function $$BodyProvider() { }]; } +var $$rAFSchedulerFactory = ['$$rAF', function($$rAF) { + var queue, cancelFn; + + function scheduler(tasks) { + // we make a copy since RAFScheduler mutates the state + // of the passed in array variable and this would be difficult + // to track down on the outside code + queue = queue.concat(tasks); + nextTick(); + } + + queue = scheduler.queue = []; + + /* waitUntilQuiet does two things: + * 1. It will run the FINAL `fn` value only when an uncancelled RAF has passed through + * 2. It will delay the next wave of tasks from running until the quiet `fn` has run. + * + * The motivation here is that animation code can request more time from the scheduler + * before the next wave runs. This allows for certain DOM properties such as classes to + * be resolved in time for the next animation to run. + */ + scheduler.waitUntilQuiet = function(fn) { + if (cancelFn) cancelFn(); + + cancelFn = $$rAF(function() { + cancelFn = null; + fn(); + nextTick(); + }); + }; + + return scheduler; + + function nextTick() { + if (!queue.length) return; + + var items = queue.shift(); + for (var i = 0; i < items.length; i++) { + items[i](); + } + + if (!cancelFn) { + $$rAF(function() { + if (!cancelFn) nextTick(); + }); + } + } +}]; + var $$AnimateChildrenDirective = [function() { return function(scope, element, attrs) { var val = attrs.ngAnimateChildren; @@ -393,6 +442,8 @@ var $$AnimateChildrenDirective = [function() { }; }]; +var ANIMATE_TIMER_KEY = '$$animateCss'; + /** * @ngdoc service * @name $animateCss @@ -719,8 +770,10 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { var gcsLookup = createLocalCacheLookup(); var gcsStaggerLookup = createLocalCacheLookup(); - this.$get = ['$window', '$$jqLite', '$$AnimateRunner', '$timeout', '$$forceReflow', '$sniffer', '$$rAF', - function($window, $$jqLite, $$AnimateRunner, $timeout, $$forceReflow, $sniffer, $$rAF) { + this.$get = ['$window', '$$jqLite', '$$AnimateRunner', '$timeout', + '$$forceReflow', '$sniffer', '$$rAFScheduler', '$animate', + function($window, $$jqLite, $$AnimateRunner, $timeout, + $$forceReflow, $sniffer, $$rAFScheduler, $animate) { var applyAnimationClasses = applyAnimationClassesFactory($$jqLite); @@ -780,12 +833,8 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { var cancelLastRAFRequest; var rafWaitQueue = []; function waitUntilQuiet(callback) { - if (cancelLastRAFRequest) { - cancelLastRAFRequest(); //cancels the request - } rafWaitQueue.push(callback); - cancelLastRAFRequest = $$rAF(function() { - cancelLastRAFRequest = null; + $$rAFScheduler.waitUntilQuiet(function() { gcsLookup.flush(); gcsStaggerLookup.flush(); @@ -802,8 +851,6 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { }); } - return init; - function computeTimings(node, className, cacheKey) { var timings = computeCachedCssStyles(node, className, cacheKey, DETECT_CSS_PROPERTIES); var aD = timings.animationDelay; @@ -818,9 +865,11 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { return timings; } - function init(element, options) { + return function init(element, options) { var node = getDomNode(element); - if (!node || !node.parentNode) { + if (!node + || !node.parentNode + || !$animate.enabled()) { return closeAndReturnNoopAnimator(); } @@ -876,7 +925,6 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { // there actually is a detected transition or keyframe animation if (options.applyClassesEarly && addRemoveClassName.length) { applyAnimationClasses(element, options); - addRemoveClassName = ''; } var preparationClasses = [structuralClassName, addRemoveClassName].join(' ').trim(); @@ -991,6 +1039,18 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { return closeAndReturnNoopAnimator(); } + if (options.delay != null) { + var delayStyle = parseFloat(options.delay); + + if (flags.applyTransitionDelay) { + temporaryStyles.push(getCssDelayStyle(delayStyle)); + } + + if (flags.applyAnimationDelay) { + temporaryStyles.push(getCssDelayStyle(delayStyle, true)); + } + } + // we need to recalculate the delay value since we used a pre-emptive negative // delay value and the delay value is required for the final event checking. This // property will ensure that this will happen after the RAF phase has passed. @@ -1105,6 +1165,8 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { cancel: cancelFn }); + // should flush the cache animation + waitUntilQuiet(noop); close(); return { @@ -1202,27 +1264,16 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { flags.hasAnimations = timings.animationDuration > 0; } - if (flags.applyTransitionDelay || flags.applyAnimationDelay) { + if (flags.applyAnimationDelay) { relativeDelay = typeof options.delay !== "boolean" && truthyTimingValue(options.delay) ? parseFloat(options.delay) : relativeDelay; maxDelay = Math.max(relativeDelay, 0); - - var delayStyle; - if (flags.applyTransitionDelay) { - timings.transitionDelay = relativeDelay; - delayStyle = getCssDelayStyle(relativeDelay); - temporaryStyles.push(delayStyle); - node.style[delayStyle[0]] = delayStyle[1]; - } - - if (flags.applyAnimationDelay) { - timings.animationDelay = relativeDelay; - delayStyle = getCssDelayStyle(relativeDelay, true); - temporaryStyles.push(delayStyle); - node.style[delayStyle[0]] = delayStyle[1]; - } + timings.animationDelay = relativeDelay; + delayStyle = getCssDelayStyle(relativeDelay, true); + temporaryStyles.push(delayStyle); + node.style[delayStyle[0]] = delayStyle[1]; } maxDelayTime = maxDelay * ONE_SECOND; @@ -1251,17 +1302,47 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { } startTime = Date.now(); - element.on(events.join(' '), onAnimationProgress); - $timeout(onAnimationExpired, maxDelayTime + CLOSING_TIME_BUFFER * maxDurationTime, false); + var timerTime = maxDelayTime + CLOSING_TIME_BUFFER * maxDurationTime; + var endTime = startTime + timerTime; + var animationsData = element.data(ANIMATE_TIMER_KEY) || []; + var setupFallbackTimer = true; + if (animationsData.length) { + var currentTimerData = animationsData[0]; + setupFallbackTimer = endTime > currentTimerData.expectedEndTime; + if (setupFallbackTimer) { + $timeout.cancel(currentTimerData.timer); + } else { + animationsData.push(close); + } + } + + if (setupFallbackTimer) { + var timer = $timeout(onAnimationExpired, timerTime, false); + animationsData[0] = { + timer: timer, + expectedEndTime: endTime + }; + animationsData.push(close); + element.data(ANIMATE_TIMER_KEY, animationsData); + } + + element.on(events.join(' '), onAnimationProgress); applyAnimationToStyles(element, options); } function onAnimationExpired() { - // although an expired animation is a failed animation, getting to - // this outcome is very easy if the CSS code screws up. Therefore we - // should still continue normally as if the animation completed correctly. - close(); + var animationsData = element.data(ANIMATE_TIMER_KEY); + + // this will be false in the event that the element was + // removed from the DOM (via a leave animation or something + // similar) + if (animationsData) { + for (var i = 1; i < animationsData.length; i++) { + animationsData[i](); + } + element.removeData(ANIMATE_TIMER_KEY); + } } function onAnimationProgress(event) { @@ -1288,7 +1369,7 @@ var $AnimateCssProvider = ['$animateProvider', function($animateProvider) { } } } - } + }; }]; }]; @@ -1314,13 +1395,13 @@ var $$AnimateCssDriverProvider = ['$$animationProvider', function($$animationPro var applyAnimationClasses = applyAnimationClassesFactory($$jqLite); - return function initDriverFn(animationDetails, onBeforeClassesAppliedCb) { + return function initDriverFn(animationDetails) { return animationDetails.from && animationDetails.to ? prepareFromToAnchorAnimation(animationDetails.from, animationDetails.to, animationDetails.classes, animationDetails.anchors) - : prepareRegularAnimation(animationDetails, onBeforeClassesAppliedCb); + : prepareRegularAnimation(animationDetails); }; function filterCssClasses(classes) { @@ -1516,21 +1597,14 @@ var $$AnimateCssDriverProvider = ['$$animationProvider', function($$animationPro }; } - function prepareRegularAnimation(animationDetails, onBeforeClassesAppliedCb) { + function prepareRegularAnimation(animationDetails) { var element = animationDetails.element; var options = animationDetails.options || {}; - // since the ng-EVENT, class-ADD and class-REMOVE classes are applied inside - // of the animateQueue pre and postDigest stages then there is no need to add - // then them here as well. - options.$$skipPreparationClasses = true; - - // during the pre/post digest stages inside of animateQueue we also performed - // the blocking (transition:-9999s) so there is no point in doing that again. - options.skipBlocking = true; - if (animationDetails.structural) { options.event = animationDetails.event; + options.structural = true; + options.applyClassesEarly = true; // we special case the leave animation since we want to ensure that // the element is removed as soon as the animation is over. Otherwise @@ -1540,11 +1614,6 @@ var $$AnimateCssDriverProvider = ['$$animationProvider', function($$animationPro } } - // we apply the classes right away since the pre-digest took care of the - // preparation classes. - onBeforeClassesAppliedCb(element); - applyAnimationClasses(element, options); - // We assign the preparationClasses as the actual animation event since // the internals of $animateCss will just suffix the event token values // with `-active` to trigger the animation. @@ -1568,8 +1637,8 @@ var $$AnimateCssDriverProvider = ['$$animationProvider', function($$animationPro // by the time... var $$AnimateJsProvider = ['$animateProvider', function($animateProvider) { - this.$get = ['$injector', '$$AnimateRunner', '$$rAFMutex', '$$jqLite', - function($injector, $$AnimateRunner, $$rAFMutex, $$jqLite) { + this.$get = ['$injector', '$$AnimateRunner', '$$jqLite', + function($injector, $$AnimateRunner, $$jqLite) { var applyAnimationClasses = applyAnimationClassesFactory($$jqLite); // $animateJs(element, 'enter'); @@ -2264,9 +2333,6 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) { return runner; } - applyGeneratedPreparationClasses(element, isStructural ? event : null, options); - blockTransitions(node, SAFE_FAST_FORWARD_DURATION_VALUE); - // the counter keeps track of cancelled animations var counter = (existingAnimation.counter || 0) + 1; newAnimation.counter = counter; @@ -2325,10 +2391,7 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) { : animationDetails.event; markElementAnimationState(element, RUNNING_STATE); - var realRunner = $$animation(element, event, animationDetails.options, function(e) { - $$forceReflow(); - blockTransitions(getDomNode(e), false); - }); + var realRunner = $$animation(element, event, animationDetails.options); realRunner.done(function(status) { close(!status); @@ -2473,19 +2536,34 @@ var $$AnimateQueueProvider = ['$animateProvider', function($animateProvider) { }]; }]; -var $$rAFMutexFactory = ['$$rAF', function($$rAF) { +var $$AnimateAsyncRunFactory = ['$$rAF', function($$rAF) { + var waitQueue = []; + + function waitForTick(fn) { + waitQueue.push(fn); + if (waitQueue.length > 1) return; + $$rAF(function() { + for (var i = 0; i < waitQueue.length; i++) { + waitQueue[i](); + } + waitQueue = []; + }); + } + return function() { var passed = false; - $$rAF(function() { + waitForTick(function() { passed = true; }); - return function(fn) { - passed ? fn() : $$rAF(fn); + return function(callback) { + passed ? callback() : waitForTick(callback); }; }; }]; -var $$AnimateRunnerFactory = ['$q', '$$rAFMutex', function($q, $$rAFMutex) { +var $$AnimateRunnerFactory = ['$q', '$sniffer', '$$animateAsyncRun', + function($q, $sniffer, $$animateAsyncRun) { + var INITIAL_STATE = 0; var DONE_PENDING_STATE = 1; var DONE_COMPLETE_STATE = 2; @@ -2530,7 +2608,7 @@ var $$AnimateRunnerFactory = ['$q', '$$rAFMutex', function($q, $$rAFMutex) { this.setHost(host); this._doneCallbacks = []; - this._runInAnimationFrame = $$rAFMutex(); + this._runInAnimationFrame = $$animateAsyncRun(); this._state = 0; } @@ -2642,8 +2720,8 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { return element.data(RUNNER_STORAGE_KEY); } - this.$get = ['$$jqLite', '$rootScope', '$injector', '$$AnimateRunner', '$$HashMap', - function($$jqLite, $rootScope, $injector, $$AnimateRunner, $$HashMap) { + this.$get = ['$$jqLite', '$rootScope', '$injector', '$$AnimateRunner', '$$HashMap', '$$rAFScheduler', + function($$jqLite, $rootScope, $injector, $$AnimateRunner, $$HashMap, $$rAFScheduler) { var animationQueue = []; var applyAnimationClasses = applyAnimationClassesFactory($$jqLite); @@ -2711,11 +2789,11 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { if (remainingLevelEntries <= 0) { remainingLevelEntries = nextLevelEntries; nextLevelEntries = 0; - result = result.concat(row); + result.push(row); row = []; } row.push(entry.fn); - forEach(entry.children, function(childEntry) { + entry.children.forEach(function(childEntry) { nextLevelEntries++; queue.push(childEntry); }); @@ -2723,14 +2801,15 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { } if (row.length) { - result = result.concat(row); + result.push(row); } + return result; } } // TODO(matsko): document the signature in a better way - return function(element, event, options, onBeforeClassesAppliedCb) { + return function(element, event, options) { options = prepareAnimationOptions(options); var isStructural = ['enter', 'move', 'leave'].indexOf(event) >= 0; @@ -2782,8 +2861,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { // the element was destroyed early on which removed the runner // form its storage. This means we can't animate this element // at all and it already has been closed due to destruction. - var elm = entry.element; - if (getRunner(elm) && getDomNode(elm).parentNode) { + if (getRunner(entry.element)) { animations.push(entry); } else { entry.close(); @@ -2814,7 +2892,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { : animationEntry.element; if (getRunner(targetElement)) { - var operation = invokeFirstDriver(animationEntry, onBeforeClassesAppliedCb); + var operation = invokeFirstDriver(animationEntry); if (operation) { startAnimationFn = operation.start; } @@ -2834,11 +2912,9 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { }); // we need to sort each of the animations in order of parent to child - // relationships. This ensures that the parent to child classes are - // applied at the right time. - forEach(sortAnimations(toBeSortedAnimations), function(triggerAnimation) { - triggerAnimation(); - }); + // relationships. This ensures that the child classes are applied at the + // right time. + $$rAFScheduler(sortAnimations(toBeSortedAnimations)); }); return runner; @@ -2908,7 +2984,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { var lookupKey = from.animationID.toString(); if (!anchorGroups[lookupKey]) { var group = anchorGroups[lookupKey] = { - // TODO(matsko): double-check this code + structural: true, beforeStart: function() { fromAnimation.beforeStart(); toAnimation.beforeStart(); @@ -2962,7 +3038,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { return matches.join(' '); } - function invokeFirstDriver(animationDetails, onBeforeClassesAppliedCb) { + function invokeFirstDriver(animationDetails) { // we loop in reverse order since the more general drivers (like CSS and JS) // may attempt more elements, but custom drivers are more particular for (var i = drivers.length - 1; i >= 0; i--) { @@ -2970,7 +3046,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { if (!$injector.has(driverName)) continue; // TODO(matsko): remove this check var factory = $injector.get(driverName); - var driver = factory(animationDetails, onBeforeClassesAppliedCb); + var driver = factory(animationDetails); if (driver) { return driver; } @@ -3026,7 +3102,8 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { /* global angularAnimateModule: true, $$BodyProvider, - $$rAFMutexFactory, + $$AnimateAsyncRunFactory, + $$rAFSchedulerFactory, $$AnimateChildrenDirective, $$AnimateRunnerFactory, $$AnimateQueueProvider, @@ -3043,7 +3120,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { * @description * * The `ngAnimate` module provides support for CSS-based animations (keyframes and transitions) as well as JavaScript-based animations via - * callback hooks. Animations are not enabled by default, however, by including `ngAnimate` then the animation hooks are enabled for an Angular app. + * callback hooks. Animations are not enabled by default, however, by including `ngAnimate` the animation hooks are enabled for an Angular app. * *
* @@ -3076,7 +3153,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { * CSS-based animations with ngAnimate are unique since they require no JavaScript code at all. By using a CSS class that we reference between our HTML * and CSS code we can create an animation that will be picked up by Angular when an the underlying directive performs an operation. * - * The example below shows how an `enter` animation can be made possible on a element using `ng-if`: + * The example below shows how an `enter` animation can be made possible on an element using `ng-if`: * * ```html *
@@ -3211,8 +3288,8 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { * /* this will have a 100ms delay between each successive leave animation */ * transition-delay: 0.1s; * - * /* in case the stagger doesn't work then the duration value - * must be set to 0 to avoid an accidental CSS inheritance */ + * /* As of 1.4.4, this must always be set: it signals ngAnimate + * to not accidentally inherit a delay property from another CSS class */ * transition-duration: 0s; * } * .my-animation.ng-enter.ng-enter-active { @@ -3761,16 +3838,16 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) { * @description * The ngAnimate `$animate` service documentation is the same for the core `$animate` service. * - * Click here {@link ng.$animate $animate to learn more about animations with `$animate`}. + * Click here {@link ng.$animate to learn more about animations with `$animate`}. */ angular.module('ngAnimate', []) .provider('$$body', $$BodyProvider) .directive('ngAnimateChildren', $$AnimateChildrenDirective) - - .factory('$$rAFMutex', $$rAFMutexFactory) + .factory('$$rAFScheduler', $$rAFSchedulerFactory) .factory('$$AnimateRunner', $$AnimateRunnerFactory) + .factory('$$animateAsyncRun', $$AnimateAsyncRunFactory) .provider('$$animateQueue', $$AnimateQueueProvider) .provider('$$animation', $$AnimationProvider) diff --git a/UI/WebServerResources/js/vendor/angular-animate.min.js b/UI/WebServerResources/js/vendor/angular-animate.min.js index 77179f126..71ae4d932 100644 --- a/UI/WebServerResources/js/vendor/angular-animate.min.js +++ b/UI/WebServerResources/js/vendor/angular-animate.min.js @@ -1,54 +1,56 @@ /* - AngularJS v1.4.4 + AngularJS v1.4.5 (c) 2010-2015 Google, Inc. http://angularjs.org License: MIT */ -(function(E,s,X){'use strict';function sa(a,b,c){if(!a)throw ngMinErr("areq",b||"?",c||"required");return a}function ta(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;Y(a)&&(a=a.join(" "));Y(b)&&(b=b.join(" "));return a+" "+b}function Da(a){var b={};a&&(a.to||a.from)&&(b.to=a.to,b.from=a.from);return b}function U(a,b,c){var d="";a=Y(a)?a:a&&O(a)&&a.length?a.split(/\s+/):[];l(a,function(a,w){a&&0=a&&(a=e,e=0,b=b.concat(k),k=[]);k.push(v.fn);l(v.children,function(a){e++;c.push(a)});a--}k.length&&(b=b.concat(k));return b}(c)}var B=[],N=R(a);return function(z,u,t,s){function G(a){a=a.hasAttribute("ng-animate-ref")?[a]:a.querySelectorAll("[ng-animate-ref]");var b=[];l(a,function(a){var c=a.getAttribute("ng-animate-ref");c&&c.length&&b.push(a)});return b}function I(a){var b= -[],c={};l(a,function(a,f){var h=D(a.element),d=0<=["enter","move"].indexOf(a.event),h=a.structural?G(h):[];if(h.length){var e=d?"to":"from";l(h,function(a){var b=a.getAttribute("ng-animate-ref");c[b]=c[b]||{};c[b][e]={animationID:f,element:J(a)}})}else b.push(a)});var f={},d={};l(c,function(c,e){var k=c.from,y=c.to;if(k&&y){var g=a[k.animationID],v=a[y.animationID],q=k.animationID.toString();if(!d[q]){var x=d[q]={beforeStart:function(){g.beforeStart();v.beforeStart()},close:function(){g.close();v.close()}, -classes:n(g.classes,v.classes),from:g,to:v,anchors:[]};x.classes.length?b.push(x):(b.push(g),b.push(v))}d[q].anchors.push({out:k.element,"in":y.element})}else k=k?k.animationID:y.animationID,y=k.toString(),f[y]||(f[y]=!0,b.push(a[k]))});return b}function n(a,b){a=a.split(" ");b=b.split(" ");for(var c=[],f=0;f=O&&b>=L&&(ra=!0,k())}if(!B)if(h.parentNode){var n,x=[],g=function(a){if(ra)u&&a&&(u=!1,k());else if(u=!a,C.animationDuration)if(a=ja(h,u),u)r.push(a);else{var b=r,c=b.indexOf(a);0<=a&&b.splice(c,1)}},q=0=a&&(a=h,h=0,b.push(e),e=[]);e.push(l.fn); +l.children.forEach(function(a){h++;c.push(a)});a--}e.length&&b.push(e);return b}(c)}var O=[],x=Q(a);return function(t,z,E){function h(a){a=a.hasAttribute("ng-animate-ref")?[a]:a.querySelectorAll("[ng-animate-ref]");var b=[];q(a,function(a){var c=a.getAttribute("ng-animate-ref");c&&c.length&&b.push(a)});return b}function S(a){var b=[],c={};q(a,function(a,g){var d=G(a.element),f=0<=["enter","move"].indexOf(a.event),d=a.structural?h(d):[];if(d.length){var e=f?"to":"from";q(d,function(a){var b=a.getAttribute("ng-animate-ref"); +c[b]=c[b]||{};c[b][e]={animationID:g,element:I(a)}})}else b.push(a)});var d={},f={};q(c,function(c,e){var h=c.from,r=c.to;if(h&&r){var J=a[h.animationID],k=a[r.animationID],B=h.animationID.toString();if(!f[B]){var l=f[B]={structural:!0,beforeStart:function(){J.beforeStart();k.beforeStart()},close:function(){J.close();k.close()},classes:u(J.classes,k.classes),from:J,to:k,anchors:[]};l.classes.length?b.push(l):(b.push(J),b.push(k))}f[B].anchors.push({out:h.element,"in":r.element})}else h=h?h.animationID: +r.animationID,r=h.toString(),d[r]||(d[r]=!0,b.push(a[h]))});return b}function u(a,b){a=a.split(" ");b=b.split(" ");for(var c=[],d=0;dC.expectedEndTime)?v.cancel(C.timer):p.push(r)}z&&(u=v(d,u,!1),p[0]={timer:u,expectedEndTime:k},p.push(r),a.data("$$animateCss",p));a.on(m.join(" "),l);xa(a,c)}} +function d(){var b=a.data("$$animateCss");if(b){for(var c=1;c=M&&b>=K&&(S=!0,r())}if(!s)if(g.parentNode){var H,m=[],k=function(a){if(S)z&&a&&(z=!1,r());else if(z=!a,D.animationDuration)if(a=na(g,z),z)w.push(a);else{var b=w,c=b.indexOf(a);0<=a&&b.splice(c,1)}},p=0=200&&300>e||304===e}},_transformResponse:{value:function(e,t){var r=this._headersGetter(t);return u(n.defaults.transformResponse,function(t){e=t(e,r)}),e}},_parseHeaders:{value:function(e){var t,n,r,i={};return e?(u(e.split("\n"),function(e){r=e.indexOf(":"),t=e.slice(0,r).trim().toLowerCase(),n=e.slice(r+1).trim(),t&&(i[t]=i[t]?i[t]+", "+n:n)}),i):i}},_headersGetter:{value:function(e){return function(t){return t?e[t.toLowerCase()]||null:e}}},_xhrTransport:{value:function(e){var t=this,n=e._xhr=new XMLHttpRequest,r=new _;if(this._onBeforeUploadItem(e),u(e.formData,function(e){u(e,function(e,t){r.append(t,e)})}),"number"!=typeof e._file.size)throw new TypeError("The file specified is no longer valid");r.append(e.alias,e._file,e.file.name),n.upload.onprogress=function(n){var r=Math.round(n.lengthComputable?100*n.loaded/n.total:0);t._onProgressItem(e,r)},n.onload=function(){var r=t._parseHeaders(n.getAllResponseHeaders()),i=t._transformResponse(n.response,r),o=t._isSuccessCode(n.status)?"Success":"Error",s="_on"+o+"Item";t[s](e,i,n.status,r),t._onCompleteItem(e,i,n.status,r)},n.onerror=function(){var r=t._parseHeaders(n.getAllResponseHeaders()),i=t._transformResponse(n.response,r);t._onErrorItem(e,i,n.status,r),t._onCompleteItem(e,i,n.status,r)},n.onabort=function(){var r=t._parseHeaders(n.getAllResponseHeaders()),i=t._transformResponse(n.response,r);t._onCancelItem(e,i,n.status,r),t._onCompleteItem(e,i,n.status,r)},n.open(e.method,e.url,!0),n.withCredentials=e.withCredentials,u(e.headers,function(e,t){n.setRequestHeader(t,e)}),n.send(r),this._render()}},_iframeTransport:{value:function(e){var t=this,n=d('
'),r=d('