Пример #1
0
 /**
  * Driver function
  */
 public static function execute(&$parser, $project = '', $class = '', $importance = '')
 {
     $newRecord = false;
     // Title class object for the Main page of this Talk page
     $pageObj = $parser->getTitle()->getSubjectPage();
     $pageTitle = $pageObj->getText();
     $exists = PageAssessmentsBody::checkIfExists($pageTitle, $project, $class, $importance);
     switch ($exists) {
         case 'nochange':
             return;
         case 'change':
             break;
         default:
             $newRecord = true;
             break;
     }
     $pageNamespace = $pageObj->getNamespace();
     $pageId = $pageObj->getArticleID();
     $revisionId = $pageObj->getLatestRevID();
     // Compile the array to be inserted to the DB
     $values = array('pa_page_id' => $pageId, 'pa_page_name' => $pageTitle, 'pa_page_namespace' => $pageNamespace, 'pa_project' => $project, 'pa_class' => $class, 'pa_importance' => $importance, 'pa_page_revision' => $revisionId);
     if ($newRecord) {
         PageAssessmentsBody::insertRecord($values);
     } else {
         PageAssessmentsBody::updateRecord($values);
     }
     $values['pa_user_id'] = $parser->getRevisionUser();
     PageAssessmentsBody::insertLogRecord($values);
     return;
 }
 /**
  * Test the updateRecord() function in PageAssessmentsBody class
  */
 public function testUpdate()
 {
     $this->testInsert();
     $pageBody = new PageAssessmentsBody();
     $values = array('pa_page_id' => '10', 'pa_project_id' => '3', 'pa_class' => 'B', 'pa_importance' => 'Low', 'pa_page_revision' => '21');
     $pageBody->updateRecord($values);
     $this->assertSelect('page_assessments', array('pa_page_id', 'pa_class', 'pa_importance'), array(), array(array('10', 'B', 'Low')));
 }