1/** 2* Premium-Package Handling 3*/ 4/* 5 Benutzung: 6 7 1) blPremium.php einbinden 8 9 2) Premium-Bereiche einpacken in Container: 10 <div class="premiumarea"> .. </div> 11 <div class="premiumarea pro"> .. </div> 12 13 3) Titel werden markiert sowie Funktionalität abgeschaltet: 14 <h2>Titel gesperrter Bereich</h2> --> hier wird der Upgrade-Link angefügt 15 16 4) CSS-Klasse "doNotBlock" nimmt Button von der Sperrung aus 17 18 5) Premium-Flag sichtbar machen (mit hasBiz oder hasPro): 19 <script> var hasBiz = <?php echo hasBiz($eventnr) ? 1:0; ?>; </script> 20 oder 21 <script> var hasBiz = <?php echo hasBiz() ? 1:0; ?>; </script> 22*/ 23 24 25/* 26* Initial Backend-Funktionen sperren 27* 28* Wichtig: $(window).load() feuert erst nach $(document).ready() 29*/ 30 31$(window).load(function() { 32 33 $('div.premiumarea').each(function(e){ 34 35 if ($(this).hasClass('pro')) { 36 var needs = 'pro'; 37 var name = 'BusinessPro-Paket'; 38 var hasit = hasPro || false; 39 } else { 40 var needs = 'biz'; 41 var name = 'Business-Paket'; 42 var hasit = hasBiz || false; 43 } 44 45 if (!hasit) 46 $(this).addClass('blocked'); 47 48 // Update-Button hinzufügen: 49 // ..nach erster Titelzeile einfügen 50 51 if (hasit) { 52 var html = "<span class='premtext ok'>Ab " + name + " " + 53 "<span style='font-size:large;'>✓</span>" + 54 "</span>"; 55 } else { 56 var html = "<span class='premtext'>Ab " + name + " </span>" + 57 "<a href='javascript:showPremiumPopup(\""+needs+"\")' class='prembtn doNotBlock'>Info</a>"; 58 } 59 var headline = $(this).find('h2.evSection'); // .first(); 60 if (headline.length) { 61 $(headline).each(function(e){ 62 $(this).append(html); 63 }); 64 } 65 66 // ..oder vor Block einfügen 67 else { 68 html = "<div class='premtextbox'><span>" + html + "</span></div>"; 69 $(this).prepend(html); 70 } 71 72 // Funktionalität entfernen 73 if (!hasit) { 74 $(this).find('input, button').each(function(e){ 75 if (!$(this).hasClass('doNotBlock')) 76 $(this).attr('disabled',true).addClass('disabled'); 77 }); 78 $(this).find('a').each(function(e){ 79 if (!$(this).hasClass('doNotBlock')) 80 $(this).removeAttr('href').off('click'); 81 }); 82 } 83 }); 84}); 85 86 87/* 88* Premium-Infos anzeigen und Buchung erlauben 89*/ 90 91function insertPremiumLink(pack, text, node) { 92 93 if (pack == 'pro') { 94 var needs = 'pro'; 95 var name = 'BusinessPro-Paket'; 96 var hasit = hasPro || false; 97 } else { 98 var needs = 'premium'; 99 var name = 'Business-Paket'; 100 var hasit = hasBiz || false; 101 } 102 103 if (!text) 104 text = 'Ab '+name; 105 106 if (hasit) { 107 var html = "<span class='premtext ok'> " + text + " " + 108 "<span style='font-size:large;'>✓</span>" + 109 "</span>"; 110 } else { 111 var html = "<span class='premtext'> " + text + " </span>" + 112 "<a href='javascript:showPremiumPopup();' class='prembtn doNotBlock'>Info</a>"; 113 } 114 115 html = "<span class='premtextbox'><span>" + html + "</span></span>"; 116 $(node).append(html); 117} 118 119function showPremiumPopup() { 120 UIkit.modal('#xxPremiumPopup').show(); 121} 122 123function hidePremiumPopup() { 124 UIkit.modal('#xxPremiumPopup').hide(); 125} 126 127function bookPremium() { 128 129 UIkit.modal('#xxPremiumPopup').hide(); 130 131 var msg = ''; 132 msg += 'Ich interessiere mich für das Business-Paket, bitte nehmen Sie Kontakt mit mir auf.'; 133 msg += '\n'; 134 msg += '\nMein Name:'; 135 msg += '\n\n'; 136 msg += '\nTelefon oder Mailadresse:'; 137 msg += '\n\n'; 138 msg += '\nInteresse an Business oder BusinessPro?'; 139 msg += '\n\n'; 140 msg += '\nGewünschte Laufzeit (bestimmter Zeitraum oder unbegrenzt) und Abrechnungszeitraum (einmalig, monatlich, jährlich)?'; 141 msg += '\n\n'; 142 msg += '\nBemerkungen:'; 143 msg += '\n\n'; 144 145 $('#xxFeedbackText').height(350); 146 147 showFeedbackBox(msg, 'misc'); 148}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.