[[PageOutline]] = Per-app credit = By default, BOINC maintains the credit granted to teams, users, and hosts, both total and average. You can optionally maintain credit for teams and users on a per-application basis. This information is stored in DB tables '''credit_user''' and '''credit_team'''. Note: doing this will increase DB size and server load. To maintain per-app credit, put {{{ }}} in your config.xml file. == Displaying per-app credit == Per-app credit is displayed and exported in terms of '''sub-projects'''. A sub-project is a named set of apps. Define your sup-projects in ''html/project/project.inc'' in the form {{{ $sub_projects = array( array("name" => "Remote Test", "short_name" => "RT", "appids" => array(16)), array("name" => "Uppercase", "short_name" => "UC", "appids" => array(1, 25)), ); }}} '''name''' is what's shown on web pages. '''short_name''' is optional, and is used to form badge names (see below). To display per-app credit on your web site (in the user and team pages) you must supply functions {{{ project_user_credit($user) project_team_credit($team) }}} in your '''html/project/project.inc'''. These functions must generate table rows describing the credit granted to each app for the given user or team. The example file '''boinc/html/project.sample/project.inc''' contains an example of how to do this. Remove the '''if(0)''' and change the sub-project specs to suit your project. == Exporting per-app credit == The [DbDump db_dump] program writes per-app credit in two files '''user_work.gz''' and '''team_work.gz''' in your html/stats directory. == Decaying per-app credit == Average credit is automatically decayed when credit is granted. However, if a user or team stops getting credit, this won't happen; you need to run a script '''decay_credit_by_app.php''' to decay the credit of inactive users and teams. Add something like this to your config.xml: {{{ decay_per_app_credit.out run_in_ops decay_credit_by_app.php 1 day }}} == Granting badges based on per-app credit == The script '''html/ops/badge_assign_custom.php''' grants badges based on subproject credit totals. See its comments for instructions.