Example #1
0
                    }
                    /* @var $Video2Process Video */
                    $Video2Process = $VideoInDb ? $VideoInDb : new Video();
                    $Video2Process->setSet($Set2Process);
                    $Video2Process->setFileName((string) $Video->attributes()->name);
                    $Video2Process->setFileExtension((string) $Video->attributes()->extension);
                    $Video2Process->setFileSize((int) $Video->attributes()->filesize);
                    $Video2Process->setFileCheckSum((string) $Video->attributes()->checksum);
                    $Video2Process->setFileCRC32((string) $Video->attributes()->crc32);
                    if ($Video2Process->getID()) {
                        Video::Update($Video2Process, $CurrentUser);
                    } else {
                        Video::Insert($Video2Process, $CurrentUser);
                    }
                    $videotags = Tag::GetTagArray((string) $Video->attributes()->tags);
                    $Tag2AllThisVideo = Tag2All::Filter($Tag2AllThisSet, NULL, $Model2Process->getID(), $Set2Process->getID(), NULL, $Video2Process->getID());
                    Tag2All::HandleTags($videotags, $Tag2AllThisVideo, $TagsInDB, $CurrentUser, $Model2Process->getID(), $Set2Process->getID(), NULL, $Video2Process->getID(), FALSE);
                }
            }
        }
    }
    if ($fileToProcess != 'setup_data.xml') {
        unlink(realpath($fileToProcess));
    }
    $infoSuccess = new Info($lang->g('MessageXMLImported'));
    Info::AddInfo($infoSuccess);
    if (isset($argv) && $argc > 0) {
        $bi->Finish();
    }
}
HTMLstuff::RefererRedirect();
Example #2
0
function XmlOutputModel($Model, $TaggedOnly)
{
    global $xmlw, $Sets, $Dates, $Tag2Alls, $IncludeImages, $IncludeVideos;
    $xmlw->startElement('Model');
    $xmlw->writeAttribute('firstname', $Model->getFirstName());
    $xmlw->writeAttribute('lastname', $Model->getLastName());
    $xmlw->writeAttribute('birthdate', $Model->getBirthdate() > 0 ? date('Y-m-d', $Model->getBirthdate()) : NULL);
    $TagsThisModel = Tag2All::Filter($Tag2Alls, NULL, $Model->getID(), FALSE, FALSE, FALSE);
    $TagsThisModelOnly = Tag2All::Filter($TagsThisModel, NULL, $Model->getID(), NULL, NULL, NULL);
    $xmlw->writeAttribute('tags', Tag2All::Tags2AllCSV($TagsThisModelOnly));
    $SetsThisModel = Set::Filter($Sets, $Model->getID());
    if ($SetsThisModel) {
        $xmlw->startElement('Sets');
        $DatesThisModel = Date::FilterDates($Dates, NULL, $Model->getID());
        if ($Model->getFirstName() == 'VIP') {
            usort($SetsThisModel, array('Set', 'CompareASC'));
        }
        foreach ($SetsThisModel as $Set) {
            $PicDatesThisSet = Date::FilterDates($DatesThisModel, NULL, NULL, $Set->getID(), DATE_KIND_IMAGE);
            $VidDatesThisSet = Date::FilterDates($DatesThisModel, NULL, NULL, $Set->getID(), DATE_KIND_VIDEO);
            $TagsThisSet = Tag2All::Filter($TagsThisModel, NULL, $Model->getID(), $Set->getID(), NULL, NULL);
            $xmlw->startElement('Set');
            if ($Model->getFirstName() == 'VIP' && !is_numeric($Set->getName())) {
                $xmlw->writeAttribute('name', sprintf('SP_%1$s', $Set->getName()));
            } else {
                $xmlw->writeAttribute('name', $Set->getName());
            }
            $xmlw->writeAttribute('date_pic', Date::FormatDates($PicDatesThisSet, 'Y-m-d', FALSE, ' '));
            $xmlw->writeAttribute('date_vid', Date::FormatDates($VidDatesThisSet, 'Y-m-d', FALSE, ' '));
            $xmlw->writeAttribute('tags', Tag2All::Tags2AllCSV($TagsThisSet));
            if ($IncludeImages) {
                $ImagesThisSet = Image::GetImages(new ImageSearchParameters(FALSE, FALSE, $Set->getID(), FALSE, $Model->getID()));
                if ($ImagesThisSet) {
                    $xmlw->startElement('Images');
                    /* @var $Image Image */
                    foreach ($ImagesThisSet as $Image) {
                        $TagsThisImage = Tag2All::Filter($TagsThisModel, NULL, $Model->getID(), $Set->getID(), $Image->getID(), NULL);
                        if ($TaggedOnly === TRUE && $TagsThisImage || $TaggedOnly === FALSE) {
                            $xmlw->startElement('Image');
                            $xmlw->writeAttribute('name', $Image->getFileName());
                            $xmlw->writeAttribute('extension', $Image->getFileExtension());
                            $xmlw->writeAttribute('filesize', $Image->getFileSize());
                            $xmlw->writeAttribute('height', $Image->getImageHeight());
                            $xmlw->writeAttribute('width', $Image->getImageWidth());
                            $xmlw->writeAttribute('checksum', $Image->getFileCheckSum());
                            $xmlw->writeAttribute('crc32', $Image->getFileCRC32());
                            $xmlw->writeAttribute('tags', Tag2All::Tags2AllCSV($TagsThisImage));
                            $xmlw->endElement();
                        }
                    }
                    $xmlw->endElement();
                    $xmlw->flush();
                    ob_flush();
                    flush();
                    unset($ImagesThisSet);
                }
            }
            if ($IncludeVideos) {
                $VideosThisSet = Video::GetVideos(new VideoSearchParameters(FALSE, FALSE, $Set->getID(), FALSE, $Model->getID()));
                if ($VideosThisSet) {
                    $xmlw->startElement('Videos');
                    /* @var $Video Video */
                    foreach ($VideosThisSet as $Video) {
                        $TagsThisVideo = Tag2All::Filter($TagsThisModel, NULL, $Model->getID(), $Set->getID(), NULL, $Video->getID());
                        if ($TaggedOnly === TRUE && $TagsThisVideo || $TaggedOnly === FALSE) {
                            $xmlw->startElement('Video');
                            $xmlw->writeAttribute('name', $Video->getFileName());
                            $xmlw->writeAttribute('extension', $Video->getFileExtension());
                            $xmlw->writeAttribute('filesize', $Video->getFileSize());
                            $xmlw->writeAttribute('checksum', $Video->getFileCheckSum());
                            $xmlw->writeAttribute('crc32', $Video->getFileCRC32());
                            $xmlw->writeAttribute('tags', Tag2All::Tags2AllCSV($TagsThisVideo));
                            $xmlw->endElement();
                        }
                    }
                    $xmlw->endElement();
                    $xmlw->flush();
                    ob_flush();
                    flush();
                    unset($VideosThisSet);
                }
            }
            $xmlw->endElement();
        }
        $xmlw->endElement();
        $xmlw->flush();
        ob_flush();
        flush();
        if ($Model->getRemarks()) {
            $xmlw->startElement('Remarks');
            $xmlw->text($Model->getRemarks());
            $xmlw->endElement();
        }
    }
    $xmlw->endElement();
    $xmlw->flush();
    ob_flush();
    flush();
}
Example #3
0
            continue 2;
        }
    }
    if (!is_null($imageid)) {
        $ImageIDsToShow[] = $imageid;
    }
}
/* Video-filtering */
$AllVideoIDs = array();
foreach ($Tag2Alls as $t2a) {
    $AllVideoIDs[] = $t2a->getVideoID();
}
$VideoIDsToShow = array();
foreach (array_unique($AllVideoIDs) as $videoid) {
    foreach ($filteredTagIDs as $ftid) {
        if (count(Tag2All::Filter($Tag2Alls, $ftid, FALSE, FALSE, FALSE, $videoid)) == 0) {
            continue 2;
        }
    }
    if (!is_null($videoid)) {
        $VideoIDsToShow[] = $videoid;
    }
}
switch ($searchMode) {
    case 'MODEL':
        if (!$ModelIDsToShow) {
            break;
        }
        $ToShow = Model::GetModels(new ModelSearchParameters(FALSE, $ModelIDsToShow), NULL, sprintf("%1\$d, %2\$d", $from, $max_results));
        $Total = count(Model::GetModels(new ModelSearchParameters(FALSE, $ModelIDsToShow)));
        break;
Example #4
0
 function XmlOutputModel($Model)
 {
     global $xmlw, $Sets, $Dates, $Tag2Alls, $IncludeImages, $IncludeVideos;
     $xmlw->startElement('Model');
     $xmlw->writeAttribute('firstname', $Model->getFirstName());
     $xmlw->writeAttribute('lastname', $Model->getLastName());
     $xmlw->writeAttribute('birthdate', $Model->getBirthdate() > 0 ? date('Y-m-d', $Model->getBirthdate()) : NULL);
     $TagsThisModel = Tag2All::Filter($Tag2Alls, NULL, $Model->getID(), FALSE, FALSE, FALSE);
     $TagsThisModelOnly = Tag2All::Filter($TagsThisModel, NULL, $Model->getID(), NULL, NULL, NULL);
     $xmlw->writeAttribute('tags', Tag2All::Tags2AllCSV($TagsThisModelOnly));
     $SetsThisModel = Set::Filter($Sets, $Model->getID());
     if ($SetsThisModel) {
         $xmlw->startElement('Sets');
         $DatesThisModel = Date::FilterDates($Dates, NULL, $Model->getID());
         if ($Model->getFirstName() == 'VIP') {
             usort($SetsThisModel, array('Set', 'CompareASC'));
         }
         foreach ($SetsThisModel as $Set) {
             $PicDatesThisSet = Date::FilterDates($DatesThisModel, NULL, NULL, $Set->getID(), DATE_KIND_IMAGE);
             $VidDatesThisSet = Date::FilterDates($DatesThisModel, NULL, NULL, $Set->getID(), DATE_KIND_VIDEO);
             $TagsThisSet = Tag2All::Filter($TagsThisModel, NULL, $Model->getID(), $Set->getID(), NULL, NULL);
             $xmlw->startElement('Set');
             if ($Model->getFirstName() == 'VIP' && !is_numeric($Set->getName())) {
                 $xmlw->writeAttribute('name', sprintf('SP_%1$s', $Set->getName()));
             } else {
                 $xmlw->writeAttribute('name', $Set->getName());
             }
             $xmlw->writeAttribute('date_pic', Date::FormatDates($PicDatesThisSet, 'Y-m-d', FALSE, ' '));
             $xmlw->writeAttribute('date_vid', Date::FormatDates($VidDatesThisSet, 'Y-m-d', FALSE, ' '));
             $xmlw->writeAttribute('tags', Tag2All::Tags2AllCSV($TagsThisSet));
             $xmlw->endElement();
         }
         $xmlw->endElement();
         $xmlw->flush();
         ob_flush();
         flush();
         if ($Model->getRemarks()) {
             $xmlw->startElement('Remarks');
             $xmlw->text($Model->getRemarks());
             $xmlw->endElement();
         }
     }
     $xmlw->endElement();
     $xmlw->flush();
     ob_flush();
     flush();
 }