/** * @brief Helper function to create an HTML file from a Socialite object. * @return creates "FirstNameLastName.html" */ void createHtmlFile(Socialite const &s) { string socialiteName= s.getFirstName().append(s.getLastName()); string fileName = socialiteName.append(".html"); ofstream outputHtmlFile(fileName); s.outputHtml(outputHtmlFile); }
virtual void output(Entity* entity, QIODevice& iodevice) const{ QStringList tokens= getCommentInternalText(BOOK_TAG).split(",",QString::SkipEmptyParts); QString title = tokens.takeFirst(); QString location=tokens.takeFirst(); QStringList pages = tokens; QString declPagesArray="var pages = ["; QString lastPage = pages.takeLast(); for(const QString& pageNumber: pages){ declPagesArray.append('"').append(pageNumber).append("\",\n"); } declPagesArray.append('"').append(lastPage).append("\"];\n"); qDebug() << declPagesArray << location; QFileInfo bookDir(outputSite,location); if (!bookDir.exists()){ return; } QFile outputJsFile(QFileInfo(QDir(bookDir.absolutePath()),"numero.js").absoluteFilePath()); if (!outputJsFile.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate)){ return ; } outputJsFile.write(declPagesArray.toUtf8()); outputJsFile.write(readTemplate("://templates/numero.js").toUtf8()); QFile outputHtmlFile(QFileInfo(QDir(bookDir.absolutePath()),"numero.html").absoluteFilePath()); if (!outputHtmlFile.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate)){ return ; } outputHtmlFile.write(readTemplate("://templates/numero.html").toUtf8()); QString anchor=QString("<a href=\"").append(location).append("numero.html#page/1/mode/2up\">").append(title).append("</a>"); iodevice.write(anchor.toUtf8()); }