/**
  * @Route("/admin/contract/view/{id}", name="tsk_contract_default_view", defaults={"_format" = "html" })
  * @Template()
  */
 public function viewAction(Contract $contract)
 {
     $em = $this->getDoctrine()->getEntityManager();
     $doc = $contract->getLatestContractDoc();
     $paymentTermsJSON = $doc->getPaymentTerms();
     // ld($paymentTermsJSON);
     $paymentTerms = json_decode($paymentTermsJSON['paymentsData']);
     // $paymentTerms = new \StdClass();
     // foreach ($paymentTermsJSON as $k => $v) {
     //     $paymentTerms->$k = $v;
     // }
     $s = new String();
     $installments = $s->stringifyPayments($paymentTerms->payments);
     // Get contract school and school state
     // $school = $doc->getSchool();
     $contractTemplate = $contract->getProgram()->getMembershipType()->getContractTemplate();
     if ($contractTemplate) {
         $template = $contractTemplate->getTemplate();
         $orgId = $this->get('session')->get('tsk_organization_id');
         $orgRepo = $em->getRepository('TSK\\UserBundle\\Entity\\Organization');
         $org = $orgRepo->find($orgId);
         $stringRenderer = $this->get('tsk.twig.string');
         $output = $stringRenderer->render($template, array('contractAmount' => $paymentTerms->principal, 'contractDiscount' => !empty($paymentTerms->discount) ? $paymentTerms->discount : '', 'contractPayments' => $paymentTerms->payments, 'contractNumPayments' => count($paymentTerms->payments), 'schoolLegalName' => $doc->getSchoolLegalName(), 'schoolAddress1' => $doc->getSchoolAddress1(), 'schoolAddress2' => $doc->getSchoolAddress2(), 'schoolCity' => $doc->getSchoolCity(), 'schoolState' => $doc->getSchoolState(), 'schoolPostalCode' => $doc->getSchoolPostalCode(), 'schoolPhone' => $doc->getSchoolPhone(), 'schoolLateGraceDays' => $doc->getSchoolLateGraceDays(), 'schoolLatePaymentCharge' => $doc->getSchoolLatePaymentCharge(), 'programLegalDescription' => $doc->getProgramLegalDescription(), 'org' => $org, 'orgName' => $org->getTitle(), 'abbrOrgName' => $org->getTitle(), 'blackBeltFee' => 495, 'student' => $doc->getStudents(), 'installments' => '$installments'));
         // $xml = $response->getContent();
         $response = new Response();
         $facade = $this->get('ps_pdf.facade');
         $content = $facade->render($output);
         return new Response($content, 200, array('content-type' => 'application/pdf'));
         exit;
     }
     $refundPolicy = $this->generateRefundPolicy($student->getContracts()->count(), $school->getContact()->getState()->getStateName(), $latestContract->getAmount());
     $cancelPolicy = $this->generateCancelPolicy($school->getContact()->getState()->getStateName());
     $format = $this->get('request')->get('_format');
     return $this->render('TSKContractBundle:Default:index.pdf.twig', array('contract' => $latestContract, 'school' => $school, 'orgName' => "Tiger Schulmann's Mixed Martial Arts Center", 'abbrOrgName' => 'TSMMA', 'blackBeltFee' => 495, 'student' => $student, 'refundPolicy' => $refundPolicy, 'cancelPolicy' => $cancelPolicy, 'installments' => $installments));
 }