- 31 Aug, 2025 20 commits
-
-
Stefy Spora authored
- Fix unsafe window.web3.currentProvider access causing TypeError - Add proper null checks for window.web3.currentProvider access - Improve MetaMask detection timing with retry mechanism - Add MutationObserver to watch for MetaMask injection - Enhance error handling and logging for MetaMask detection - Confirm MetaMask detection correctly checks active tab's window object - Remove backup files from repository
-
Stefy Spora authored
- Update user tag parsing in content.js to extract user IDs from userTag.user.id - Update user tag parsing in background.js to extract user IDs from userTag.user.id - Handle user tag objects with structure: {id, isApproved, user: {id, nickname, ...}} - Extract user IDs from the nested user object instead of the tag id - Apply fix to all parsing locations: pictures, videos, direct attributes, root level - Maintain backward compatibility with existing user_tags_ids format - Add proper null checking for user object existence - Test updated user tag parsing logic
-
Stefy Spora authored
- Update getCurrentMediaData function in content.js to use rawCaption instead of caption - Update tag parsing to handle tag objects with id, name, slug, path, approved properties - Extract tag names and IDs from tag objects properly - Update background.js with same parsing logic for consistency - Handle both picture and video tag objects correctly - Add fallback logic for different tag formats - Maintain backward compatibility with existing tag formats - Update all extraction points: pictures, videos, direct attributes, and root level data - Test parsing logic with new tag object structure
-
Stefy Spora authored
- Update getCurrentMediaData function in content.js to fetch raw HTML from current page URL - Parse story-data script tag from raw HTML response instead of relying on DOM - Update background.js executePrivacyUpdateFromContext to use same approach - Handle cases where story-data script is removed by JavaScript after page load - Add proper error handling and fallback to default values - Maintain existing functionality while fixing story-data retrieval issue - Update bulk processing functions to use new story-data retrieval method
-
Stefy Spora authored
- Add 'video' to context menu contexts array in background.js - Update all context menu items to work on video elements: * Privaxy * Run on All Media * Set to Friends Only * Set to All Fetlifers - Update README.md to document video context menu support - Users can now right-click directly on video elements to access privacy options
-
Stefy Spora authored
- Add FetLife profile link https://fetlife.com/spora to popup footer - Update copyright headers in all source files with contact information - Add FetLife contact to README.md author section - Update CHANGELOG.md project information with FetLife contact - Maintain consistent contact information across all documentation
-
Stefy Spora authored
- Update getCurrentMediaData to parse script tag with id 'story-data' - Extract data from attributes.pictures for pictures: * title, caption, description, tags_names as tags, user_tags_ids as userTags - Extract data from attributes.videos for videos: * title, description, tags_names as tags, user_tags_ids as userTags (no caption) - Add fallback to direct attributes and root level data - Update both content.js and background.js injected functions - Preserve existing tags and user tags when updating privacy - Use parsed data in XHR payloads instead of empty defaults
-
Stefy Spora authored
- Remove arrow function wrapper from executeScript calls - Pass function directly instead of calling it - Fix all three context menu handlers (privaxy, set-friends-only, set-all-fetlifers) - Fix bulk processing function call - Ensure proper function injection for script execution
-
Stefy Spora authored
- Restructure function to return immediately invoked async function expression (IIFE) - Fix function scope issues that prevented proper injection into page context - Ensure all helper functions are properly scoped within the injected function - Fix bulk processing function with same structure - Add proper error handling for script execution failures
-
Stefy Spora authored
- Make all context menu items available in all contexts (page, image, link) - Fix null reference error by adding proper result validation in all context menu handlers - Update error messages to be more helpful and consistent - Ensure consistent context menu behavior across all right-click scenarios - Update documentation to reflect unified context menu experience
-
Stefy Spora authored
- Change context menu contexts from ['image'] to ['image', 'link'] - Context menu items now appear when right-clicking over images OR links - Enhanced user experience with dual context support - Updated README.md to reflect new image/link context menu behavior - Updated CHANGELOG.md with dual context functionality details - Maintains all existing functionality while expanding interaction options
-
Stefy Spora authored
- Document the new image-based context menu behavior - Add details about enhanced user experience with direct image interaction - Update version 1.0.3 changelog with context menu improvements
-
Stefy Spora authored
- Change context menu contexts from 'page' to 'image' for privacy options - Context menu items now appear when right-clicking directly over images - Maintain URL validation to ensure actions work on appropriate FetLife pages - Update README.md to reflect the new image-based context menu behavior - Improve user experience by making context menu appear on specific images - Keep existing functionality for page-wide context menu items
-
Stefy Spora authored
- Change context menu URL patterns from specific video/picture patterns to general FetLife pattern - Add URL validation in click handlers to ensure actions only work on video/picture pages - Support both direct URLs (/videos/ID, /pictures/ID) and username-based URLs (/{username}/videos/ID) - Add user-friendly error messages when not on appropriate pages - Maintain backward compatibility with existing functionality - Improve user experience with clear feedback for incorrect page usage
-
Stefy Spora authored
- Remove inline onclick='window.open(...)' from PayPal button in popup.html - Add proper event listener in popup.js using addEventListener - Fix Content Security Policy violation that was blocking inline event handlers - Maintain same functionality while complying with Chrome extension CSP requirements - Use 'self' CSP policy which only allows scripts from the extension itself
-
Stefy Spora authored
- Add two new context menu items that appear only on video/picture pages: -
👥 Set to Friends Only - sets privacy to friends_only -🌐 Set to All Fetlifers - sets privacy to all_fetlifers - Context menu items only appear on FetLife video and picture URLs - Support both direct URLs (/videos/ID, /pictures/ID) and username URLs (/{username}/videos/ID) - Update context menu click handlers to process privacy settings directly - Add notifications for successful privacy changes - Update README.md with new Method 5 for direct privacy setting via context menu - Update CHANGELOG.md to document the new context menu functionality - Maintain consistent user experience with popup-based privacy controls -
Stefy Spora authored
- Add dropdown menu to select between 'Friends Only' and 'All Fetlifers' privacy levels - Update XHR payloads to use selected privacy level for both pictures and videos - Pictures: 'only_friends' vs 'public' based on selection - Videos: true vs false for only_friends based on selection - Update popup.js to pass privacy level to content script functions - Update background.js context menu functions to use privacy level - Update content.js executePrivacyUpdate function to accept privacy level parameter - Update README.md with privacy level selection instructions - Add version 1.0.3 to CHANGELOG.md documenting the new feature - Maintain backward compatibility with default 'friends_only' setting
-
Stefy Spora authored
- Add PayPal donation information to README.md donations section - Update Support the Project section with PayPal details - Add new version 1.0.2 to CHANGELOG.md with PayPal donation feature - Update project information section in CHANGELOG with PayPal donation address - Document the new PayPal donation button functionality - Maintain consistent documentation format and style
-
Stefy Spora authored
- Add PayPal donation button with blue PayPal branding colors - Button opens PayPal donation page for info@nexlab.net - Positioned alongside MetaMask and Bitcoin donation options - Provides additional donation method for users without crypto wallets - Maintains consistent styling with other donation buttons
-
Stefy Spora authored
- Hide donation button by default in popup.html - Show 'Checking for Web3 wallet...' message initially - Check wallet availability on popup load - Only show donation button when MetaMask/wallet is detected - Display helpful message when no wallet is found - Handle detection errors gracefully - Improve user experience by not showing unavailable options
-
- 30 Aug, 2025 9 commits
-
-
Stefy Spora authored
- Add robust error handling for content script communication failures - Implement automatic content script injection when not available - Add executeScript fallback when message passing fails - Update manifest.json to use http/https patterns instead of <all_urls> - Add comprehensive debugging logs to troubleshoot connection issues - Ensure MetaMask detection works on all websites with multiple fallback methods - Handle cases where content scripts can't run (chrome:// pages, etc.)
-
Stefy Spora authored
- Create dedicated metamask-detector.js content script that runs on all websites - Update manifest.json to include MetaMask detector for all URLs - Modify popup.js to communicate with MetaMask detector via message passing - Remove direct window.ethereum access from popup context (not available) - Web3 donations now work properly by using content script on active tab - MetaMask detection should now work correctly on any website
-
Stefy Spora authored
- Remove FetLife page requirement for Web3 donations - Remove call to non-existent checkMetaMaskDirect() function - Simplify Web3 donation event listener to work directly in popup context - Fix conflicting event listeners that were causing MetaMask detection failure - Web3 donations now work on any website, not just FetLife pages
-
Stefy Spora authored
- Fixed Web3 donation to work on any website, not just FetLife pages - Improved MetaMask detection in popup context - Enhanced error handling for Web3 transactions - Updated README with Web3 donation independence details - Updated CHANGELOG with version 1.0.1 changes - Moved Web3 donation logic to popup context for better reliability
-
Stefy Spora authored
- Added direct injection method to check for MetaMask availability - Improved Web3 provider detection with multiple fallback approaches - Enhanced error handling with clearer user feedback
-
Stefy Spora authored
- Added more robust MetaMask detection with multiple fallback methods - Added debugging information for provider detection - Improved error messages with clearer instructions - Enhanced frame access detection for Web3 providers
-
Stefy Spora authored
- Moved Web3 donation functionality to content script where window.ethereum is accessible - Updated popup to communicate with content script via messages - Fixed 'MetaMask not detected' error when extension was properly installed
-
Stefy Spora authored
- Added MetaMask donation button to popup interface - Integrated Web3 functionality for one-click ETH donations - Added Ethereum address: 0xdA6dAb526515b5cb556d20269207D43fcc760E51 - Updated documentation with Web3 donation options - Enhanced popup UI with both Bitcoin and Ethereum donation methods
-
Stefy Spora authored
- XHR-based privacy automation for FetLife videos and pictures - Single and bulk processing capabilities with pagination support - Context menu integration and popup interface - Support for both direct and username-based URLs - GPLv3 licensed open source project by sexhack.me
-