Block ID and PCP ID are bugging result on getPcpDashboardInfo function
authorFrederic Guzman <frederickgzmn@gmail.com>
Tue, 6 Sep 2016 20:02:39 +0000 (16:02 -0400)
committerGitHub <noreply@github.com>
Tue, 6 Sep 2016 20:02:39 +0000 (16:02 -0400)
Now you can peek, this query is looking for PCP in database, and showing all tables of civicrm_pcp and civicrm_pcp_block, this include their "ID", it can be fail because depend the configuration of database server the result, i mean, the server will select between pcp_block's(table) ID or pcp's(table) ID(In my case, my database server, selected the block ID instead of PCP ID), it's bad because pcp(table) and pcp_block(table) they has the same ID field name, but, it's good structure schema in database, the problem is the query, and can be solve.

CRM/PCP/BAO/PCP.php

index 1c1ce614cfd7d0afa1860175e295c5975cd18cd7..c4e9eacf604fa7e1c4d9a52adfa21283ad729e9e 100644 (file)
@@ -117,7 +117,7 @@ WHERE  civicrm_pcp.contact_id = civicrm_contact.id
     $links = self::pcpLinks();
 
     $query = "
-SELECT * FROM civicrm_pcp pcp
+SELECT pcp.*, block.is_tellfriend_enabled FROM civicrm_pcp pcp
 LEFT JOIN civicrm_pcp_block block ON block.id = pcp.pcp_block_id
 WHERE pcp.is_active = 1
   AND pcp.contact_id = %1