fix links
This commit is contained in:
@ -163,7 +163,7 @@ void
|
||||
MainAttachment::addLink (string &plain, string &html, const string &url, const string &name) const {
|
||||
string plainNewOneLink (templatePlainAddLink);
|
||||
replaceAll (plainNewOneLink, TMPL_DOWNLOAD, url);
|
||||
replaceAll (plainNewOneLink, TMPL_FILENAME, name);
|
||||
replaceAll (plainNewOneLink, TMPL_FILENAME, "\""+name+"\"");
|
||||
plain += plainNewOneLink;
|
||||
string htmlNewOneLink (templateHtmlAddLink);
|
||||
string codedUrl (url);
|
||||
@ -211,7 +211,7 @@ MainAttachment::getDisclaim (string &plain, string &html) const {
|
||||
plain = "\r\n"+KAZ_PLAIN_START+"\r\n"+KAZ_PLAIN_HR+"\r\n"+KAZ_PLAIN_DONT_TOUCH+"\r\n\r\n"+KAZ_PLAIN_WARNING+"\r\n\r\n"+KAZ_PLAIN_DOWLOAD_ONE+"\r\n"+plainNewLinks;
|
||||
html = templateHtmlHeader+htmlNewLinks;
|
||||
if (previousLinks.size ()) {
|
||||
plain += KAZ_PLAIN_DOWLOAD_OTHER+"\r\n"+plainOldLinks;
|
||||
plain += "\r\n"+KAZ_PLAIN_DOWLOAD_OTHER+"\r\n"+plainOldLinks;
|
||||
html += templateHtmlOtherLink+htmlOldLinks;
|
||||
}
|
||||
if (linkCount > 1 && archiveDownloadURL.length ()) {
|
||||
@ -239,7 +239,7 @@ MainAttachment::addPrevious (const string &href, const string &name, const bool
|
||||
if (oldVal.length () && name.length () && !trust)
|
||||
return;
|
||||
previousLinks.erase (href);
|
||||
previousLinks [href] = name;
|
||||
previousLinks [href] = regex_replace (name, regex (R"([\t\r\n\"]+|(\\\")|(>\s*))"), "");
|
||||
LOG ("inserted: " << href << ": " << previousLinks[href]);
|
||||
}
|
||||
|
||||
@ -255,7 +255,7 @@ MainAttachment::extractLinks (const string &extractedPlainKAZ) {
|
||||
const string href (extractedPlainKAZ.substr (startPos, stopPos-startPos));
|
||||
LOG ("plain href: " << href);
|
||||
|
||||
if (extractedPlainKAZ [stopPos] && extractedPlainKAZ [stopPos] != '\n')
|
||||
if (extractedPlainKAZ [stopPos])
|
||||
++stopPos;
|
||||
startPos = stopPos;
|
||||
// get all href but KAZ_WEB_SITE
|
||||
@ -266,11 +266,11 @@ MainAttachment::extractLinks (const string &extractedPlainKAZ) {
|
||||
string::size_type nextPos = extractedPlainKAZ.find ("http", startPos);
|
||||
string name (extractedPlainKAZ, startPos, (nextPos == string::npos ? extractedPlainKAZ.length () : nextPos) - startPos);
|
||||
// skip [> \r\n\t]
|
||||
nextPos = name.find_first_not_of ("[> \t\r\n]");
|
||||
nextPos = name.find_first_not_of ("[> \t\r\n\"]");
|
||||
if (nextPos != string::npos)
|
||||
name.erase (0, nextPos);
|
||||
// stop before [>\r\n\t]
|
||||
nextPos = name.find_first_of ("[>\t\r\n]");
|
||||
nextPos = name.find_first_of ("[\"]");
|
||||
if (nextPos != string::npos)
|
||||
name.erase (nextPos);
|
||||
LOG ("plain name: " << name);
|
||||
@ -354,7 +354,8 @@ void
|
||||
MainAttachment::removePreviousArchive () {
|
||||
vector<string> toRemove;
|
||||
for (map <string, string>::const_iterator it = previousLinks.begin (); it != previousLinks.end (); ++it)
|
||||
if (it->first.find ("&l=/") != string::npos)
|
||||
if (it->first.find ("&g=") != string::npos ||
|
||||
it->first.find ("&l=/") != string::npos) // v1 compatibility
|
||||
toRemove.push_back (it->first);
|
||||
for (string old : toRemove)
|
||||
previousLinks.erase (old);
|
||||
|
Reference in New Issue
Block a user