---
id: asiancinema
name: AsianCinema
description: "Tracker Movies/TV/Music"
language: en-US
type: private
encoding: UTF-8
links:
  - https://eiga.moi/
legacylinks:
  - https://asiancinema.me/

caps:
  categorymappings:
    - {id: 1, cat: Movies, desc: "Movies"}
    - {id: 2, cat: TV, desc: "TV"}
    - {id: 3, cat: Audio, desc: "Music"}

  modes:
    search: [q]
    tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
    movie-search: [q, imdbid, tmdbid]
    music-search: [q]

settings:
  - name: username
    type: text
    label: Username
  - name: password
    type: password
    label: Password
  - name: freeleech
    type: checkbox
    label: Search freeleech only
    default: false
  - name: sort
    type: select
    label: Sort requested from site
    default: created_at
    options:
      created_at: created
      seeders: seeders
      size: size
      name: title
  - name: type
    type: select
    label: Order requested from site
    default: desc
    options:
      desc: desc
      asc: asc
  - name: info_activity
    type: info
    label: Account Inactivity
    default: "Your account will be automatically deleted from the database after 90 days of inactivity. If you return or visit the site with your account before that amount of time passes, then the inactivity timer will reset and your account will be fine for another 90 days.<br>Keep in mind that 'activity' is considered a visit to any page and that torrent traffic is not counted as account activity. In order to reset the inactivity timer all you have to do is visit a single page while logged in with your account. If your account is deleted for inactivity, please do not ask the site staff to un-delete it for you. The deletion is performed automatically by the server and, as such, your account cannot be recovered after it has been deleted."

login:
  # note APIKEY is broken on this 5.3.0 site
  path: login
  method: form
  form: form[action$="/login"]
  inputs:
    username: "{{ .Config.username }}"
    password: "{{ .Config.password }}"
    remember: on
  selectorinputs:
    _token:
      selector: input[name="_token"]
      attribute: value
  error:
    - selector: div#ERROR_COPY
#    test:
#      path: /
#      selector: a[href$="/logout"]

search:
  paths:
    - path: torrents/filter
  inputs:
    $raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
    search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
    imdb: "{{ .Query.IMDBIDShort }}"
    tvdb: "{{ .Query.TVDBID }}"
    tmdb: "{{ .Query.TMDBID }}"
    sorting: "{{ .Config.sort }}"
    direction: "{{ .Config.type }}"
    qty: 100
    freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
    # can support genre search but you need to know the id. &genre[]=10759 for Action & Adventure
    # does not have genre in results, they are on the details page.

  rows:
    selector: table > tbody > tr

  fields:
    category:
      selector: a[href*="/categories/"]
      attribute: href
      filters:
        - name: regexp
          args: "/categories/(\\d+)"
    title:
      selector: a.view-torrent
    download:
      selector: a[href*="/download/"]
      attribute: href
    details:
      selector: a.view-torrent
      attribute: href
    poster:
      selector: div.torrent-poster img
      attribute: src
      filters:
        - name: prepend
          args: "https://images.weserv.nl/?url=" # for display on dashboard
        - name: append
          args: "&w=180&h=270" # for display on dashboard
        - name: replace
          args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""]
    size:
      selector: td:nth-last-child(4)
    seeders:
      selector: td:nth-last-child(3)
    leechers:
      selector: td:nth-last-child(2)
    grabs:
      selector: td:nth-last-child(1)
    imdbid:
      selector: a[href*="imdb.com/title/tt"]
      attribute: href
    tmdbid:
      selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"]
      attribute: href
    date:
      selector: time
      filters:
        # translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish
        - name: re_replace
          args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"]
        - name: re_replace
          args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"]
        - name: re_replace
          args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"]
        - name: re_replace
          args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"]
        - name: re_replace
          args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"]
        - name: re_replace
          args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"]
        - name: re_replace
          args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"]
        - name: re_replace
          args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"]
        - name: re_replace
          args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"]
        - name: re_replace
          args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"]
        - name: re_replace
          args: ["(?i) (ay)", "month"]
        - name: re_replace
          args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"]
        - name: re_replace
          args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"]
        - name: re_replace
          args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"]
        - name: re_replace
          args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"]
        - name: re_replace
          args: ["(?i) (an)", "year"]
        - name: re_replace
          args: ["(?i)(För |und)", ""] # Misc removals
        - name: timeago
    downloadvolumefactor:
      case:
        i[class*="fa-id-badge text-orange"]: 0 # 24 Hour FreeLeech From BON Store
        i[class*="fa-trophy text-purple"]: 0 # Special FreeLeech For Certain User Groups
        i[class*="fa-star text-bold"]: 0 # Freeleech From Token
        i[class*="fa-coins text-bold"]: 0 # Freeleech From Token
        i[class*="fa-globe text-blue"]: 0 # Global Freeleech
        i[class*="fa-star text-gold"]: 0 # Freeleech
        i[class*="fa-certificate text-pink"]: 0 # Featured Torrent
        "*": 1
    uploadvolumefactor:
      case:
        i[class*="fa-gem text-green"]: 2 # Single Torrent Double Upload
        i[class*="fa-globe text-green"]: 2 # Global Double Upload
        i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
        "*": 1
    minimumratio:
      text: 0.4
    minimumseedtime:
      # 7 days (as seconds = 7 x 24 x 60 x 60)
      text: 604800
# UNIT3D 5.3.0
