Commit 6bd2bd0e authored by Shizzz's avatar Shizzz
Browse files

Правки места чтения

Немного поправил запоминание места чтения. Теперь запоминается ID строки
после скролла, а при открытии книги выполняется ее поиск.
parent 6fa26162
Loading
Loading
Loading
Loading
+12 −7
Original line number Diff line number Diff line
@@ -114,7 +114,7 @@
		<div><xsl:apply-templates/></div>
	</xsl:template>

	<xsl:template match="fb:section">
	<xsl:template match="fb:section" name="section">
		<a name="TOC_{position()}"></a>
		<xsl:if test="@id">
			<xsl:element name="a">
@@ -172,11 +172,16 @@
	</xsl:template>
	<!-- p -->
    <xsl:template match="fb:p">
		<div id="{position()}" align="justify"><xsl:if test="@id">
	    <xsl:variable name="count">
	        <xsl:number/>
	    </xsl:variable>
        <div id="{1+count(ancestor::fb:section/preceding-sibling::fb:section)}.{$count}" align="justify">
			<xsl:if test="@id">
					<xsl:element name="a">
						<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
					</xsl:element>
			</xsl:if>	&#160;&#160;&#160;<xsl:apply-templates/></div>
			</xsl:if>	&#160;&#160;&#160;<xsl:apply-templates/>
		</div>
	</xsl:template>
	<!-- strong -->
	<xsl:template match="fb:strong">
+22 −12
Original line number Diff line number Diff line
@@ -27,15 +27,20 @@
	}
	
	var SetPos = function(){
		var CurrentPos = window.scrollY;
		var Reader = $('#ReaderBlock');
		xPos = window.scrollY;
		Reader.find('div').each(function(idx,el){
			var elem = $(el);
			if ((elem.offset().top+elem.height()) > xPos) {
				var CurrentPos = $(el).attr('id');
				$.ajax( {
					url: '{% url 'web:setpos' book_id %}?pos='+CurrentPos,
					type: 'GET',
			cache: false,
			success: function() {
				window.setTimeout(SetPos, 10000);
			}
					cache: false
				});	
				return false;
			};
		})	
	}
	
	var GetPos = function(){
@@ -43,13 +48,18 @@
			url: '{% url 'web:getpos' book_id %}',
			type: 'GET',
			cache: false,
			success: function(data) {
				window.scrollTo(0,data);
			success: function(lineID) {
				var Reader = $('#ReaderBlock');
				Reader.find('div').each(function(idx,el){
					if ($(el).attr('id') == lineID) {
						window.scrollTo(0,$(el).offset().top);
					};
				})
			}
		});		
	}

	var LoadBook = function(){
	LoadBook = function(){
		if (localStorage.getItem(BookID)){
			$("#ReaderBlock").html(LZString.decompress(localStorage.getItem(BookID)));
			GetPos();