Spaces:
Running
Running
| // Main application logic | |
| document.addEventListener('DOMContentLoaded', () => { | |
| // Initialize tooltips | |
| const tooltips = document.querySelectorAll('.tooltip'); | |
| tooltips.forEach(tooltip => { | |
| tooltip.addEventListener('mouseenter', () => { | |
| const tooltipText = tooltip.querySelector('.tooltiptext'); | |
| tooltipText.style.visibility = 'visible'; | |
| tooltipText.style.opacity = '1'; | |
| }); | |
| tooltip.addEventListener('mouseleave', () => { | |
| const tooltipText = tooltip.querySelector('.tooltiptext'); | |
| tooltipText.style.visibility = 'hidden'; | |
| tooltipText.style.opacity = '0'; | |
| }); | |
| }); | |
| // Content generation function | |
| window.generateContent = async (type) => { | |
| try { | |
| // Call Venice API for content generation | |
| const response = await fetch('https://api.venice.ai/generate', { | |
| method: 'POST', | |
| headers: { | |
| 'Content-Type': 'application/json', | |
| 'Authorization': `Bearer ${veniceApiKey}` | |
| }, | |
| body: JSON.stringify({ | |
| type: type, | |
| nsfw: true, | |
| length: 'medium', | |
| style: 'viral' | |
| }) | |
| }); | |
| const data = await response.json(); | |
| return data.content; | |
| } catch (error) { | |
| console.error('Error generating content:', error); | |
| return null; | |
| } | |
| }; | |
| // Affiliate link matching | |
| window.matchAffiliateLinks = async (content) => { | |
| try { | |
| const { data, error } = await supabase | |
| .from('affiliate_products') | |
| .select('*') | |
| .textSearch('keywords', content); | |
| if (error) throw error; | |
| return data; | |
| } catch (error) { | |
| console.error('Error matching affiliate links:', error); | |
| return []; | |
| } | |
| }; | |
| // Trend analysis | |
| window.analyzeTrends = async () => { | |
| try { | |
| const { data, error } = await supabase | |
| .rpc('get_nsfw_trends'); | |
| if (error) throw error; | |
| return data; | |
| } catch (error) { | |
| console.error('Error analyzing trends:', error); | |
| return null; | |
| } | |
| }; | |
| }); |