import os

def create_jinja_template():
    with open('/home/fc-abhay/PF/project-management-app/project-management-app-backend/report.html', 'r') as f:
        lines = f.readlines()
    
    # Extract CSS (lines 1 to 627 approx)
    css_lines = []
    for line in lines:
        css_lines.append(line)
        if '</head>' in line:
            break
            
    css_content = "".join(css_lines)
    
    body_content = """
<body>

<!-- PAGE 1 — COVER -->
<div class="page cover">
  <div class="cover-stripe"></div>
  <div class="cover-body">
    <div>
      <div class="cover-tag">Project Intelligence Report</div>
      <div class="cover-title">{{ project.name }}</div>
      <div class="cover-desc">{{ project.description }}</div>
    </div>
    <div>
      <div class="cover-meta-grid">
        <div class="cover-meta-item">
          <label>Project Key</label>
          <p>{{ project.key }}</p>
        </div>
        <div class="cover-meta-item">
          <label>Owner</label>
          <p>{{ project.owner }}</p>
        </div>
        <div class="cover-meta-item">
          <label>Period</label>
          <p>{{ project.period }}</p>
        </div>
        <div class="cover-meta-item">
          <label>Generated</label>
          <p>{{ project.generated_date }}</p>
        </div>
      </div>
    </div>
  </div>
  <div class="cover-footer">
    <span>CONFIDENTIAL — INTERNAL USE ONLY</span>
    <span class="cover-project-key">{{ project.key }} · {{ summary.total_tickets }} TICKETS · {{ project.total_members }} MEMBERS</span>
  </div>
</div>

<!-- PAGE 3 — PROJECT SUMMARY -->
<div class="page inner-page">
  <div class="page-header">
    <span class="page-header-left">01 · Project Summary</span>
    <span class="page-header-right">{{ project.key }}</span>
  </div>

  <div class="kpi-grid">
    <div class="kpi-card accent">
      <div class="kpi-label">Total Tickets</div>
      <div class="kpi-value">{{ summary.total_tickets }}</div>
      <div class="kpi-hint">across all statuses</div>
    </div>
    <div class="kpi-card green">
      <div class="kpi-label">Completed</div>
      <div class="kpi-value">{{ summary.completed_tickets }}</div>
      <div class="kpi-hint">{{ summary.completion_rate }}% completion rate</div>
    </div>
    <div class="kpi-card red">
      <div class="kpi-label">Critical Open</div>
      <div class="kpi-value">{{ summary.critical_open_count }}</div>
      <div class="kpi-hint">{{ summary.critical_open_keys | join(', ') }}</div>
    </div>
    <div class="kpi-card amber">
      <div class="kpi-label">Story Points</div>
      <div class="kpi-value">{{ summary.story_points_burned }}<span style="font-size:13px;font-weight:400;color:#8A96A4">/{{ summary.story_points_total }}</span></div>
      <div class="kpi-hint">burned down</div>
    </div>
  </div>

  <div class="two-col">
    <div class="card">
      <div class="card-title">Status Breakdown</div>
      {% for status in status_breakdown %}
      <div class="progress-row">
        <div class="progress-label"><span>{{ status.status }}</span><span>{{ status.count }} tickets</span></div>
        <div class="progress-track"><div class="progress-fill" style="width:{{ (status.count / summary.total_tickets * 100) if summary.total_tickets > 0 else 0 }}%;background:var(--accent)"></div></div>
      </div>
      {% endfor %}
    </div>

    <div class="card">
      <div class="card-title">Ticket Type Split</div>
      {% for type_sp in type_split %}
      <div class="progress-row">
        <div class="progress-label"><span>{{ type_sp.type }}</span><span>{{ type_sp.count }}</span></div>
        <div class="progress-track"><div class="progress-fill" style="width:{{ (type_sp.count / summary.total_tickets * 100) if summary.total_tickets > 0 else 0 }}%;background:var(--sky)"></div></div>
      </div>
      {% endfor %}
    </div>
  </div>
</div>

<!-- PAGE 4 — TICKETS BY STATUS -->
<div class="page inner-page">
  <div class="page-header">
    <span class="page-header-left">02 · Tickets Details</span>
    <span class="page-header-right">{{ project.key }}</span>
  </div>

  <table class="data-table">
    <thead>
      <tr>
        <th style="width:18mm">Ticket</th>
        <th>Title</th>
        <th style="width:16mm">Type</th>
        <th style="width:22mm">Status</th>
        <th style="width:16mm">Priority</th>
        <th style="width:24mm">Assignee(s)</th>
        <th style="width:8mm;text-align:center">SP</th>
      </tr>
    </thead>
    <tbody>
      {% for t in tickets %}
      <tr>
        <td class="mono">{{ t.id }}</td>
        <td>{{ t.title }}</td>
        <td><span class="badge badge-task">{{ t.type }}</span></td>
        <td><span class="badge badge-done">{{ t.status }}</span></td>
        <td><span class="badge badge-high">{{ t.priority }}</span></td>
        <td style="font-size:8.5px">{{ t.assignees | join(', ') }}</td>
        <td style="text-align:center;font-family:var(--mono);font-size:8px">{{ t.story_points or '-' }}</td>
      </tr>
      {% endfor %}
    </tbody>
  </table>
</div>

<!-- PAGE 5 — RELEASES -->
<div class="page inner-page">
  <div class="page-header">
    <span class="page-header-left">03 · Releases</span>
    <span class="page-header-right">{{ project.key }}</span>
  </div>

  <div class="section-eyebrow">Release History</div>
  <div class="section-title" style="margin-bottom:5mm">Releases &amp; Linked Tickets</div>

  {% for r in releases %}
  <div class="release-card">
    <div class="release-header">
      <div>
        <div class="release-name">{{ r.name }}</div>
      </div>
      <div style="text-align:right">
        <div class="release-date">Date: {{ r.date }}</div>
      </div>
    </div>
    <div class="release-body">
      <div class="release-tickets">
        {% for rt in r.tickets %}
        <span class="release-ticket-chip">{{ rt }}</span>
        {% endfor %}
      </div>
    </div>
  </div>
  {% endfor %}
</div>

<!-- PAGE 6 — ASSIGNEES -->
<div class="page inner-page">
  <div class="page-header">
    <span class="page-header-left">04 · Assignees &amp; Workload</span>
    <span class="page-header-right">{{ project.key }}</span>
  </div>

  <div class="assignee-grid">
    {% for a in assignees %}
    <div class="assignee-card">
      <div class="assignee-avatar" style="background:var(--accent)">{{ a.avatar_initials }}</div>
      <div class="assignee-name">{{ a.name }}</div>
      <div class="assignee-role">{{ a.role }}</div>
      <div class="assignee-stats">
        <span class="astat"><b>{{ a.assigned_tickets }}</b> tickets</span>
        <span class="astat"><b>{{ a.story_points }}</b> SP</span>
        <span class="astat"><b>{{ a.completed_tickets }}</b> done</span>
      </div>
    </div>
    {% endfor %}
  </div>
</div>

<!-- TICKETS ACTIVITY -->
{% for t in tickets %}
<div class="page inner-page" style="page-break-inside: avoid;">
  <div class="ticket-card">
    <div class="ticket-card-header">
      <div class="ticket-card-id">{{ t.id }}</div>
      <div class="ticket-card-main">
        <div class="ticket-card-title">{{ t.title }}</div>
        <div class="ticket-card-badges">
          <span class="badge badge-feature">{{ t.type }}</span>
          <span class="badge badge-done">{{ t.status }}</span>
          <span class="badge badge-critical">{{ t.priority }}</span>
        </div>
      </div>
    </div>
    <div class="ticket-card-meta">
      <div class="ticket-meta-item"><label>Reporter</label><p>{{ t.reporter }}</p></div>
      <div class="ticket-meta-item"><label>Assignees</label><p>{{ t.assignees | join(', ') }}</p></div>
      <div class="ticket-meta-item"><label>Story Points</label><p>{{ t.story_points }}</p></div>
    </div>
    <div class="ticket-desc">
      {{ t.description }}
    </div>
    <div class="activity-feed">
      <div class="activity-feed-title">Activity &amp; Comments</div>
      
      {% for c in t.comments %}
      <div class="activity-item" style="margin-top:2.5mm">
        <div class="activity-dot comment"></div>
        <div class="activity-text"><strong>{{ c.author }}</strong> commented:</div>
        <div class="activity-time">{{ c.time }}</div>
      </div>
      <div class="comment-block">
        <div class="comment-text">{{ c.text }}</div>
      </div>
      {% endfor %}

      {% for a in t.activity_logs %}
      <div class="activity-item">
        <div class="activity-dot status"></div>
        <div class="activity-text"><strong>{{ a.actor }}</strong> {{ a.action }}</div>
        <div class="activity-time">{{ a.time }}</div>
      </div>
      {% endfor %}
    </div>
  </div>
</div>
{% endfor %}

</body>
</html>
"""

    with open('/home/fc-abhay/PF/project-management-app/project-management-app-backend/report.html', 'w') as f:
        f.write(css_content + body_content)

if __name__ == "__main__":
    create_jinja_template()
