Browse Source

Don't prematurely initialize autocomplete

spaghetti 8 years ago
parent
commit
b6e46ed4f6

+ 2
- 12
sections/collages/torrent_collage.php View File

@@ -561,7 +561,7 @@ if (!$LoggedUser['DisablePosting']) {
561 561
 if ($CollageCovers != 0) { ?>
562 562
     <div id="coverart" class="box">
563 563
       <div class="head" id="coverhead"><strong>Cover Art</strong></div>
564
-      <div class="collage_images" id="collage_page0">
564
+      <div class="collage_images" id="collage_page0" data-wall-child=".collage_image" data-wall-size="4" data-wall-min="2">
565 565
 <?
566 566
   $Page1 = array_slice($Collage, 0, $CollageCovers);
567 567
   foreach ($Page1 as $Group) {
@@ -570,16 +570,6 @@ if ($CollageCovers != 0) { ?>
570 570
 ?>
571 571
       </div>
572 572
     </div>
573
-    <script>
574
-      $('.collage_image img').load(function() {
575
-        var test = true
576
-        $('.collage_image img').toArray().forEach(function(el) {
577
-          if (!el.complete) test = false
578
-        })
579
-        if (test) wall('.collage_images', '.collage_image', 4, 2)
580
-      })
581
-      wall('.collage_images', '.collage_image', 4, 2)
582
-    </script>
583 573
 <?  if ($NumGroups > $CollageCovers) { ?>
584 574
     <div class="linkbox pager" style="clear: left;" id="pageslinksdiv">
585 575
       <span id="firstpage" class="invisible"><a href="#" class="pageslink" onclick="collageShow.page(0, this); return false;"><strong>&lt;&lt; First</strong></a> | </span>
@@ -592,7 +582,7 @@ if ($CollageCovers != 0) { ?>
592 582
       <span id="lastpage" class="<?=(ceil($NumGroups / $CollageCovers) == 2 ? 'invisible' : '')?>"> | <a href="#" class="pageslink" onclick="collageShow.page(<?=ceil($NumGroups / $CollageCovers) - 1?>, this); return false;"><strong>Last &gt;&gt;</strong></a></span>
593 583
     </div>
594 584
     <script type="text/javascript">//<![CDATA[
595
-      collageShow.init(<?=json_encode($CollagePages)?>);
585
+      $(document).ready(function(){collageShow.init(<?=json_encode($CollagePages)?>)});
596 586
     //]]></script>
597 587
 <?
598 588
   }

+ 1
- 11
sections/user/user.php View File

@@ -808,7 +808,7 @@ foreach ($Collages as $CollageInfo) {
808 808
         <a data-toggle-target="#collage<?=$CollageID?>_box .collage_images" data-toggle-replace="Show" class="brackets">Hide</a>
809 809
       </span>
810 810
     </div>
811
-    <div id="user_collage_images" class="collage_images">
811
+    <div id="user_collage_images" class="collage_images" data-wall-child=".collage_image" data-wall-size="5">
812 812
 <?  foreach ($Collage as $C) {
813 813
       $Group = Torrents::get_groups(array($C['GroupID']), true, true, false);
814 814
       extract(Torrents::array_group($Group[$C['GroupID']]));
@@ -828,16 +828,6 @@ foreach ($Collages as $CollageInfo) {
828 828
       </div>
829 829
 <?  } ?>
830 830
     </div>
831
-    <script>
832
-    $('#user_collage_images .collage_image img').load(function() {
833
-      var test = true
834
-      $('#user_collage_images .collage_image img').toArray().forEach(function(el) {
835
-        if (!el.complete) test = false
836
-      })
837
-      if (test) wall('#user_collage_images', '.collage_image', 5)
838
-    })
839
-    wall('#user_collage_images','.collage_image',5)
840
-    </script>
841 831
   </div>
842 832
 <?
843 833
 }

+ 7
- 0
static/functions/autocomplete.js View File

@@ -4,6 +4,13 @@ var SELECTOR = '[data-gazelle-autocomplete="true"]';
4 4
 $(document).ready(initAutocomplete)
5 5
 
6 6
 function initAutocomplete() {
7
+  if (!$.Autocomplete) {
8
+    window.setTimeout(function() {
9
+      initAutocomplete();
10
+    }, 500)
11
+    return;
12
+  }
13
+
7 14
   var url = {
8 15
     path: window.location.pathname.split('/').reverse()[0].split(".")[0],
9 16
     query: window.location.search.slice(1).split('&').reduce((a,b)=>Object.assign(a,{[b.split('=')[0]]:b.split('=')[1]}),{})

+ 0
- 13
static/functions/collage.js View File

@@ -87,18 +87,6 @@ var collageShow = {
87 87
       $(el.parentNode).add_class('selected');
88 88
     }
89 89
 
90
-/*
91
-    wall = new freewall(ul)
92
-    wall.reset({
93
-      selector: '.collage_image',
94
-      cellW: 150,
95
-      cellH: 'auto',
96
-      gutterX: 2,
97
-      gutterY: 2
98
-    })
99
-    var cells = wall.container.find('.collage_image')
100
-    cells.find('img').load(function(){wall.fitWidth()})
101
-*/
102 90
     $('.collage_image img').load(function() {
103 91
       var test = true;
104 92
       $('.collage_image img').toArray().forEach(function(el) {
@@ -106,7 +94,6 @@ var collageShow = {
106 94
       })
107 95
       if (test) wall('.collage_images', '.collage_image', 4)
108 96
     })
109
-    console.log('fired')
110 97
     wall('.collage_images', '.collage_image', 4)
111 98
 
112 99
     // Toggle the page number links

+ 16
- 1
static/functions/wall.js View File

@@ -1,5 +1,5 @@
1 1
 function wall(parent, children, style, min) {
2
-  var min = min || 2
2
+  var min = +min || 2
3 3
   var b = $(parent+':not(.hidden)').raw()
4 4
   var bs = $(parent+':not(.hidden) '+children).toArray()
5 5
 
@@ -8,6 +8,7 @@ function wall(parent, children, style, min) {
8 8
   bs.forEach(function(el){el.style.width='';el.style.height=''})
9 9
 
10 10
   var rows = []
11
+  if (typeof(style) === 'string') { style = +style }
11 12
   if (typeof(style) === 'number') {
12 13
     for (var i=0; i<bs.length; i+=style)
13 14
       rows.push(bs.slice(i,i+style))
@@ -53,3 +54,17 @@ function wall(parent, children, style, min) {
53 54
     }
54 55
   }
55 56
 }
57
+
58
+if ($('[data-wall-child]').raw()) {
59
+  $('[data-wall-child]').each(function(i, el) {
60
+    wall('#'+el.id, el.attributes['data-wall-child'].value, el.attributes['data-wall-size'].value, el.attributes['data-wall-min']?el.attributes['data-wall-min']:false)
61
+    var sel = '#'+el.id+' '+el.attributes['data-wall-child'].value+' img'
62
+    $(sel).load(function() {
63
+      var test = true;
64
+      $(sel).each(function(j, img) {
65
+        if (!img.complete) test = false
66
+      })
67
+      if (test) wall('#'+el.id, el.attributes['data-wall-child'].value, el.attributes['data-wall-size'].value, el.attributes['data-wall-min']?el.attributes['data-wall-min']:false)
68
+    })
69
+  })
70
+}

Loading…
Cancel
Save