Skip to content
Snippets Groups Projects
  1. Feb 09, 2022
  2. Feb 05, 2022
  3. Dec 29, 2021
  4. Jun 21, 2021
  5. Jun 11, 2021
  6. May 18, 2021
  7. May 17, 2021
  8. May 14, 2021
  9. May 12, 2021
  10. May 03, 2021
  11. Apr 16, 2021
  12. Apr 09, 2021
  13. Apr 02, 2021
    • Yassine Doghri's avatar
      feat(fediverse): implement activitypub protocols + update user interface · 2f525c0f
      Yassine Doghri authored
      - add "ActivityPub" library to handle server to server federation and basic
        client to server protocols using activitypub:
        - add webfinger endpoint to look for actor
        - add actor definition with inbox / outbox / followers
        - remote follow an actor
        - create notes with possible preview cards
        - interract with favourites, reblogs and replies
        - block incoming actors and/or domains
        - broadcast/schedule activities to fediverse followers using a cron task
      - For castopod, the podcast is the actor:
        - overwrite the activitypub library for castopod's specific needs
        - perform basic interactions administrating a podcast to interact with fediverse users:
          - create notes with episode attachment
          - favourite and share a note + reply
          - add specific castopod_namespaces for podcasts and episodes definitions
      - overwrite CodeIgniter's Route service to include alternate-content option for
        activitystream requests
      - update episode publication logic:
        - remove publication inputs in create / edit episode form
        - publish / schedule or unpublish an episode after creation
        - the podcaster publishes a note when publishing an episode
      - Javascript / Typescript modules:
        - fix Dropdown.ts to keep dropdown menu in foreground
        - add Modal.ts for funding links modal
        - add Toggler.ts to toggle various css states in ui
      - User Interface:
        - update tailwindcss to v2
        - use castopod's pine and rose colors
        - update public layout to a 3 column layout
        - add pages in public for podcast activity, episode list and notes
        - update episode page to include linked notes
        - remove previous and next episodes from episode pages
        - show different public views depending on whether user is authenticated or not
        - use Kumbh Sans and Montserrat fonts
      - update CodeIgniter's config files
      - with CodeIgniter's new requirements, update docker environments are now based on
        php v7.3 image
      - move Image entity to Libraries
      - update composer and npm packages to latest versions
      
      closes #69 #65 #85, fixes #51 #91 #92 #88
      2f525c0f
  14. Mar 30, 2021
  15. Mar 19, 2021
  16. Feb 27, 2021
  17. Feb 10, 2021
  18. Dec 23, 2020
  19. Nov 26, 2020
  20. Nov 19, 2020
    • Benjamin Bellamy's avatar
      feat(rss): add podcast-namespace tags for platforms + previousUrl tag · dbba8dc5
      Benjamin Bellamy authored and Yassine Doghri's avatar Yassine Doghri committed
      - add podcast:id tag
      - add podcast:funding tag
      - add podcast:social tag
      - add podcast:previousUrl tag
      - add missing platforms with icons
      - update platforms table to include social and funding platforms
      - rename platform_links table to podcasts_platforms
      - move podcast import methods from podcast controller
      - update import functionality to insert platforms from rss
      
      closes #73, #75, #76, #80
      dbba8dc5
  21. Oct 29, 2020
    • Yassine Doghri's avatar
      refactor(database): add / update fields to optimize storage · 391c349d
      Yassine Doghri authored
      - harmonize field types and use explicit names
      - store html value alongside markdown descriptions for better performance
      - add duration and bandwidth to podcast analytics
      - add new analytics table for podcast hits by hour
      - replace visible MAXMIND_LICENCE_KEY with variable
      391c349d
  22. Oct 22, 2020
    • Yassine Doghri's avatar
      feat(episodes): schedule episode with future publication_date by using cache expiration time · 4f1e773c
      Yassine Doghri authored
      - merge publication date fields into one field instanciated with flatpickr datetime picker
      - get user timezone to convert user publication_date input to UTC
      - remove setPublishedAt() method from episode entity
      - add publication pill component to display the episode publication date info
      - clear cache after episode insert
      - use CI is_really_writable() helper in install instead of is_writable()
      - fix latest episodes layout
      - update tsconfig to only include ts folders
      - update DEPENDENCIES.md to include flatpickr
      - add format_duration helper to format episode enclosure duration instead of translating it (causes
      translation bug)
      - add Time.ts module to convert UTC time to user localized time for episode publication dates
      - fix some layout issues
      - update php and js dependencies to latest versions
      
      closes #47
      4f1e773c
  23. Oct 21, 2020
  24. Oct 20, 2020
  25. Oct 15, 2020
    • Benjamin Bellamy's avatar
      feat: update analytics so to meet IABv2 requirements · 03e23a28
      Benjamin Bellamy authored and Yassine Doghri's avatar Yassine Doghri committed
      - https://iabtechlab.com/wp-content/uploads/2017/12/Podcast_Measurement_v2-Dec-20-2017.pdf
        - no IP address is ever stored on the server. Only aggregate data is stored in the dababase.
        - rolling 24-hour window
        - castopod does not do pre-load
        - IP Blacklisting https://github.com/client9/ipcat
        - user-agent Filtering https://github.com/opawg/user-agents
        - ignores 2 bytes range "Range: 0-1" (performed by official Apple iOS Podcast app)
        - in case of partial content, adds up all requests to check >1mn was downloaded
        - identifying Uniques is done with a combination of IP Address and User Agent
      - add AMcharts
      - add some graphs
      - add regions to analytics
      - add ipcat blacklist
      - enhance useragents performances
      - add filesize and header size in order to calculate 1mn downloads
      - update publisher ID3 field
      - update castopod icon
      - add disclaimer and warning import form translation
      - update docs/setup-development.md
      
      closes #10
      03e23a28
    • Yassine Doghri's avatar
      feat: enhance admin ui with responsive design and ux improvements · 2d44b457
      Yassine Doghri authored
      - add podcast sidebar navigation
      - add podcast dashboard with latest episodes
      - add pagination to podcast episodes
      - add components helper to reuse ui components (button, data_table, etc.)
      - enhance podcast and episode forms by splitting them into form sections
      - add hint tooltips to podcast and episode forms
      - transform radio inputs as buttons for better ux
      - replace explicit field by parental_advisory
      - replace author field by publisher
      - add podcasts_categories table to set multiple categories
      - use choices.js to enhance multiselect fields
      - update Language files
      - update js dependencies to latest versions
      
      closes #31, #9
      2d44b457
Loading