diff options
author | jimmydot <jf2512@att.com> | 2017-05-07 14:58:24 -0400 |
---|---|---|
committer | jimmydot <jf2512@att.com> | 2017-05-07 14:58:24 -0400 |
commit | 3982f4f67314ec37fd9b22ae54049958af777c1b (patch) | |
tree | 72111b7c13ee7529cce1ea4c8d83c89fdd164450 /vid-app-common/src/main/webapp/app/vid/scripts/directives/popupWindowDirective.js | |
parent | 00e0d25933699f9e39c3f0b86c983165a1e3e330 (diff) |
[VID-6] Initial rebase push
Change-Id: I9077be9663754d9b22f77c6a7b3109b361b39346
Signed-off-by: jimmydot <jf2512@att.com>
Diffstat (limited to 'vid-app-common/src/main/webapp/app/vid/scripts/directives/popupWindowDirective.js')
-rwxr-xr-x | vid-app-common/src/main/webapp/app/vid/scripts/directives/popupWindowDirective.js | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/directives/popupWindowDirective.js b/vid-app-common/src/main/webapp/app/vid/scripts/directives/popupWindowDirective.js new file mode 100755 index 00000000..76034d54 --- /dev/null +++ b/vid-app-common/src/main/webapp/app/vid/scripts/directives/popupWindowDirective.js @@ -0,0 +1,88 @@ +/*-
+ * ============LICENSE_START=======================================================
+ * VID
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+"use strict";
+
+var popupWindowDirective = function($log, $window) {
+
+ function getZIndex(element) {
+ var maxZIndex = 0;
+ $(window.document).find("*").each(function() {
+ var zIndex = parseInt($(this).css("z-index"));
+ if (zIndex > maxZIndex) {
+ maxZIndex = zIndex;
+ }
+ });
+
+ return maxZIndex;
+ }
+
+ var scrollPosition = {
+ x : 0,
+ y : 0
+ };
+
+ var link = function(scope, element, attrs, controller, transcludeFn) {
+
+ var zIndex = getZIndex(element.parent()) + 1;
+
+ element.css("z-index", zIndex + 1);
+
+ var backgroundStyle = "display: none; position: fixed; z-index:"
+ + zIndex + ";" + "top: 0; left: 0; width: 100%; height: 100%;"
+ + "background-color: #000000; opacity: 0.5";
+
+ var className = attrs["class"];
+ var classString = "";
+ if (className !== undefined && className !== null && className !== "") {
+ element.children().children().children().children().addClass(
+ className);
+ element.removeClass(className);
+ }
+
+ element.before("<div style='" + backgroundStyle + "'></div>");
+
+ attrs.$observe("ngxShow", function(value) {
+ if (value === "true") {
+ scrollPosition = {
+ x : $window.pageXOffset,
+ y : $window.pageYOffset
+ }
+ $window.scrollTo(0, 0);
+ element.css("display", "table");
+ element.prev().css("display", "block");
+ } else if (value === "false") {
+ element.css("display", "none");
+ element.prev().css("display", "none");
+ $window.scrollTo(scrollPosition.x, scrollPosition.y);
+ }
+ });
+ }
+
+ return {
+ restrict : "EA",
+ transclude : true,
+ replace : true,
+ link : link,
+ template : '<table style="display: none; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-collapse: collapse; margin: 0; padding: 0"> <tr><td align="center" style="vertical-align: top; padding: 10px"><div style="display: inline-block; padding: 5px; background-color: white" ng-transclude></div></td></tr></table>'
+ };
+}
+
+appDS2.directive("popupWindow", [ "$log", "$window", popupWindowDirective ]);
|