private function deriveIdAction($actionName, $actionType)
    {
        switch ($actionType) {
            case 'url':
                $originalActionName = $actionName;
                $actionName = Common::unsanitizeInputValue($actionName);
                $id = TableLogAction::getIdActionFromSegment($actionName, 'idaction_url', SegmentExpression::MATCH_EQUAL, 'pageUrl');

                if ($id < 0) {
                    // an example where this is needed is urls containing < or >
                    $actionName = $originalActionName;
                    $id = TableLogAction::getIdActionFromSegment($actionName, 'idaction_url', SegmentExpression::MATCH_EQUAL, 'pageUrl');
                }

                return $id;

            case 'title':
                $id = TableLogAction::getIdActionFromSegment($actionName, 'idaction_name', SegmentExpression::MATCH_EQUAL, 'pageTitle');

                if ($id < 0) {
                    $unknown = ArchivingHelper::getUnknownActionName(Action::TYPE_PAGE_TITLE);
                    if (trim($actionName) == trim($unknown)) {
                        $id = TableLogAction::getIdActionFromSegment('', 'idaction_name', SegmentExpression::MATCH_EQUAL, 'pageTitle');
                    }
                }

                return $id;

            default:
                throw new Exception('Unknown action type');
        }
    }
private function deriveIdAction($actionName, $actionType)
    {
        switch ($actionType) {
            case 'url':
                $originalActionName = $actionName;
                $actionName = Common::unsanitizeInputValue($actionName);
                $id = TableLogAction::getIdActionFromSegment($actionName, 'idaction_url', SegmentExpression::MATCH_EQUAL, 'pageUrl');

                if ($id < 0) {
                    // an example where this is needed is urls containing < or >
                    $actionName = $originalActionName;
                    $id = TableLogAction::getIdActionFromSegment($actionName, 'idaction_url', SegmentExpression::MATCH_EQUAL, 'pageUrl');
                }

                return $id;

            case 'title':
                $id = TableLogAction::getIdActionFromSegment($actionName, 'idaction_name', SegmentExpression::MATCH_EQUAL, 'pageTitle');

                if ($id < 0) {
                    $unknown = ArchivingHelper::getUnknownActionName(Action::TYPE_PAGE_TITLE);
                    if (trim($actionName) == trim($unknown)) {
                        $id = TableLogAction::getIdActionFromSegment('', 'idaction_name', SegmentExpression::MATCH_EQUAL, 'pageTitle');
                    }
                }

                return $id;

            default:
                throw new Exception('Unknown action type');
        }
    }
private function deriveIdAction ( $ actionName , $ actionType ) { switch ( $ actionType ) { case 'url' : $ originalActionName = $ actionName ; $ actionName = Common :: unsanitizeInputValue ( $ actionName ) ; $ id = TableLogAction :: getIdActionFromSegment ( $ actionName , 'idaction_url' , SegmentExpression :: MATCH_EQUAL , 'pageUrl' ) ; if ( $ id < 0 ) { // an example where this is needed is urls containing < or > $ actionName = $ originalActionName ; $ id = TableLogAction :: getIdActionFromSegment ( $ actionName , 'idaction_url' , SegmentExpression :: MATCH_EQUAL , 'pageUrl' ) ; } return $ id ; case 'title' : $ id = TableLogAction :: getIdActionFromSegment ( $ actionName , 'idaction_name' , SegmentExpression :: MATCH_EQUAL , 'pageTitle' ) ; if ( $ id < 0 ) { $ unknown = ArchivingHelper :: getUnknownActionName ( Action :: TYPE_PAGE_TITLE ) ; if ( trim ( $ actionName ) == trim ( $ unknown ) ) { $ id = TableLogAction :: getIdActionFromSegment ( '' , 'idaction_name' , SegmentExpression :: MATCH_EQUAL , 'pageTitle' ) ; } } return $ id ; default : throw new Exception ( 'Unknown action type' ) ; } }
Derive the action ID from the request action name and type.
Derive the action ID from the request action name and type .